进程的描述——PCB

2019-07-14 11:33发布

     进程是一个程序对某个数据集的执行过程,是分配资源的基本单位,而处理机若要对进程识别并进行管理,就需要有描述进程存在并能够反映起变化的物理实体,即进程的静态描述。进程的静态描述有三个部分组成,进程控制块PCB,程序段和数据结构集。PCB包含进程的描述信息,控制信息以及资源信息,系统根据PCB 感知进程的存在并掌握进程的状态以达到控制进程活动的目的。进程的程序部分描述进程所要完成的功能。而数据集是进程比可缺少的工作区喝操作对象。     PCB     在 进程的并发执行过程中,由于资源共享,带来各进程之间的相互制约,为了反应这些制约关系喝资源共享关系,在创建一个进程时,首先应创建起PCB,然后才能对进程进行相应的控制,在进程完成后,PCB被释放,进程也随之消亡。     进程控制块中主要包括四个方面用于描述和控制进程运行的信息。     1.进程标识符信息     进程标识符用于唯一的标识一个进程。一个进程通常有以下两种标识符。
    外部标识符:由创建者提供,通常是由字母、数字组成,往往是用户(进程)访问该进程使用。外部标识符便于记忆,如:计算进程、打印进程、发送进程、接收进程等。
    内部标识符:为了方便系统使用而设置的。在所有的OS中,都为每一个进程赋予一个唯一的整数,作为内部标识符。它通常就是一个进程的符号,为了描述进程的家族关系,还应该设置父进程标识符以及子进程标识符。还可以设置用户标识符,来指示该进程由哪个用户拥有。     2、处理机状态信息
         处理机状态信息主要是由处理机各种寄存器中的内容所组成。
         通用寄存器。又称为用户可视寄存器,可被用户程序访问,用于暂存信息。
         指令寄存器。存放要访问的下一条指令的地址。
         程序状态字PSW。其中含有状态信息。(条件码、执行方式、中断屏蔽标志等)
         用户栈指针。每个用户进程有一个或若干个与之相关的系统栈,用于存放过程和系统调用参数及调用地址。栈指针指向该栈的栈顶。     3.进程调度信息 
        在PCB中还存放了一些与进程调度和进程兑换有关的信息。
       (1)进程状态。指明进程当前的状态,作为进程调度和对换时的依据。
       (2)进程优先级。用于描述进程使用处理机的优先级别的一个整数,优先级高的进程优先获得处理机。
       (3)进程调度所需要的其他信息。(进程已等待CPU的时间总和、进程已执行的时间总和)
       (4)事件。这是进程由执行状态转变为阻塞状态所等待发生的事件。(阻塞原因)     总之,进程控制块PCB是系统感知进程存在的唯一实体。通过对PCB的操作,系统为有关进程分配资源从而使得有关进程得以被调度执行;而完成进程所要求功能的程序段的有关地址,以及程序过程中因某种原因被停止执行后的现场信息也都在PCB中。最后,当进程执行结束后,则通过释放PCB来释放进程所占用的各种资源。