问答题X 纠错
进程控制块(PCB)是为描述进程的运动变化过程而采用的一个与进程相联系的 数据结构,用于记录系统管理进程所需的信息,描述进程的瞬间特征。它是进程 的唯一实体,操作系统通过PCB而感知进程的存在。 为了完成进程管理、进程通信、中断处理、文件管理、存储管理、设备管理等各 项任务,进程PCB结构必须如下项目:
①进程的标识符name:每个进程都必须有唯一的标识符,可以用字符或编号表 示。在创建一个进程时,由创建者给出进程的标识,唯一地标识进程,与其他进 程区别。
②进程当前运行状态status:说明本进程目前处于何种状态(运行、就绪、等 待),作为进程调度时分配处理机的主要依据。
③当前队列指针next:登记了处于同一状态的下一个PCB的地址,以此将处于 同一状态的所有进程链接起来。比如在一个就绪队列中,当前活动进程阻塞,则 需要根据当前队列指针调度下一个就绪进程进入运行。
④总链指针all_q_next:将所有的进程链接起来,进程PCB中的该项内容总是 指向总链中的下一个PCB地址。这在有的场合是很方便的,比如当创建一个进程 时,需要判断创建者给出的标识符名是否唯一,此时沿总链往下查找就比较方便。
⑤程序开始地址start_addr:进程开始的地址。当一个进程被调度进入运行时, 需要从此处获得进程开始地址。
⑥CPU现场保护区cpustatus:通常保护的信息有工作寄存器、指令计数器以及 程序状态字等,供进程调度时使用。当一个进程由运行转入其他状态时,需要把 这些信息保存起来。当一个进程投入运行时,又需要把这些内容写入相应的寄存 器。同时进行中断处理也需要保存CPU现场。
⑦通信信息communication information:是指每个进程在运行过程中与别的进 程进行通信时所记录的有关信息。 ⑧家庭联系process family:有的系统允许一个进程创建自己的子进程,这样, 会组成一个进程家庭。在pcb中必须指明本进程与家庭的联系,如它的子进程和 父进程的标识符。
⑨占有资源清单own_resource,用于设备管理。
⑩进程优先级priority,在中断处理、进程调度过程中都需要比较进程之间的 优先级。
上述项目是一般PCB结构应包含最基本内容。不同的操作系统所使用的PCB结构 是不同的。在UNIX系统中,为完成存储管理、文件管理,还在PCB结构中设有 i结点指针、主存地址、当前中断保护区内r0等内容。
你可能喜欢
问答题
问答题
问答题
填空题