自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(108)
  • 收藏
  • 关注

原创 单片机C语言如何产生随机数

单片机C语言如何产生随机数随机数在单片机的应用中也是很多的,当然产生随机数的方法有很多,当中有一个就是利用单片机定时器,取出未知的定时器THX和TLX的值,再加以运算得到一个规定范围内的随机数值。这做法也是可行的。或者预先写好一个随机数表,然后进行取数据。也是可以的。KEIL里面产生随机数的函数确实是rand(),但头文件是stdlib.h,不是time.h。C语言提供了一些库函数来实现随机数的产生。C语言中有三个通用的随机数发生器,分别为 rand函数、random函数、randomize 函数,但

2020-08-10 16:56:41 2868

原创 补光灯的单片机开发设计

说到摄影灯,相信每个人都一定听说过闪光灯和补光灯。那它们是怎么由来的呢?又是怎么达到了你想要的效果呢?不论是闪光灯还是补光灯,它们都有一个共同点,那就是由NY8A051D单片机开发而来,单片机微控制器的程序指令控制闪光灯的爆闪和补光灯的恒定灯光。一般在摄影中,使用补光灯还是闪光灯更好?下面,我们将详细介绍两种摄影补光灯的种类,优缺点,以便您对两种摄影补光灯的了解,并可以在其中选择更合适的摄影补光灯。补光灯和闪光灯之间的区别补光灯:它是一个恒定的灯光,使用高亮度LED作为主要光源,的特点是所见即所得的

2020-08-10 16:30:38 962

原创 嵌入式系统C编程之错误处理

一 错误概念1.1 错误分类从严重性而言,程序错误可分为致命性和非致命性两类。对于致命性错误,无法执行恢复动作,最多只能在用户屏幕上打印出错消息或将其写入日志文件,然后终止程序;而对于非致命性错误,多数本质上是暂时的(如资源短缺),一般恢复动作是延迟一些时间后再次尝试。从交互性而言,程序错误可分为用户错误和内部错误两类。用户错误呈现给用户,通常指明用户操作上的错误;而程序内部错误呈现给程序员(可能携带用户不可接触的数据细节),用于查错和排障。应用程序开发者可决定恢复哪些错误以及如何恢复。例如,若磁盘

2020-08-07 14:15:15 425

原创 linux lsof命令详解

输出信息含义在终端下输入lsof即可显示系统打开的文件,因为 lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身份运行它才能够充分地发挥其功能。每行显示一个打开的文件,若不指定条件默认将显示所有进程打开的所有文件。lsof输出各列信息的意义如下:COMMAND:进程的名称 PID:进程标识符USER:进程所有者FD:文件描述符,应用程序通过文件描述符识别该文件。如cwd、txt等 TYPE:文件类型,如DIR、REG等DEVICE:指定磁盘的名称SIZE:文件的大小NOD

2020-08-06 15:12:58 875

原创 Stm32时钟分析

该分析材料大部分来自opendev论坛,我所做的只不过是加上一些自己的分析和整理,由于个人能力有限,纰漏之处在所难免,欢迎指正。一、硬件上的连接问题[转载]STM32时钟理解如果使用内部RC振荡器而不使用外部晶振,请按照如下方法处理:1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。2)对于少于100脚的产品,有2种接法:i)OSC_IN和OSC_OUT分别通过10K电阻接地。此方法可提高EMC性能。ii)分别重映射OSC_IN和OSC_OUT至PD0和PD1,再配

2020-08-06 13:48:01 244

原创 Linux循环链表及线性表的应用

1.1问题说明问题描述:编号为1,2,···,n的n个人围坐在一圆桌旁,每人持有一个正整数的密码。从第一个人开始报数,报到一个预先约定的正整数m时,停止报数,报m的人退席,下一个人又重新从1开始报数,依此重复,直至所有的人都退席。编一程序输出他们退席的编号序列。例如,设m=20,n=7,7个人的密码依次是3,1,7,2,4,8,4,则退席的人的编号依次为6,1,7,5,3,2,4。基本要求:用不带表头结点的循环单链表表示围成圆圈的n个人;要求建立此循环单链表;某人离席相当于删除一个结点,要正确设置程序中

