1、计算机操作系统进程管理体系练习题计算机操作系统进程管理体系 练习题作者: 日期:时,进程从阻塞状态变为就绪状态。B.等待某一事件D.时间片用完一、选择题1.在进程管理中,当A.进程被进程调度程序选中C.等待的事件发生2.分配到必要的资源并获得处理机时的进程状态是A.就绪状态 B.执行状态消状态3. P、V操作是 。A.两条低级进程通信原语C.两条系统调用命令4.设系统中有n (n2)个进程,C.阻塞状态OD.撤B.两组不同的机器指令D.两条高级进程通信原语且当前不在执行进程调度程序,没有就绪进程,n-1个进程处于等待状态。 有1个就绪进程,n-2个进程处理等待状试考虑下述4种情况,不可能发生的
2、情况是 。A. 没有运行进程,有2个就绪进程,n个进程处于等待状态。B.有1个运行进程,C.有1个运行进程,态OD.n-1个就绪进程,没有进程处于等待状态。有1个运行进程,7.进程的三个基本状态在一定条件下可以相互转化,进程由运 行状态变为阻塞状态的条件是A.时间片用完C.等待的某事件已发生8.A.待9.为B.等待C.运行A.就绪用户自己确定10.用V操作唤醒一个等待进程时,被唤醒进程的状态变为 。A.等待成11.操作系统通过A. JCB12.用 P、A. 一切B.就绪C.运行.对进程进行管理。B. PCB C. DCTV操作可以解决 互斥问题。B.某些 C.正确D.由D.完D. CHCTD.
3、错误13.个进程被唤醒意味着A.该进程重新占有了 CPUC.其PCB移至等待队列队首14.多道程序环境下,操作系统分配资源以A.程序 B.指令 C.进程15.在分时系统 处理系统中,导致进程创建的典型事件是( 为运行中的应用进程创建新进程的事件 时,( A:( 1) 户通信。B:( 1)级调度。C:( 1)供服务。D:( 1)为进程分配CPU ( 4)将进程插入就绪队列。16.从下面对临界区的论述中,选出一条正确的论述。 临界区是指进程中用于实现进程互斥的那段代码。 临界区是指进程中用于实现进程同步的那段代码。 临界区是指进程中用于实现进程通信的那段代码。 临界区是指进程中用于访问共享资源的那
4、段代码。 临界区是指进程中访问临界资源的那段代码。(1)(2)(3)(4)(5)B.它的优先权变为最大 D.进程变为就绪状态 为基本单位。B.指令 C.进程 D.作业中,导致进程创建的典型事件是( );在批);由系统专门 ( )。在创建进程是)不是创建所必需的步骤。用户注册;(2)用户登录;(3)用户记账;(4)作业录入;(2)分配资源;(2)作业调度;(进行通信;(3)3)进程调度;(4)共享资源;(4)为进程建立PCB ( 2)为进程分配内存等资源;(3)17.进程A和B共享同一临界资源,并且进程A正处于对应的临 界区内执行。请从下列描述中选择一条正确的描述。A.进程A的执行不能被中断,即
5、临界区的代码具有原子性。B.进程A的执行能被中断, 程BoC.进程A的执行能被中断, 调度给进程BoD.进程A的执行能被中断,但中断 A后,不能将CPU调度给进而且只要B进程就绪,就可以将CPU而且只要B进程就绪,就必定将CPU调度给进程Bo18.从下面的叙述中选出一条正确的叙述:(1)操作系统的一个重要概念是进程,不同的进程所执行的代码也不同。(2)操作系统通过PCB来控制和管理进程,用户进程可从 PCB中读出与本身运行状态相关的信息。(3 )当进程由执行状态变为就绪状态时, CPU现场信息必须被保存在PCB中。(4)当进程申请CPU得不到满足时,它将处于阻塞状态。(5 )进程是可与其他程序
6、并发执行的程序在一个数据集合上的 运行过程,所以程序段是进程存在的唯一标志。19.从下面的叙述中选出4条正确的叙述:(1 )一个进程的状态发生变化总会引起其它一些进程的状态发 生变化。(2)进程被挂起(suspend)后,状态变为阻塞状态。(3)信号量的初值不能为负数。(4)线程是CPU调度的基本单位,但不是资源分配的基本单位。(5)在进程对应的代码中使用 wait、signal操作后,可以防止系统发生死锁。(6)管程每次只允许一个进程进入。(7)wait、signal操作可以解决一切互斥问题。(8)程序的顺序执行具有不可再现性。是非题1.进程是动态的概念2.进程执行需要处理机3.进程是有生命
7、期的4.进程是指令的集合5.操作系统的一重要概念是进程,因此不同进程所执行的代码也一定不同7.操作系统用PCB管理进程,用户进程可以从 PCB中读出与本身运行状况有关的信息8.进程同步是指某些进程之间在逻辑上的相互制约关系9.在一个只有单个CPU的计算机中,进程不能并行操作。一个进程在利用CPU运行,另一个进程可以同时进行I/O操作,它们是 并行的。10.线程可以分为内核级(Kernel Thread )和用户级(UserThread)两种,操作系统不可以直接调度用户级的线程。三、填空题;当信号量值小于零时,其绝对值以为其他进程共享。5.系统中各进程之间逻辑上的相互制约关系称6.若一个进程已进
8、入临界区,其他欲进入临界区的进程必8.用P、V操作管理临界区时,任何一个进程在进入临界区之前9.在多道程序系统中,进程之间存在着的不同制约关系可以划10.分为两类:指进程间具有的一定11 .有m个进程共享同一临界资源, 若使用信号量机制实现对临 界资源的互斥访问,则信号量值的变化范围是12.在一个单处理机系统中, 若有5个用户进程,且假设当前时个。少有13、在单用户单任务环境下,用户独占全机,此时机内资源的状态,只能由运行程序的操作加以改变,此时的程序执行具有性和性特征。14、并发进程之间的相互制约,是由于它们的15、程序并发执行与顺序执行时相比产生了一些新特征,分别和 。间断性、失去封闭性、
9、不可再现性序能正确地并发执行,以提高资源利用率和系统吞吐量; 减少并发执行的开销,提高程序执行的并发程度。PCB程序段、数据段、PCB和特征。19、由于进程的实质是程序的一次执行,故进程有由 而消亡,即进程具有一定的生命期。系统吞吐量应转21、当前正在执行的进程由于时间片用完而暂停执行时, 该进程应转变为 状态;若因发生某种事件而不能继续执行时, 为 状态;若应终端用户的请求而暂停执行时,它应转为状态。执行,应转为 状态;以后,若用户要恢复其运行,应利用23、系统中共有5个用户进程,且当前CPU在用户态下执行,则最多可有个用户进程处于就绪状态,最多可有_个用户进程处于阻塞状态;若当前在核心态下
10、执行,则最多可有态。4,4,5,5进、忙则等待、有限等待、让权等待时,进程应阻塞。可用的临界资源数量;申请一个临界资源;减1;小于0四、解析题1.进程的定义是什么?它最少有哪几种状态?2.进程与线程的主要区别是什么?么联系和区别?解:(1)同步:两个事件的发生有着某种时序上的关系,进程间的同步关系是指系统中往往有几个进程共同完成一个任务;(2)互斥是进程间的另外一种关系。由于各进程要共享资源。而有些资源往往要求排他性地使用;(3)互斥是一种特殊的同步关系。4.桌上有一空盘,允许存放一只水果。爸爸可向盘中放苹果,P、也可向盘中放桔子,儿子专等吃盘中的桔子, 女儿专等吃盘中的 苹果。规定当盘空时一
11、次只能放一只水果供吃者取用,请用V原语实现爸爸、儿子、女儿三个并发进程的同步。解:设置3个信号量S SO SA信号量S表示盘子是否为空,同步描述:int S=1;int SA=0;int SO=0;mai n()cobeg infatherO;son();daughter。;coe nd father()while(1)p(S);/盘子是否空将水果放入盘中if(放入的是桔子)v(SO);/变形 else v(Sa) /很少有学生如此做!而这却是本题的关键son()while(1)p(SO);/盘子中有无桔子从盘中取出桔子;v(S);吃桔子;daughter。while(1)p(SA);/盘子中
12、有无苹果从盘中取出苹果;v(S);吃苹果;要求:(1)读者与写者之间互斥,写者与写者之间互斥。(2)读者之间不互斥。解:本题是读者-写者问题。 在本题中,允许读进程同时读数据也不库,但写进程正在写数据库时不允许其他进程读该数据库,该设置2个信号量和一个共享变量:读互斥信号量 rmutex,用于使读进程互斥地访问共享变量 count,其初值为1写互斥信号量wmutex,用于实现写进程与读进程的互斥及写进程与写进 程的互斥,其初值为 1共享变量count,用于记录当前正在读数据库的读进程数目,初值为 0。其工作过程描述如下:Sema phore rmutex=1;Sema phore wmutex
13、=1;Int coun t=0;Mai n()Cobeg inReader。;WriterO;Coe ndReader()While(true)P (rmutex);lf(co un t=0) p( wmutex);Count +;V(rmutex);读数据库;P (rmutex);Count -;If (co un t=0) v(wmutex);V(rmutex);Writer。While(true)P( wmutex);写数据库;V(wmutex);注意:正确理解信号量rmutex的意义是理解读者写者问题的 关键。Rmutex是一个互斥信号量,用于使读进程互斥地访问共享变量count。信号
14、量rmutex并不表示读进程的数目,表示读 进程数目的是共享变量 count。当一个读进程要读数据库时,应将读进程计数count增加1;如果此前(count加1以前)数据库中无读进程,还应对写互斥信号量 wmutex做P操作,这样,若数据库中无写进程则通过 P操作阻止后续写进程写,若数据库中有写进程,则通过P操作让读进程等待。同理,当一个读进程完成读数据库操作时,应将读进程计数 count减少1;如果此时(count减1以后)数据库中已无读进程,还应对写互斥信号量 wmutex做v操作,以允许写进程写。6.就绪队列中有10个进程,系统将时间片设为 200ms CPUa行进程切换要花费10ms试
15、问系统开销所占的比率约为多少?解:因就绪队列中有10个进程,它们以时间片轮转的方式使用CPU时间片长度为200ms。当一个时间片用完时,调度进程将当前运行进程设置为就绪状态并放入就绪队列尾, 再从就绪队列首选择进程投入运行,这一过程(进程切换)要花费时间 10ms。因此系统开销所占比率为:10/(200+10)=4.8%7、在OS中引起进程调度的主要因素有哪些?【解】 在OS中引起进程调度的主要因素有:(1 )缺乏资源。正在运行的进程因为某个条件不能满足,不得 不进入阻塞状态,此时,运行进程被撤下,引起调度使另一个进 程进入运行(2)时间片到。如果是分时系统或者以时间片作为激励调度的系统,时间片是引起硬件激励的主要因素, 每当时间片到,正在 运行的进程被暂时停止,将它再次排入就绪队列,引起调度使另 一就绪进程进入运行。 (3 )外部中断。外部中断信号也将引起调度,如打印机打印完唤醒重新进入运行,或引起调度使另一进程运行。(4 )进程结束。进程正常执行完毕,退出并终止,此时将激励 系统调度另一进程进入运行。8.假设有4道作业,它们的提交时间及执行时间已给出。作业号提交时刻(时)执行时间(小110:002210:201310:400.5410:500.3时)采用先来先服务调度算法和最短作业优先调度算法时的平均周转时间和平均带权周转时间,并指出它们的调度顺序。