第2章进程管理“练习与思考”解答
1.基本概念和术语进程、进程互斥、进程同步、临界资源、临界区、死锁进程是程序在并发环境中的执行过程。进程互斥:各个进程彼此不知道对方的存在,逻辑上没有关系,由于竞争同一资源(如打印机、文件等)而发生相互制约。进程同步:各个进程不知对方的名字,但通过对某些对象(如IO缓冲区)的共同存取来协同完成一项任务。临界资源:一次仅允许一个进程使用的资源。临界区:在每个进程中访问临界资源的那段程序。死锁是指在一个进程集合中的每个进程都在等待仅由该集合中的另一个进程才能引发的事件而无限期地僵持下去的局面。2.基本原理和技术(1)在操作系统中为什么要引入进程概念?它与程序的区别和联系是什么?在操作系统中,由于多道程序并发执行时共享系统资源,共同决定这些资源的状态,因此系统中各程序在执行过程中就出现了相互制约的新关系,程序的执行出现“走走停停”的新状态。这些都是在程序的动态过程中发生的。用程序这个静态概念已不能如实反映程序并发执行过程中的这些特征。为此,人们引入“进程”这一概念来描述程序动态执行过程的性质。进程与程序的主要区别是:进程是动态的;程序是静态的。进程有独立性,能并发执行;程序不能并发执行。二者无一一对应关系。进程异步运行,会相互制约;程序不具备此特征。但进程与程序又有密切的联系:进程不能脱离具体程序而虚设,程序规定了相应进程所要完成的动作。(2)进程的基本状态有哪几种?通常在操作系统中,进程至少要有三种基本状态。这三种基本状态是:运行态、就绪态和阻塞态(或等待态)。(3)用如图323所示的进程状态转换图能够说明有关处理机管理的大量内容。试回答:
①什么事件引起每次显著的状态变迁?②下述状态变迁因果关系能否发生?为什么?
(A)2→1(B)3→2(C)4→1
①
图323进程状态转换图
就绪→运行:CPU空闲,就绪态进程被调度程序选中。
运行→就绪:正在运行的进程用完了本次分配给它的CPU时间片。
运行→阻塞:运行态进程因某种条件未满足而放弃对CPU的占用,如等待读文件。
1
f阻塞→就绪:阻塞态进程所等待的事件发生了,例如读数据的操作完成。②下述状态变迁:(A)2→1:可以。运行进程用完了本次分配给它的时间片,让出CPU,从就绪队列中选一个进程投入运行。(B)3→2:不可以。任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再变为就绪态。(C)4r