2020-08-05 15:28:44 123

原创 Java面向对象设计六大原则

一、单一职责原则  单一职责原则的定义是就一个类而言,应该仅有一个引起他变化的原因。也就是说一个类应该只负责一件事情。如果一个类负责了方法M1,方法M2两个不同的事情,当M1方法发生变化的时候,我们需要修改这个类的M1方法,但是这个时候就有可能导致M2方法不能工作。这个不是我们期待的,但是由于这种设计却很有可能发生。所以这个时候,我们需要把M1方法,M2方法单独分离成两个类。让每个类只专心处理自己的方法。  二、开闭原则  开闭原则和单一职责原则一样,是非常基础而且一般是常识的原则。开闭原则的定义是软

2020-08-05 13:46:41 158

原创 c语言和汇编语言解析

什么是c语言:C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言;尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。什么是汇编语言:汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称

2020-08-04 11:30:40 653

原创 从四个方向分析我们可以从linux学到什么

我们真正关心的是自身可以从这个生态圈中获得些什么?说得更直白一点就是,我们可以从linux系统上面学到点什么,它对我们个人的成长和发展有哪些积极的因素。个人觉得,完全可以通过下面四个维度并结合自己的兴趣进行选择和判断。(1)熟练学习linux、配置linux和使用Linux2011年有一本书特别火,长期位列在热销排行榜上,这本书就是《鸟哥的linux私房菜》。这本书以centos为例,讲了很多的内容,比如说系统安装、常见配置、软件更新、特殊命令的用法、服务器的配置等等。整本书的内容很厚,而且内容是一版再

2020-08-04 09:14:48 138

原创 stm32——RTC实时时钟

一、关于时间2038年问题在计算机应用上,2038年问题可能会导致某些软件在2038年无法正常工作。所有使用UNIX时间表示时间的程序都将将受其影响,因为它们以自1970年1月1日经过的秒数(忽略闰秒)来表示时间。这种时间表示法在类Unix(Unix-like)操作系统上是一个标准,并会影响以其C编程语言开发给其他大部份操作系统使用的软件。在大部份的32位操作系统上,此“time_t”数据模式使用一个有正负号的32位元整数(signedint32)存储计算的秒数。也就是说最大可以计数的秒数为 2^31

2020-08-03 16:41:33 453

原创 Linux进程关系

