扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
进程的定义:一个进程是一个程序的一次执行的过程,程序是静态的,它是一些保存在磁盘上的可执行的代码和数据集合,进程是一个动态的概念。
一、 Linux进程概念
Linux 进程中最知名的属性就是它的进程号(Process Idenity Number,PID)和它的父进程号(parent process ID,PPID)。PID、PPID都是非零正整数。一个PID唯一地标识一个进程。一个进程创建新进程称为创建了子进程(child process)。相反地,创建子进程的进程称为父进程。
所有进程追溯其祖先最终都会落到进程号为1的进程身上,这个进程叫做init进程。是内核自举后 第一个启动的进程。init进程作用是扮演终结父进程的角色。因为init进程永远不会被终止,所以系统总是可以确信它的存在,并在必要的时候以它为参 照。如果某个进程在它衍生出来的全部子进程结束之前被终止,就会出现必须以init为参照的情况。此时那些失去了父进程的子进程就都会以init作为它们 的父进程。
Linux进程在运行中的三种状态:
执行(Running)状态:CPU正在执行,即进程正在占用CPU。
就绪(Waiting)状态:进程已经具备的执行的一切条件,正在等待分配CPU处理时间。
停止(Stoped)状态:进程不能使用CPU。
理解Linux下进程的结构:
Linux中一个进程在内存里有三部份的数据,就是"数据段","堆栈段"和"代码段",基于I386兼容的中央处理器,都有上述三种段寄存器,以方便操作系统的运行。见图1。
代码段,是存放了程序代码的数据,假如机器中有数个进程运行相同的一个程序,那么它们就可以使用同一个代码段。而数据段则存放程序的全局变量,常数以及动 态数据分配的数据空间。堆栈段存放的就是子程序的返回地址、子程序的参数以及程序的局部变量。堆栈段包括进程控制块PCB(Process Control Block)中。PCB处于进程核心堆栈的底部,不需要额外分配空间。
Linux进程的种类 :
Linux操作系统包括三种不同类型的进程,每种进程都有自己的特点和属性。
交互进程--由一个shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。
批处理进程--这种进程和终端没有联系,是一个进程序列。
监控进程(也称守护进程)--Linux系统启动时启动的进程,并在后台运行。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者