当前位置:文档之家› 进程管理练习题

进程管理练习题

一、选择题1.在进程管理中,当 D 时,进程从阻塞状态变为就绪状态。

A.进程被进程调度程序选中B.等待某一事件C.等待的事件发生D.时间片用完2.分配到必要的资源并获得处理机时的进程状态是。

A.就绪状态 B.执行状态 C.阻塞状态 D.撤消状态3.P、V操作是。

A.两条低级进程通信原语B.两组不同的机器指令C.两条系统调用命令D.两条高级进程通信原语4.设系统中有n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况,不可能发生的情况是。

A.没有运行进程,有2个就绪进程,n个进程处于等待状态。

B.有1个运行进程,没有就绪进程,n-1个进程处于等待状态。

C.有1个运行进程,有1个就绪进程,n-2个进程处理等待状态。

D.有1个运行进程,n-1个就绪进程,没有进程处于等待状态。

5.若P、V操作的信号量S初值为2,当前值为-1,则表示有等待进程。

A. 0个B. 1个C. 2个D. 3个6.进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是。

A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中7.进程的三个基本状态在一定条件下可以相互转化,进程由运行状态变为阻塞状态的条件是。

A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中8.下列的进程状态变化中,变化是不可能发生的。

A.运行→就绪B.就绪→运行C.等待→运行D.等待→就绪9.一个运行的进程用完了分配给它的时间片后,它的状态变为。

A.就绪B.等待C.运行D.由用户自己确定10.用V操作唤醒一个等待进程时,被唤醒进程的状态变为。

A.等待B.就绪C.运行D.完成11.操作系统通过对进程进行管理。

A. JCBB. PCBC. DCTD. CHCT 12.用P、V操作可以解决互斥问题。

A. 一切B. 某些C. 正确D. 错误13.一个进程被唤醒意味着。

A. 该进程重新占有了CPUB. 它的优先权变为最大C. 其PCB移至等待队列队首D. 进程变为就绪状态14.多道程序环境下,操作系统分配资源以为基本单位。

A. 程序B. 指令C. 进程D. 作业15. 在分时系统中,导致进程创建的典型事件是();在批处理系统中,导致进程创建的典型事件是();由系统专门为运行中的应用进程创建新进程的事件是()。

在创建进程时,()不是创建所必需的步骤。

A:(1)用户注册;(2)用户登录;(3)用户记账;(4)用户通信。

B:(1)作业录入;(2)作业调度;(3)进程调度;(4)中级调度。

C:(1)分配资源;(2)进行通信;(3)共享资源;(4)提供服务。

D:(1)为进程建立PCB;(2)为进程分配内存等资源;(3)为进程分配CPU;(4)将进程插入就绪队列。

16. 从下面对临界区的论述中,选出一条正确的论述。

(1)临界区是指进程中用于实现进程互斥的那段代码。

(2)临界区是指进程中用于实现进程同步的那段代码。

(3)临界区是指进程中用于实现进程通信的那段代码。

(4)临界区是指进程中用于访问共享资源的那段代码。

(5)临界区是指进程中访问临界资源的那段代码。

17. 进程A和B共享同一临界资源,并且进程A正处于对应的临界区内执行。

请从下列描述中选择一条正确的描述。

A. 进程A的执行不能被中断,即临界区的代码具有原子性。

B. 进程A的执行能被中断,但中断A后,不能将CPU调度给进程B。

C. 进程A的执行能被中断,而且只要B进程就绪,就可以将CPU 调度给进程B。

D. 进程A的执行能被中断,而且只要B进程就绪,就必定将CPU 调度给进程B。

18. 从下面的叙述中选出一条正确的叙述:(1)操作系统的一个重要概念是进程,不同的进程所执行的代码也不同。

(2)操作系统通过PCB来控制和管理进程,用户进程可从PCB 中读出与本身运行状态相关的信息。

(3)当进程由执行状态变为就绪状态时,CPU现场信息必须被保存在PCB中。

(4)当进程申请CPU得不到满足时,它将处于阻塞状态。

(5)进程是可与其他程序并发执行的程序在一个数据集合上的运行过程,所以程序段是进程存在的唯一标志。

19. 从下面的叙述中选出4条正确的叙述:(1)一个进程的状态发生变化总会引起其它一些进程的状态发生变化。

(2)进程被挂起(suspend)后,状态变为阻塞状态。

(3)信号量的初值不能为负数。

(4)线程是CPU调度的基本单位,但不是资源分配的基本单位。

(5)在进程对应的代码中使用wait、signal操作后,可以防止系统发生死锁。

(6)管程每次只允许一个进程进入。

(7)wait、signal操作可以解决一切互斥问题。

(8)程序的顺序执行具有不可再现性。

20、一般情况下,互斥信号量的初值为。

A. 0B. 1C. 2D. 4二、是非题1.进程是动态的概念2.进程执行需要处理机3.进程是有生命期的4.进程是指令的集合5.操作系统的一重要概念是进程,因此不同进程所执行的代码也一定不同7.操作系统用PCB管理进程,用户进程可以从PCB中读出与本身运行状况有关的信息8.进程同步是指某些进程之间在逻辑上的相互制约关系9.在一个只有单个CPU的计算机中,进程不能并行操作。

一个进程在利用CPU运行,另一个进程可以同时进行I/O操作,它们是并行的。

10.线程可以分为内核级(Kernel Thread)和用户级(User Thread)两种,操作系统不可以直接调度用户级的线程。

三、填空题1.信号量的物理意义是当信号量值大于零时表示;当信号量值小于零时,其绝对值为。

2.临界资源的概念是,而临界区是指。