进程组 (process group)每个进程都会属于一个进程组(process group),每个进程组中可以包含多个进程。进程组会有一个进程组领导进程 (process group leader),领导进程的PID (PID见Linux进程基础)成为进程组的ID (process group ID, PGID),以识别进程组。会话 (session)更进一步,在shell支持工作控制(job control)的前提下,多个进程组还可以构成一个会话 (session)。bash(Bourne-Aga

2020-08-03 15:08:47 119

原创 C语言编译器及其工作流程

编译器,是将便于人编写,阅读,维护的高级计算机语言翻译为计算机能识别,运行的低级机器语言的程序。编译器将源程序(Source program)作为输入,翻译产生使用目标语言(Target language)的等价程序。源程序一般为高级语言(High-level language),如Pascal,C++等,而目标语言则是汇编语言或目标机器的目标代码(Object code),有时也称作机器代码(Machine code)。一个现代编译器的主要工作流程如下:源程序(source code)→预处理器(pr

2020-08-03 13:42:21 913

原创 深入Java内存区域

一、Java虚拟机栈  与程序计数器一样,Java虚拟机栈(Java Virtual Machine Stacks)也是线程私有的,它的生命周期与线程相同。虚拟机栈描述的是Java  方法执行的内存模型:每个方法被执行的时候都会同时创建一个栈帧(Stack Frame)用于存储局部变量表、操作栈、动态链接、方法出口  等信息。每一个方法被调用直至执行完成的过程,就对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。  经常有人把Java内存区分为堆内存(Heap)和栈内存(Stack),这种分法比较粗糙

2020-07-31 15:56:51 80

原创 Java 反射机制浅析

Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。这一概念的提出很快引发了计算机科学领域关于应用反射性的研究。它首先被程序语言的设计领域所采用,并在Lisp和面向对象方面取得了成绩。当然反射本身并不是一个新概念,它可能会使我们联想到光学中的反射概

2020-07-31 15:25:27 74

原创 零基础如何更好的学习Linux

本节旨在介绍对于初学者如何学习 Linux 的建议。如果你已经确定对 Linux 产生了兴趣,那么接下来我们介绍一下学习 Linux 的方法。如何去学习学习大多类似庖丁解牛,对事物的认识一般都是由浅入深、由表及里的过程,循序才能渐进。学习 Linux 同样要有一定的顺序和方法,当然这也是你学习本教程的意义。如果你是初学者,那么建议按照本教程的顺序阅读,不要跳跃,欲速则不达,揠苗也不见得能助长。另外,强烈建议做好读书笔记,边看边记,边练习边思考,“学而不思则罔,思而不学则殆”,比勤奋更重要的是思考的能力

2020-07-31 15:06:25 107

原创 STM32中按键中断分析

在按键学习中,我们有用到查询的方法来判断按键事件是否发生,这种查询按键事件适用于程序工作量较少的情况下,一旦程序中工作量较大较多,则势必影响程序运行的效率,为了简化程序中控制的功能模块的执行时间,引入中断控制就很有必要,,一旦有中断时间发生,则程序立马跳转到中断向量的执行程序中,执行完成后就恢复到正常的程序状态。在STM32F中采用中断控制器NVIC来设定中断。按照中断初始化配置的结构体文件,我们需要在NVIC初始化结构体配置如下:void EXti_PB12_Config(void){//定义结构

2020-07-31 14:19:10 548

原创 stm32之独立看门狗与窗口看门狗总结

一、独立看门狗STM32 的独立看门狗由内部专门的 40Khz 低速时钟驱动,即使主时钟发生故障,它也仍然有效。看门狗的原理:单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生。看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU 已经挂了),便实现处理器的自动复位重启(发送复位信号) 。在键值寄存器(IWDG_KR)中写入 0xCCCC,开始启用独立看门狗;此时计数器开始从其复位值 0xFFF 递减计数。当计数器计数到末尾 0

2020-07-30 15:13:16 508

原创 零基础玩转C语言单链表

下图为最一简单链表的示意图:第 0 个结点称为头结点,它存放有第一个结点的首地址,它没有数据,只是一个指针变量。以下的每个结点都分为两个域,一个是数据域,存放各种实际的数据,如学号 num,姓名 name,性别 sex 和成绩 score 等。另一个域为指针域,存放下一结点的首地址。链表中的每一个结点都是同一种结构类型。  指针域: 即在结点结构中定义一个成员项用来存放下一结点的首地址,这个用于存放地址的成员,常把它称为指针域。  在第一个结点的指针域内存入第二个结点的首地址,在第二个结点的指针域

2020-07-30 14:46:45 162

原创 c语言算术运算符

算术运算符算术运算符非常地简单,就是小学数学里面的一些加减乘除操作。不过呢,还是有一些语法细节需要注意的。1.加法运算符 +1 int a = 10;23 int b = a + 5;在第3行利用加法运算符 + 进行了加法运算,再将和赋值给了变量b,最终变量b的值是152.减法运算符 或 负值运算符 -1 int b = 10 - 5;23 int a = -10;1> 在第1行利用减法运算符 - 进行了减法运算,再将差赋值给了变量b,最终变量b的值是52> 在第3行中,

2020-07-29 14:16:56 1376

原创 c语言inline函数的使用

大学在教科书上学习过inline函数,定义为inline函数之后,会省去函数调用的开销,直接嵌套汇编代码,取代函数调用,提高效率。工作后项目中也 很少用到inline来定义函数,近几天在研读google的google c++ style guide,发现之前自己对inline函数的认识太过肤浅了,这里学习总结一下。  1、inline函数不要超过10行代码,且不能包含循环、switch、if语句  2、在一个c文件中定义的inline函数是不能在其它c文件中直接使用,google推荐把inline函

2020-07-29 13:55:32 2081

原创 在Linux中使用线程

1. 第一个例子  在Linux下创建的线程的API接口是pthread_create(),它的完整定义是:  int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(start_routine)(void) void *arg);  当你的程序调用了这个接口之后,就会产生一个线程,而这个线程的入口函数就是start_routine()。如果线程创建成功,这个接口会返回0。  start_routine()函

2020-07-28 15:39:16 127

原创 stm32时钟系统中断处理

设置相应的时钟首先需要打开GPIOB、GPIOC和GPIOE(因为按键另外一端连接的是PE口)。然后由于是要用于触发中断,所以还需要打开GPIO复用的时钟。相应的函数在GPIO的学习笔记中有了详细了解释。详细代码如下:void RCC_cfg(){//打开PE PD PC PB端口时钟,并且打开复用时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE| RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD | RCC_AP.

2020-07-28 14:55:33 1156

原创 stm32时钟系统中断处理

中断对于开发嵌入式系统来讲的地位绝对是毋庸置疑的,在C51单片机时代,一共只有5个中断,其中2个外部中断,2个定时/计数器中断和一个串口中断,但是在STM32中,中断数量大大增加,而且中断的设置也更加复杂。今天就将来探讨一下关于STM32中的中断系统。1 基本概念ARM Coetex-M3内核共支持256个中断,其中16个内部中断,240个外部中断和可编程的256级中断优先级的设置。STM32目前支持的中断共84个(16个内部+68个外部),还有16级可编程的中断优先级的设置,仅使用中断优先级设置8bi

2020-07-28 14:47:19 928

原创 对单片机堆栈的理解

看关于单片机方面的书籍的时候,总是能看到别人说的一些堆栈啊什么的操作,之前看到这个术语就直接跳过,没想到去探究单片机内部的原理。但是最近课程学习微机原理这门课,需要我们写汇编程序,汇编里面经常遇到堆栈这个东西,所以就找了个时间把堆栈给彻底的搞一下。如果了解一点汇编编程话,就可以知道,堆栈是内存中一段连续的存储区域,用来保存一些临时数据。通常用来保存CALL指令调用子程序时的返回地址,RET指令从堆栈中获取返回地址。中断指令INT调用中断程序时,将标志寄存器值、代码段寄存器CS值、指令指针寄存器IP值保存在

2020-07-27 15:11:47 985

原创 linux命令后台运行

一、 简介Linux基础Linux/Unix 区别于微软平台最大的优点就是真正的多用户,多任务。因此在任务管理上也有别具特色的管理思想。我们知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而 Linux 提供了 fg 和bg 命令,让你轻松调度正在运行的任务。假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,挂起这个程序,然后可以看到系统提示:[1]+ Stopped /root/

2020-07-27 14:48:06 102

原创 Linux cut 命令详解

cut 命令在Linux和Unix中的作用是从文件中的每一行中截取出一些部分,并输出到标准输出中。我们可以使用 cut 命令从一行字符串中于以字节,字符,字段(分隔符)等单位截取一部分内容出来。在本文中,我们通过一些例子来了解 cut 命令的使用,这些使用方法在我们的日常工作中也是非常常用的。Cut 命令和语法cut 命令的基本语法如下:快速上手Linux$ cut OPTION… [FILE]…我们先来了解一下 cut 的一些选项,cut 命令必须要指定选项才能执行。-f : 提取指定的字段,cu

2020-07-27 14:20:28 158

原创 如何学好UI设计

一、最近很多小白同学来咨询零基础如何规划学习UI设计,UI设计是个专业,要学习的内容还是比较多的,所以根据小编这么多年的工作经验,给小白同学一些自己的学习建议。二、学习UI设计不要盲目地死学,这样是没有效率的,要有计划的针对性学习一般学习UI设计可以分为以下4个阶段。第一阶段,美术预科篇1、很多小白同学经常会问,我不会画画可以学习UI设计吗?没有美术基础可以学习UI设计吗?这个问很好回答,学习UI设计不需要成为画家,不需要画出很精美的画作,这些是搞艺术人干的活。2、我只需要了解物体的透视关系,光影关

2020-07-24 09:46:38 117

原创 基于嵌入式Linux进行Python应用开发

1). 简介Python 编程语言因其极强的可读性、可移植、易于维护,以及丰富的第三方扩展组件,如数据库、数学计算、图形,甚至机器视觉、人工智能、深度学习框架都提供Python支持。随着嵌入式处理的计算性能逐渐增强,原来主要用于 PC、服务器端的开发语言,目前也正越来越多地被嵌入式项目所采纳,加速项目的开发,缩短产品上市时间。接下来的内容,我们将介绍如何在嵌入式计算机模块基于 Embedded Linux 使用 Python,并演示基于 Python 和OpenCV的条形码、二维码扫描功能。本文所演示的

2020-07-23 15:36:11 1200 2

原创 64位系统环境时Java的性能

如果你要买一辆车而且你的首要目标是性能或者更具体的说是原始动力,那么在4缸发动机和8缸发动机之间选择的话,答案很显然,因为越大越好。通常而言,当我们看计算机配置列表或者产品宣传的时候,64位的性能也比32位有优势,同样四核比双核更棒。然而许多在大同世界里很简单的道理包括越多/大越好,移到计算机领域里就不是那么回事了。当处理多重CPU时,你会觉得那些多核所多出来的处理单元很有用,但如果你的工作仅仅是单线程的,那你要做的却是让其他核一边歇着。32位与64位的比较则更加细微。x86-64 架构不仅在x86架构

2020-07-23 15:33:10 134

原创 Linux中的内存管理

一提到内存管理,我们头脑中闪出的两个概念,就是虚拟内存,与物理内存。这两个概念主要来自于linux内核的支持。Linux在内存管理上份为两级,一级是线性区,类似于00c73000-00c88000,对应于虚拟内存,它实际上不占用实际物理内存;一级是具体的物理页面,它对应我们机器上的物理内存。这里要提到一个很重要的概念,内存的延迟分配。Linux内核在用户申请内存的时候,只是给它分配了一个线性区(也就是虚存),并没有分配实际物理内存;只有当用户使用这块内存的时候,内核才会分配具体的物理页面给用户,这时候才

2020-07-23 14:30:35 549

转载 学习单片机的三个步骤

基础理论知识学习基础理论知识包括模拟电路、数字电路和C语言知识。模拟电路和数字电路属于抽象学科,要把它学好还得费点精神。在你学习单片机之前,觉得模拟电路和数字电路基础不好的话,不要急着学习单片机,应该先回顾所学过的模拟电路和数字电路知识,为学习单片机加强基础。否则,你的单片机学习之路不仅会很艰难和漫长,还可能半途而废。笔者始终认为,扎实的电子技术基础是学好单片机的关键,直接影响单片机学习入门的快慢。单片机属于数字电路,其概念、术语、硬件结构和原理都源自数字电路,如果数字电路基础扎实,对复杂的单片机硬件

2020-07-22 15:10:17 337

原创 物联网平台的分类及主要要求

物联网的范围之广,要求之多,甚至会让最好的电信运营商手足无措。在不久的将来(有人估计到 2025 年物联网设备将突破 400 亿),物联网服务提供商的压力是巨大的。有必要对连接的设备和传感器进行自动化管理,这就是为什么全面的物联网平台已成为当务之急。物联网平台分类物联网平台可分为以下几类:1)端到端平台(Endtoendplatform)2)连接平台(Connectivityplatform)3)云平台4)数据平台这些平台中的每个平台在构成整个物联网世界的传感器和设备的整体功能中都发挥着巨大作

