讲解Linux内核操作系统——进程状态与转换

一. 进程控制

进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。

在操作系统中,一般把进程控制用的程序段称为原语,原语的特点是执行期间不允许中断,它是一个不可分割的基本单位。

1.1创建进程

UNIX中进程为树状层次结构,Windows 下所有进程没有层次结构

允许一个进程创建另一个进程,创建者称为父进程,被创建的进程称为子进程。子进程可以继承父进程所拥有的资源。当子进程被撤销时,应将其从父进程那里获得的资源归还给父进程。在撤销父进程时,也必须同时撤销它的所有子进程。

在操作系统中,终端用户登录系统、作业调度、系统提供服务、用户程序的应用请求等都会引起进程的创建。

创建原语的执行过程如下:

  1. 为新进程分配一个唯一的进程标识号,并申请一个空白的 PCB(PCB是有限的)。若 PCB 申请失败,则进程创建失败;
  2. 为进程分配资源,为新进程的程序和数据、以及用户栈分配必要的内存空间(在 PCB 中体现)。这里如果资源不足(比如内存空间),并不是创建失败,而是处于阻塞状态,等待相关资源;
  3. 初始化 PCB,主要包括初始化标志信息、初始化处理机状态信息和初始化处理机控制信息,以及设置进程的优先级等;
  4. 如果进程就绪队列能够接纳新进程,就将新进程插入到就绪队列,等待被调度运行。

2. 终止进程

进入终止状态的进程以后不能再执

你可能感兴趣的:(网络,服务器,运维)