
进程同步与互斥练习.docx
9页本文格式为Word版,下载可任意编辑进程同步与互斥练习 进程同步与互斥 练习题 选择题 1.任何两个并发进程之间存在着( )的关系 A.各自完全独立 B.拥有共享变量 C.务必互斥 D.可能相互制约 2.并发进程执行的相对速度是( ) A.由进程的程序布局抉择的 B.由进程自己来操纵的 C.在进程被创造时确定的 D.与进程调度策略有关的 3.并发进程执行时可能会展现“与时间有关的错误”,这种错误是由于并发进程( )引起的 A.使用共享资源 B.执行的依次性 C.要求计算时间的长短 D.程序的长度 4.并发进程中与共享变量有关的程序段称为( ) A.共享子程序 B.临界区 C.管理区 D.公共数据区 5.用来实现进程同步与互斥的PV操作实际上是由( )过程组成的。
A.一个可被中断的 B.一个不成被中断的 C.两个可被中断的 D. 两个不成被中断的 6.进程从运行态变为等待态可能由于( ) A.执行了V操作 B.执行了P操作 C.时间片用完 D.有高优先级进程就绪 7.用PV操作管理互斥使用的资源时,信号量的初值应定义为( ) A.任意正整数 B.1 C.0 D.-1 8.用P、V操作管理临界区时,互斥信号量的初值应定义为( ) A.任意值 B.1 C.0 D.-1 9.现有n个具有相关临界区的并发进程,假设某进程调用P操作后变为等待状态,那么调用P操作时信号量的值必定为( ) A.≤0 B.1 C.n-1 D.n 10.用PV操作管理临界区时把信号量的初值定义为1,现已有一个进程在临界区,但有n个进程在等待进人临界区,这时信号量的值为( )。
A.-1 B.1 C.-n D.n 11.用V操作唤醒一个等待进程时,被唤醒进程的状态应变成( )状态 A.执行 B.就绪 C.运行 D.收容 12.进程间的同步是指进程间在规律上的相互( )关系 A.联接 B.制约 C.持续 D.调用 多项选择题 1.有关并发进程的以下表达中,( )是正确的 A.任何时刻允大量个进程在同一CPU上运行 B.进程执行的速度完全由进程自己操纵 C.并发进程在访问共享资源时可能展现与时间有关的错误 D.同步是指并发进程中存在的一种制约关系 E.各自独立的并发进程在执行时不会相互影响 2.一个正在运行的进程调用P(s)后,若S的值为( ),那么该进程可以持续运行 A.S>0 B.S<0 C.S≠0 D.S≥0 E.S≤0 判断题 1.有交往的并发进程确定共享某些资源。
( ) 2.假设不能操纵并发进程执行的相对速度,那么它们在共享资源时确定会展现与时间有关的错误 ( ) 3.并发进程的执行结果只取决于进程本身,不受外界影响 ( ) 4.多道程序设计必然导致进程的并发执行 ( ) 有m个进程共享同一临界资源,若使用信号量机制实现对资源的互斥访问,那么信号量值的变化范围是________________ 对于两个并发进程,设互斥信号量为mutex,若mutex=0,那么________ A 表示没有进程进入临界区 B 表示有一个进程进入临界区 C表示有一个进程进入临界区,另一个进程等待进入 D 表示有两个进程进入临界区 设系统中有n(n>2)进程,且当前不在执行进程调度程序,试考虑下述4种处境哪种不能发生: A没有运行进程,有2个就绪进程,n-2个进程处于等待状态 B有1个运行进程,没有就绪进程,n-1个进程处于等待状 C有1个运行进程,有1个就绪进程,n-2个进程处于等待状态 D有1个运行进程,有n-1个就绪进程,没有进程处于等待状态 设有一个作业由四个进程组成,这四个进程在运行时务必按图所示的依次,用P、V原语操作表达四个进程的同步关系。
应用题 设系统中只有一台打印机,有三个用户的程序在执行过程中都要使用打印机输出计算结果设每个用户程序对应一个进程问:这三个进程间有什么样的制约关系?试用P、V操作写出这些进程使用打印机的算法 判断下面的同步问题的算法是否正确?若有错,请指出错误理由并予以改正 (1)设A、B两进程共用一个缓冲区Q,A向Q写入信息,B那么从Q读出信息,算法框图如下图 设A、B为两个并发进程,它们共享一临界资源其运行临界区的算法框图如下图 某套装服装厂有甲乙两个制作室和一个配套室两个制作室分别生产上衣和裤子,每制作一件上衣或裤子后制作室工人都要分别把它们送到配套室的衣架F1和裤架F2上,衣架F1上存放上衣,裤架F2上存放裤子,衣架最多能放50件上衣,裤架最多能放50条裤子配套室工人每次从架上取一件上衣和一条裤子,然后将它们配成套装,并举行包装为防止操作出错, 甲制作室工人及配套室工人对衣架F1的存取动作应互斥举行,乙制作室工人及配套室工人对裤架F2的存取动作应互斥举行用P、V原语举行正确管理,分别描述甲制作室工人、乙制作室工人以及配套室工人的工作过程 解: (1)设公用信号量mutex1和mutex2操纵进程对衣架和裤架的互斥操作 设私用信号量empty1和empty2分别表示衣架和裤架的空位数, full1表示衣架上的衣服数,full2表示裤架上的裤子数 (2)初始化mutex1=1,mutex2=1, empty1=50,empty2=50,full1=0,full2=0 (3)描述: 甲制作室工人工作过程: 乙制作室工人工作过程: L1:生产一件上衣 L2:生产一条裤子 P(empty1) P(empty2) P(mutex1) P(mutex2) 将上衣放到衣架上 将裤子放到裤架上 V(mutex1) V(mutex2) V(full1) V(full2) Goto L1 Goto L2 配套工人工作过程: L3:P(full1) P(full2) P(mutex1) P(mutex2) 分别取上衣和裤子举行配套 V(mutex1) V(mutex2) V(empty1) V(empty2) Goto L3 在一个盒子里,混装了数量相等的黑白围棋子。
现在利用自动分拣系统把黑子、白子分开,设分拣系统有两个进程P1和P2,其中进程P1拣白子;进程P2拣黑子规定每个进程一次拣一子,当一个进程在拣时不允许另一个进程去拣,当一个进程拣了一子时,务必让另一个进程去拣试写出进程P1和P2能够正确并发执行的程序 设私有信号量S1=1;S2=0 P1(){ P2(){ P(S1); P(S2); 拣白子; 拣黑子; V(S2);} V(S1);} 有一个仓库,可存放X、Y两种产品,仓库的存储空间足够大,但要求:(1)每次只能存入一种产品X或Y,(2)得志-N0包含了S>0和S<0,当S<0时进程将成为等待状态而不能运行 [题解]A,D 3.[题解]A,C,E 4.[题解]A,B,C,D,E 三、判断题 1.[题解]是。
2.[分析]假设不操纵并发进程执行的相对速度,那么它们在共享资源时可能会展现两种处境:一种是并发进程交替使用共享资源,这样就可能会发生与时间有关的错误;另一种是并发执行的速度没有致使它们交替使用共享资源,这时就不会展现与时间有关的错误因而,此题的结论“确定会展现与时间有关的错误”是不对的 [题解]否 3.[分析]所谓防止死锁是指采用了某种方法后系统确定不会发生死锁但是,使用PV操作不确定能防止死锁,教材中的五个哲学家问题就是例证所以, PV操作可以防止死锁的说法是错误的 [题解]否 4. [分析]假设一个进程单独执行时,那么执行结果只取决于进程本身,不受外界影响但多个进程并发执行时,无论是进程本身的理由还是外界的因素都会影响到进程的执行速度假设并发进程有共享变量且其执行速度造成了它们交替访问共享变量,那么进程的执行结果可能不惟一故此题的阐述不切当 [题解]否 5.[题解]是 6.[题解]是 7.[分析]限制共享资源互斥使用后仍可能引起系统死锁,可举例说明例如,教材中五个哲学家问题,采用了PV操作来保证共享资源的互斥使用,但还是发生了循环等待,且这种等待永远不能终止,引起了死锁。
所以,资源的互斥使用不能保证系统不会死锁 [题解]否 8. [分析]若任何一个进程在申请新资源前总是先归还已得到的资源,那么任何进程都不会发生“占有且等待资源”的处境也就是说,这种资源调配策略能破坏形成死锁的四个必要条件中的其次个条件,故可防止死锁 [题解]是 四、填空题 1.封闭性,可再现性 2.并发进程 3.与时间有关的 4.临界区 5.P, V 6.竞争(或互斥),协作(或同步) 7.P, V 8.等待信号量,就绪 9.[分析]因规定该资源只能互斥使用,因而信号量的初值应定义为1当n个进程各调用一次P操作时将使信号量的值为最小 [题解]1,(1-n)或-(n-1) 10.[分析]由于初值为10,因而调用了18次P操作后的值为(l0-18)=-8再调用15次V操作的话那么信号量的值为(-8+15)=7 「题解」7 11.send(或发送),receive(或接收)。