2020-07-22 11:24:36 909

原创 Java中的>>,>>>

我们都知道对于有符号数据类型,二进制最左端的数字为符号位,0代表正,1代表负,这里先介绍几个概念  逻辑左移=算术左移:高位溢出,低位补0  逻辑右移:低位溢出,高位补0  算术右移:低位溢出,高位用符号位的值补  比如一个有符号位的8位二进制数10101010,[]是添加的数字  逻辑左移一位:0101010[0]  逻辑左移两位:101010[00]  算术左移一位:0101010[0]  算术左移两位:101010[00]  逻辑右移一位:[0]1010101  逻辑右移两位:[0

2020-07-21 15:26:46 92

原创 Linux入门基础

1 Linux操作系统简介  Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。  1991年的10月5日,Linux创始人林纳斯·托瓦兹(Linus Torvalds)在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生,199.

2020-07-21 14:55:34 118

原创 学Python要准备什么呢?

学习Python必不可少的一部肯定是工具,一种是编码器,一种是解释器:  编码器就是Python。目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的,因为现在Python正在朝着3.x版本进化,在进化过程中,大量的针对2.x版本的代码要修改后才能运行,所以,目前有许多第三方库还暂时无法在3.x上使用。  IDE工具。IDE集成开发环境(简称IDE)软件是用于程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。  常见使用的工具是:  Pych

2020-07-21 14:32:47 369

原创 java的三种随机数生成方式,必掌握

随机数的产生在一些代码中很常用,也是我们必须要掌握的。而java中产生随机数的方法主要有三种:第一种:new Random()  第二种:Math.random()  第三种:currentTimeMillis()  第一种需要借助java.util.Random类来产生一个随机数发生器,也是最常用的一种,构造函数有两个,Random()和Random(long seed)。第一个就是以当前时间为默认种子,第二个是以指定的种子值进行。产生之后,借助不同的语句产生不同类型的数。  种子就是产生随机

2020-07-20 15:23:24 314

原创 Java异常常见八大问题

1.异常管理的最佳做法  如果可以正确处理异常,则应该被捕获,否则应该抛出异常。2.为什么try中定义的变量不能用于catch或finally?  try {File file = new File(“path”);FileInputStream fis = newFileInputStream(file);String s = “inside”;} catch (FileNotFoundException e){e.printStackTrace();System.out.println(s);

2020-07-20 13:37:45 336

原创 Linux多线程编程

1、进程与线程  进程是程序执行时的一个实例,即它是程序已经执行到何种程度的数据结构的汇集。从内核的观点看,进程的目的就是担当分配系统资源(CPU时间、内存等)的基本单位。  线程是进程的一个执行流,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。一个进程由几个线程组成(拥有很多相对独立的执行流的用户程序共享应用程序的大部分数据结构),线程与同属一个进程的其他的线程共享进程所拥有的全部资源。  "进程——资源分配的最小单位,线程——程序执行的最小单位"进程有独立的地址空间,一个进程

2020-07-20 10:26:30 66

原创 linux常用基本命令

Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们。  这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到版权问题。  1、显示日期的指令: date  2、显示日历的指令:cal  3、简单好用的计算器:bc  4、重要的几个热键[Tab],[ctrl]-c, [ctrl]-d  [Tab]按键—具有『命令补全』不『档案补齐』的功能  [Ctrl]-c按键—让当前的程序『停掉』  [Ctrl]-d按键—通常代表着:『键盘

2020-07-20 10:16:08 69

原创 Linux关机和重启命令

shutdown命令  在早期的 Linux 系统中,应该尽量使用 shutdown 命令来进行关机和重启。因为在那时的 Linux 中,只有 shutdown 命令在关机或重启之前会正确地中止进程及服务,所以我们一直认为 shutdown 才是最安全的关机与重启命令。  而在现在的系统中,一些其他的命令(如 reboot)也会正确地中止进程及服务,但我们仍建议使用 shutdown 命令来进行关机和重启。  shutdown 命令的基本信息如下。  命令名称:shutdown。  英文原意:b

2020-07-17 15:01:16 130

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除