3.进程在运行过程中有三种基本状态,它们是、、。

4.进程主要由、、三部分内容组成,其中是进程存在的唯一标志。

而程序段部分也可以为其他进程共享。

5.系统中各进程之间逻辑上的相互制约关系称为。

6.若一个进程已进入临界区,其他欲进入临界区的进程必须。

7.将进程的链接在一起就形成了进程队列。

8.用P、V操作管理临界区时,任何一个进程在进入临界区之前应调用操作,退出临界区时应调用操作。

9.在多道程序系统中,进程之间存在着的不同制约关系可以划分为两类:与。

指进程间具有的一定逻辑关系;是指进程间在使用共享资源方面的约束关系。

10.程序顺序执行时有顺序性、和可再现性的特点。

11.有m个进程共享同一临界资源,若使用信号量机制实现对临界资源的互斥访问,则信号量值的变化范围是。

12.在一个单处理机系统中,若有5个用户进程,且假设当前时刻为用户态,则处于就绪状态的用户进程最多有个,最少有个。

13、在单用户单任务环境下,用户独占全机,此时机内资源的状态,只能由运行程序的操作加以改变,此时的程序执行具有性和性特征。

14、并发进程之间的相互制约,是由于它们的和而产生的,因而导致程序在并发执行时具有特征。

15、程序并发执行与顺序执行时相比产生了一些新特征,分别是、和。

间断性、失去封闭性、不可再现性16、引入进程的目的是,而引入线程的目的是。

使程序能正确地并发执行,以提高资源利用率和系统吞吐量;减少并发执行的开销,提高程序执行的并发程度。

17、进程由、和组成,其中是进程存在的唯一标志。

PCB、程序段、数据段、PCB18、进程最基本的特征是和,除此之外,它还有、和特征。

19、由于进程的实质是程序的一次执行,故进程有的基本特征,该特征还表现在进程由而产生,由而执行,由而消亡,即进程具有一定的生命期。

20、引入进程带来的好处是和。

提高资源利用率,增加系统吞吐量21、当前正在执行的进程由于时间片用完而暂停执行时,该进程应转变为状态;若因发生某种事件而不能继续执行时,应转为状态;若应终端用户的请求而暂停执行时,它应转为状态。

22、用户为阻止进程继续运行,应利用原语,若进程正在执行,应转为状态;以后,若用户要恢复其运行,应利用原语,此时进程应转为状态。

23、系统中共有5个用户进程,且当前CPU在用户态下执行,则最多可有个用户进程处于就绪状态,最多可有个用户进程处于阻塞状态;若当前在核心态下执行,则最多可有个用户进程处于就绪状态,最多可有个用户进程处于阻塞状态。

4,4,5,524、同步机制应遵循的准则:、、和。

空闲让进、忙则等待、有限等待、让权等待25、在记录型信号量机制中,S.value>0时的值表示;每次wait操作意味着,因此应将S.value ,当S.value 时,进程应阻塞。

可用的临界资源数量;申请一个临界资源;减1;小于0四、解析题1.进程的定义是什么?它最少有哪几种状态?2.进程与线程的主要区别是什么?3、什么是进程的互斥与同步?同步和互斥这两个概念有什么联系和区别?解:(1)同步:两个事件的发生有着某种时序上的关系,进程间的同步关系是指系统中往往有几个进程共同完成一个任务;(2)互斥是进程间的另外一种关系。

由于各进程要共享资源。

而有些资源往往要求排他性地使用;(3)互斥是一种特殊的同步关系。

4. 桌上有一空盘,允许存放一只水果。

爸爸可向盘中放苹果,也可向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。

规定当盘空时一次只能放一只水果供吃者取用,请用P、V原语实现爸爸、儿子、女儿三个并发进程的同步。

解:设置3个信号量S、SO、SA,信号量S表示盘子是否为空,其初值为1;信号量SO表示盘中是否有桔子,其初值为0;信号量SA表示盘中是否有苹果,其初值为0。

同步描述:int S=1;int SA=0;int SO=0;main(){cobeginfather();son();daughter();coend}father(){while(1){p(S);//盘子是否空将水果放入盘中;if(放入的是桔子)v(SO);//变形else v(Sa) //很少有学生如此做!而这却是本题的关键}}son(){while(1){p(SO);//盘子中有无桔子从盘中取出桔子;v(S);吃桔子;}}daughter(){while(1){p(SA);//盘子中有无苹果从盘中取出苹果;v(S);吃苹果;}}5. 请用信号量实现对某数据库的读者-写者互斥。

要求:(1)读者与写者之间互斥,写者与写者之间互斥。

(2)读者之间不互斥。

解:本题是读者-写者问题。

在本题中,允许读进程同时读数据库,但写进程正在写数据库时不允许其他进程读该数据库,也不允许其他进程写该数据库。

为了解决读、写进程之间的同步,应该设置2个信号量和一个共享变量:读互斥信号量rmutex,用于使读进程互斥地访问共享变量count,其初值为1;写互斥信号量wmutex,用于实现写进程与读进程的互斥及写进程与写进程的互斥,其初值为1;共享变量count,用于记录当前正在读数据库的读进程数目,初值为0。

其工作过程描述如下:Semaphore rmutex=1;Semaphore wmutex=1;Int count=0;Main(){CobeginReader();Writer();Coend}Reader(){While(true){P(rmutex);If(count==0) p(wmutex);Count ++;V(rmutex);读数据库;P(rmutex);Count --;If (count==0) v(wmutex);V(rmutex);}}Writer(){While(true){P(wmutex);写数据库;V(wmutex);}}注意:正确理解信号量rmutex的意义是理解读者-写者问题的关键。

相关主题