第三章进程同步与通信作业习题与答案
第3章死锁习题及答案
第三章死锁习题一、填空题1.进程的“同步”和“互斥”反映了进程间①和②的关系。
【答案】①直接制约、②间接制约【解析】进程的同步是指在异步环境下的并发进程因直接制约而互相发送消息,进行相互合作、相互等待,使得各进程按一定的速度执行的过程;而进程的互斥是由并发进程同时共享公有资源而造成的对并发进程执行速度的间接制约。
2.死锁产生的原因是①和②。
【答案】①系统资源不足、②进程推进路径非法【解析】死锁产生的根本原因是系统的资源不足而引发了并发进程之间的资源竞争。
由于资源总是有限的,我们不可能为所有要求资源的进程无限地提供资源。
而另一个原因是操作系统应用的动态分配系统各种资源的策略不当,造成并发进程联合推进的路径进入进程相互封锁的危险区。
所以,采用适当的资源分配算法,来达到消除死锁的目的是操作系统主要研究的课题之一。
3.产生死锁的四个必要条件是①、②、③、④。
【答案】①互斥条件、②非抢占条件、③占有且等待资源条件、④循环等待条件【解析】互斥条件:进程对它所需的资源进行排它性控制,即在一段时间内,某资源为一进程所独占。
非抢占条件:进程所获得的资源在未使用完毕之前,不能被其它进程强行夺走,即只能由获得资源的进程自己释放。
占有且等待资源条件:进程每次申请它所需的一部分资源,在等待新资源的同时,继续占有已分配到的资源,循环等待条件:存在一进程循环链,链中每一个进程已获得的资源同时被下一个进程所请求。
4.在操作系统中,信号量是表示①的物理实体,它是一个与②有关的整型变量,其值仅能由③原语来改变。
【答案】①资源,②队列,③P-V【解析】信号量的概念和P-V原语是荷兰科学家E.W.Dijkstra提出来的。
信号量是一个特殊的整型量,它与一个初始状态为空的队列相联系。
信号量代表了资源的实体,操作系统利用它的状态对并发进程共享资源进行管理。
信号量的值只能由P-V原语来改变。
5.每执行一次P原语,信号量的数值S减1。
如果S>=0,该进程①;若S<0,则②该进程,并把它插入该③对应的④队列中。
操作系统第三章作业答案
第三章一、问答题1、某系统采用响应比高者优先的处理机调度算法,某个时刻根据用户要求创建了一个进程P,进程P在其存在过程中依次经历了:进程调度选中了进程P占用处理机运行(就绪—>运行),进程P运行中提出资源申请,要求增加主存使用量,没有得到(运行—>阻塞);进程等待一段时间后得到主存(阻塞—>就绪);进程调度再次选中了进程P占用处理机运行(就绪—>运行);有紧急进程Q进入,系统停止进程P的运行,将处理机分配进程Q(运行—>就绪);进程Q运行完,进程调度再次选中了进程P占用处理机运行(就绪—>运行);进程P运行完。
请分析进程P在其整个生命过程中的状态变化。
2、何谓进程,它与程序有哪些异同点?613、引起创建进程的事件通常有哪些?694、简述时间片轮转调度算的基本思想。
大多数时间片轮转调度算法使用一个固定大小的时间片,请给出选择小时间片的理由。
然后,再给出选择大时间片的理由。
755、进程有哪几种基本状态?试举出使进程状态发生变化的事件并描绘它的状态转换图。
636、进程创建、撤销、唤醒和阻塞原语的流程69、70、717、进程控制块的作用是什么?它主要包括哪几部分内容?658、用户级线程与内核级线程的区别是什么?819、PCB中包含哪些信息?进程状态属于哪类信息?6510、列举引起进程创建和撤销的事件69、7011、试比较进程和线程的区别。
8112、什么是操作系统的内核?6713、简述操作系统的三级调度(简述其各级调度的基本功能即可)。
72二、计算题1、就绪队列中有4个进程P1,P2,P3,P4同时进入就绪队列,它们进入就绪队列2秒之后开始进程调度,它们需要的处理器时间如表所示。
忽略进行调度等所花费的时间,且进程执行过程中不会发生阻塞,请回答下列问题:分别写出采用时间片轮转调度算法(时间片为4秒)、响应比高者优先调度算法选中进程执行的次序。
答:时间片轮转调度算法:P1,P2,P3,P4 ,P1,P2,P4,P1,P2,P2响应比高者优先调度算法:P3,P4,P1,P22、在某计算机系统中,时钟以固定的频率中断CPU,以增加日历计数或控制系统中的一些定时操作,时钟中断处理程序每次执行的时间为2ms(包括进程切换开销)。
第三章 进程 习题
G,若系统中并发运行的进程和资源之间满足互斥使用,保持和等待,非剥夺性和循环等待,则可判定系统中发生了死锁;
H,在对付死锁的策略中,解除死锁通常都是和检测死锁配套使用;
I,产生死锁的原因可归结为竞争资源和进程推进顺序不当;
J,在死锁的解决方法中,由于避免死锁采用静态分配资源策略,所以对资源的利用率不高.
如果某一进程获得除CPU外的所有所需运行资源,经调度,分配给它CPU,该进程将进入( ).
A,就绪状态B,运行状态
C,等待状态D,活动状态
如果某一进程在运行时,因某种原因暂停,此时将脱离运行状态,而进入( ).
A,自由状态B,停止状态
C,等待状态D,静止状态
进程从运行状态变为等待状态的原因是( ).
A,共享资源B,临界区
C,临界资源D,共享区
答案-1:C
临界区是指( ).
A,并发进程中用于实现进程互斥的程序段
B,并发程序中用于实现进程同步的程序段
C,并发程序中用于实现进程通信的程序段
D,并发程序中与共享变量有关的程序段
答案-6:D
进程是( ).
A,与程序等效的概念B,并发环境中程序的执行过程
C,一个系统软件D,存放在内存中的程序
在进程通信中,使用信箱方式交换信息的是( ).
A,低级通信B,高级通信C,共享存储器通信D,管道通信
答案:B(普通)
关于进程,下列叙述不正确的是( ).
A,进程包含了数据和运行其上的程序
B,同一个程序运行在不同的数据集合上时,构成了不同的进程
C,一个被创建了的进程,在它消亡之前,总是处于3种基本状态之一
(×)2,具有多道功能的操作系统一定是多用户操作系统.
(完整版)第三章进程同步与通信作业习题与答案
第三章一.选择题(50题)1.以下_B__操作系统中的技术是用来解决进程同步的。
A.管道B.管程C.通道D.DMA2.以下_B__不是操作系统的进程通信手段。
A.管道B.原语C.套接字D.文件映射3.如果有3个进程共享同一程序段,而且每次最多允许两个进程进入该程序段,则信号量的初值应设置为_B__。
A.3B.2C.1D.04.设有4个进程共享一个资源,如果每次只允许一个进程使用该资源,则用P、V 操作管理时信号量S的可能取值是_C__。
A.3,2,1,0,-1B.2,1,0,-1,-2C. 1,0,-1,-2,-3D.4,3,2,1,05.下面有关进程的描述,是正确的__A__。
A.进程执行的相对速度不能由进程自己来控制B.进程利用信号量的P、V 操作可以交换大量的信息C.并发进程在访问共享资源时,不可能出现与时间有关的错误D.P、V操作不是原语操作6.信号灯可以用来实现进程之间的_B__。
A.调度B.同步与互斥C.同步D.互斥7.对于两个并发进程都想进入临界区,设互斥信号量为S,若某时S=0,表示_B_ _。
A.没有进程进入临界区B.有1个进程进入了临界区C. 有2个进程进入了临界区D. 有1个进程进入了临界区并且另一个进程正等待进入8. 信箱通信是一种_B__方式A.直接通信B.间接通信C.低级通信D.信号量9.以下关于临界区的说法,是正确的_C__。
A.对于临界区,最重要的是判断哪个进程先进入B.若进程A已进入临界区,而进程B的优先级高于进程A,则进程B可以打断进程A而自己进入临界区C. 信号量的初值非负,在其上只能做PV操作D.两个互斥进程在临界区内,对共享变量的操作是相同的10. 并发是指_C__。
A.可平行执行的进程B.可先后执行的进程C.可同时执行的进程D.不可中断的进程11. 临界区是_C__。
A.一个缓冲区B.一段数据区C.一段程序D.栈12.进程在处理机上执行,它们的关系是_C__。
考研操作系统-进程的同步与通信
考研操作系统-进程的同步与通信(总分:82.00,做题时间:90分钟)一、单项选择题(总题数:12,分数:24.00)1.相关临界区是指( )。
A.一个共享资源B.并发进程中涉及相同变量的那些程序段√C.并发进程中与共享变量有关的程序段D.一个独占资源2.下列关于P、V操作的说法中正确的是( )。
A.P、V操作是两个操作,而且都是原语操作√B.P、V操作中P操作可以不用原语方式,而V操作必须使用原语操作C.P、V操作是一个过程,同一般函数,过程一样,只是执行管理临界区的操作D.P、V操作中P操作必须使用原语方式,而V操作可以不使用原语操作3.由于并发进程之间( )不能由进程本身控制,当它们在共享某些资源的时候可能会产生与时间有关的错误。
A.分配外部设备B.分配内存空间C.执行的相对速度√D.占用存储器的位置4.下面对线程的描述中,错误的是( )。
A.同一进程中的线程可共享该进程的主存空间B.线程是调度和执行单位C.不同的线程可执行相同的程序D.线程是资源分配单位√5.如果有4个进程共享同一程序段,每次允许3个进程进入该程序段,若用P、V操作作为同步机制,则信号量的取值范围是( )。
A.4,3,2,1,-1B.2,1,0,-1,-2C.3,2,1,0,-1 √D.2,1,0,-2,-36.在进程通信中,( )常用信件交换信息。
A.低级通信B.高级通信√C.信息缓冲D.消息通信7.下列关于进程和线程的说法中正确的是( )。
A.线程是进程中可独立执行的子任务,一个进程可以包含一个或多个线程,一个线程可以属于一个或多个进程B.多线程技术具有明显的优越性,如速度快、通信简便、设备并行性高等√C.由于线程不作为资源分配单位,线程之间可以无约束地并行执行D.线程又称为轻型进程,因为线型都比进程小8.并发进程之间相互通信时两个基本的等待事件是( )。
A.等信件和等信箱√B.等消息和等信件C.等发送原语和接收原语D.等消息和等信箱9.对若干个并发进程共享某—变量的相关临界区的管理,下列说法中不正确的是( )。
进程同步与通信作业习题与答案
第三章一.选择题(50题)1.以下_B__操作系统中的技术是用来解决进程同步的。
A.管道B.管程C.通道2.以下_B__不是操作系统的进程通信手段。
A.管道B.原语C.套接字D.文件映射3.如果有3个进程共享同一程序段,而且每次最多允许两个进程进入该程序段,则信号量的初值应设置为_B__。
4.设有4个进程共享一个资源,如果每次只允许一个进程使用该资源,则用P、V操作管理时信号量S的可能取值是_C__。
,2,1,0,-1 ,1,0,-1,-2 C. 1,0,-1,-2,-3 ,3,2,1,05.下面有关进程的描述,是正确的__A__。
A.进程执行的相对速度不能由进程自己来控制B.进程利用信号量的P、V 操作可以交换大量的信息C.并发进程在访问共享资源时,不可能出现与时间有关的错误、V操作不是原语操作6.信号灯可以用来实现进程之间的_B__。
A.调度B.同步与互斥C.同步D.互斥7.对于两个并发进程都想进入临界区,设互斥信号量为S,若某时S=0,表示_B__。
A.没有进程进入临界区B.有1个进程进入了临界区C. 有2个进程进入了临界区D. 有1个进程进入了临界区并且另一个进程正等待进入8. 信箱通信是一种_B__方式A.直接通信B.间接通信C.低级通信D.信号量9.以下关于临界区的说法,是正确的_C__。
A.对于临界区,最重要的是判断哪个进程先进入B.若进程A已进入临界区,而进程B的优先级高于进程A,则进程B可以打断进程A而自己进入临界区C. 信号量的初值非负,在其上只能做PV操作D.两个互斥进程在临界区内,对共享变量的操作是相同的10. 并发是指_C__。
A.可平行执行的进程B.可先后执行的进程C.可同时执行的进程D.不可中断的进程11. 临界区是_C__。
A.一个缓冲区B.一段数据区C.一段程序D.栈12.进程在处理机上执行,它们的关系是_C__。
A.进程之间无关,系统是封闭的B.进程之间相互依赖相互制约C.进程之间可能有关,也可能无关D.以上都不对13. 在消息缓冲通信中,消息队列是一种__A__资源。
第3章 进程同步与通信2
进程写管道
进程向管道写数据时,可能有以下两种情况:
管道中有足够的空间存放要写的数据,此时每写 一数据块后核心便自动增加地址项的大小.写操 作完成后,核心修改索引节点中的写指针,并唤 醒所有因该管道空而睡眠等待的读进程. 管道中无足够的空间存放要写入的数据,此时核 心对该索引节点作标记后让写进程睡眠,等待数 据从管道中排出.上述情况的一个例外是,当进 程写的数据量大于管道的容量时,核心将尽可能 多的数据写到管道中,然后使进程睡眠,直到获 得更多的空间.
pipe文件的建立 文件的建立
pipe系统调用建立一个无名管道.其语法格式如下:
int pipe(fdes); int fdes[2];
核心创建一个管道时须完成下述工作:
分配磁盘和内存索引节点. 为读进程和写进程分配文件表项. 分配用户文件描述符.在读进程和写进程的用户文件描述 符表中,分别分配一个表项,并将文件描述符fdes[0]和 fdes[1]分别返回给读进程和写进程.
设置信号的处理方式
系统调用signal用于设置信号的处理方式.其 语法格式如下: void (* func)( ) signal(sig,func) 其中,func为收到软中断信号sig后进程希望 调用函数的地址. 19类信号如表所示.
func的取值情况
func的取值可以分成三种情况:
func=1时,进程对信号sig不予理睬. func=0时,即缺省处理,对大多数软中断信号的 缺省处理是终止进程. func为其他整数值时,它的值是指向信号处理程 序的指针.
管道通信示意图1
初始时,其长度为4,系统将管道看成一个循环 队列.按先进先出的方式读写.
A out B C D in
写入字符E后,管道长度为5
第3章进程同步与通信练习题答案
第3章进程同步与通信练习题(一)单项选择题1. 临界区是指()。
A. 并发进程中用于实现进程互斥的程序段 B .并发进程中用于实现进程同步的程序段C并发进程中用户实现进程通信的程序段D•并发进程中与共享变量有关的程序段2.相关临界区是指()。
A. —个独占资源 B •并发进程中与共享变量有关的程序段C •一个共享资源D •并发进程中涉及相同变量的那些程序段3•管理若干进程共享某一资源的相关临界区应满足三个要求,其中()不考虑。
A —个进程可以抢占己分配给另一进程的资源B •任何进程不应该无限地逗留在它的临界区中C •一次最多让一个进程在临界区执行D •不能强迫一个进程无限地等待进入它的临界区4、()是只能由P和V操作所改变的整型变量。
A共享变量B •锁C整型信号量D •记录型信号量5 •对于整型信号量,在执行一次P操作时,信号量的值应()。
A.不变B •加1 C减1 D •减指定数值6. 在执行V操作时,当信号量的值()时,应释放一个等待该信号量的进程。
A>0 B.<0 C.>=0 D.<=07. PV 操作必须在屏蔽中断下执行,这种不可变中断的过程称为()。
A初始化程序B •原语C •子程序D控制模块8 •进程间的互斥与同步分别表示了各进程间的()。
A •竞争与协作B •相互独立与相互制约C •不同状态D •动态性与并发性9并发进程在访问共享资源时的基本关系为()。
A.相互独立与有交往的B •互斥与同步C并行执行与资源共享D信息传递与信息缓冲10 •在进程通信中,()常用信件交换信息。
A •低级通信B •高级通信C •消息通信D •管道通信11 •在间接通信时,用Send(N,M)原语发送信件,其中N表示()。
A.发送信件的进程名 B •接收信件的进程名C信箱名D •信件内容12 •下列对线程的描述中,()是错误的。
A不同的线程可执行相同的程序 B •线程是资源分配单位 C •线程是调度和执行单位D •同一进程中的线程可共享该进程的主存空间13 •实现进程互斥时,用()对应,对同一个信号量调用PV操作实现互斥。
进程同步与通信
pricess computer begin L2: p(sf); 从缓冲去中取出数据; v(se); 进行数据计算; goto L2; end; coend;
9、(1)写出P、V操作的定义 (2)有3个进程PA、PB和PC写作解决文件 打印问题:PA将文件记录从磁盘读入主存 的缓冲区1,每执行一次读一个记录;PB 将缓冲区1的内容复制到缓冲区2,每执 行一次复制一个记录;PC将缓冲区2的 内容打印出来,每执行一次打印一个记 录。缓冲区的大小和一个记录大小一样。 请用P、V操作来保证文件的正确打印。
begin mutex,full,empty:semaphore; mutex:=1; empty:=8; full:=0; cobegin pricess producer begin 生产一个产品; p(empty); p(mutex); 将产品存入仓库; v(mutex); v(full); end;
process s3 begin p(b3); …… v(b4); end
process s4 begin p(b4); p(b4); …… end
8、在测量控制系统中,数据采集任务把 采集的数据送入一单缓冲区;计算任务 从该单缓冲区中取出数据进行计算。试 写出利用信号量机制实现两者共享单缓 冲区的同步算法。
cobegin process A begin L1:p(s1) 拣一粒黑子; v(s2) goto L1
process B begin L2:p(s2) 拣一粒白子; v(s1) goto L2 endl;
end;
coend;
7、四个进程合作完成一任务的前驱图, 试说明这四个进程间的同步关系,并以 PV操作描述它们。
解:应设置两个信号量sf,se,信号量sf表 示缓冲区是否有可供打印的计算结果, 其初值为0;信号量se用于表示缓冲区 有无空位置存放新的信息,其初值为1。 本题的同步描述如下:
操作系统课后习题答案 3 进程同步与通信
习题 3 进程同步与通信一、选择题题号1 2 3 4 5 6 7 8 9 10答案A D D C B C A B A A题号11 12答案D C二、综合题1、答:临界资源也称独占资源、互斥资源,它是指某段时间内只充许一个进程使用的资源。
比如打印机等硬件资源,以及只能互斥使用的变量、表格、队列等软件资源。
各个进程中访问临界资源的、必须互斥执行的程序代码段称为临界区,各进程中访问同一临界资源的程序代码段必须互斥执行。
为防止两个进程同时进入临界区,可采用软件解决方法或同步机构来协调它们。
但是,不论是软件算法还是同步机构都应遵循下述准则:①空闲让进。
②忙则等待。
③有限等待。
④让权等待。
2、答:忙等待意味着一个进程正在等待满足一个没有闲置处理器的严格循环的条件。
因为只有一个CPU 为多个进程服务,因此这种等待浪费了CPU 的时钟。
其他类型的等待:与忙等待需要占用处理器不同,另外一种等待则允许放弃处理器。
如进程阻塞自己并且等待在合适的时间被唤醒。
忙等可以采用更为有效的办法来避免。
例如:执行请求(类似于中断)机制以及PV 信号量机制,均可避免“忙等待”现象的发生。
3、答:在生产者—消费者问题中,Producer 进程中P(empty)和P(mutex)互换先后次序。
先执行P(mutex),假设成功,生产者进程获得对缓冲区的访问权,但如果此时缓冲池已满,没有空缓冲区可供其使用,后续的P(empty)原语没有通过,Producer 阻塞在信号量empty 上,而此时mutex 已被改为0,没有恢复成初值1。
切换到消费者进程后,Consumer 进程执行P(full)成功,但其执行P(mutex)时由于Producer 正在访问缓冲区,所以不成功,阻塞在信号量mutex 上。
生产者进程和消费者进程两者均无法继续执行,相互等待对方释放资源,会产生死锁。
在生产者和消费者进程中,V 操作的次序无关紧要,不会出现死锁现象。
第3章课后习题+进程同步与通信
售票大厅可容纳200
人购票,说明最多允 许200人共享售票大 厅,用信号量empty 表示,初值为200;
售票员一次只能为一 个购票者服务,说明 必须互斥地进行购票 ,用信号量mutex表 示,初值为1。
5. 进程之间的关系如图3-16所示,试用P、V操作描 述它们之间的同步。
A
S2 C
S1 B
S4 F D
答:同步关系;因为一个工序必须在前一个工序完成后才能开始, 他们必须相互协作才能使进程圆满完成。
(4)商品的入库出库。
答:同步关系;因为商品出库可以为入库提供空间。
(5)工人做工与农民种粮。
答:没有制约关系。
4. 设有一个售票大厅,可容纳200人购票。如果厅 内不足200人则允许进入,超过则在厅外等候; 售票员某时只能给一个购票者服务,购票者买完 票后就离开。试问:
(1)购票者之间是同步关系还是互斥关系?
答:互斥关系。只能有一个人获得售票员的服务。
(2)用P、V操作描述购票者的工作过程。
semaphore empty=200; semaphore mutex=1;
void buyer() { P(empty);
P(mutex); 买票; V(mutex); V(empty); }
wait(mutexB); if (countB==0) wait(mutex);
countB++; signal(mutexB);
过桥;
wait(mutexB); countB--;
if (countB==0) signal(mutex); signal(mutexB); }
S3
S5
E
S6 G
semaphore A,B,C,D,E,F,G=0,0,0,0,0,0,0; P1( ){S1;V(A);V(B);} P2( ){P(A);S2;V(C);} P3( ){P(B);S3;V(D);V(E);} P4( ){P(D);S4;V(F);} P5( ){P(E);S5;V(G);} P6( ){P(C);P(F);P(G);S6;}
操作系统第3章(进程的同步与通信习题与解答)
第3章进程的同步与通信习题与解答3.2 例题解析例3.2.1 多道程序系统程序的执行失去了封闭性和再现性,因此多道程序的执行不需要这些特性,这种说法是否正确?解这种说法不正确。
可以想象,如果一个程序在多道程序系统中,在相同的输入的情况下,多次执行所得结果是不同的,有谁还敢使用这个程序?因此,多道程序的执行也需要封闭性和再现性,只不过单道程序系统的封闭性和再现性是先天固有的,多道程序系统的程序执行要想获得封闭性和再现性,需通过程序员的精心设计才能得到。
所使用的方法就是同步和互斥的方法。
例3.2.2 多个进程对信号量S进行了5次 P操作,2次V操作后,现在信号量的值是 -3,与信号量S相关的处于阻塞状态的进程有几个?信号量的初值是多少?解(1) 因为S的当前值是-3,因此因为S处于阻塞状态的进程有3个;(2) 因为每进行一次P(S)操作,S的值都减1,每执行1次V操作S的值加1,故信号量的初值为-3+5-2=0;例3.2.3 如下锁的实现方法存在什么缺点?如何改进?LOCK(X) UNLOCK(X){ {do while X=1 ; X=0;X=1} }解存在的缺点是:当锁是关闭时,采用的是循环等待的方法,这样的等待还是要占用处理机的时间,应该采用阻塞等待的方法。
改进的锁实现如下:LOCK(X) UNLOCK(X){ {if X.value=1 if not empty(X.L) { insert( *, X.L); { P=remove(X.L);Block (*) Wakeup(P) } }else X.Value=1 else X.Value=0} }这里X.value是锁的值,X.L是存放由于锁X而阻塞的进程的队列。
insert( *, X.L)将当前进程的进程号插入到X.L,remove(X.L)是从X.L中移出一个进程号。
例3.2.4 使用多个进程计算Y=F1(X)+F2 (X).解(1) 确定并发和顺序操作在这个问题中,F1(X)和F2 (X)的计算是可以并行处理的,因此F1(X)和F2 (X)可以分别出现在两个进程中。
第三章 进程同步问题习题答案
进程同步练习1.有一阅览室,共有100个座位。
读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名。
读者离开时要消掉登记内容。
试用P、V操作描述读者进程的同步结构。
varmutex : semaphere;信号量,用于互斥full : semaphere; 信号量,用于同步table : array 0..n-1 of item; 登记表procedure reader;读者进程beginP(full);P(mutex);Register_name(table);V(mutex);Reading;P(mutex);Delet_name(table);V(mutex);V(full)end;beginseminitsal(mutex.v,1; full.v,100);初始化cobeginreader;reader;...coendend.2.设公共汽车上有一位司机和一位售票员,它们的活动如下:售票员:动车辆售票正常行车开车门到站停车关车门请分析司机与售票员之间的同步关系,如何用PV操作实现。
答:为了安全起见,显然要求:关车门后才能启动车辆;到站停车后才能开车门。
所以司机和售票员在到站、开门、关门、启动车辆这几个活动之间存在着同步关系。
用两个信号量S1、S2分别表示可以开车和可以开门,S1的初值为1,S2的初值为0。
用PV操作实现司机进程和售票员进程同步的算法描述如下:售票员:(S1)售票动车辆P(S2)正常行车开车门到站停车关车门V(S2)V(S1)另外,程序中PV操作出现的顺序与信号量的初值设置有关,以本题为例,算法如下描述时,S1、S2的初值均应为0。
售票员:常行车售票站停车P(S2)V(S2)开车门P(S1)关车门启动车辆V(S1)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章一.选择题(50题)1、以下_B__操作系统中得技术就是用来解决进程同步得。
A、管道B、管程C、通道D、DMA2、以下_B__不就是操作系统得进程通信手段。
A、管道B、原语C、套接字D、文件映射3、如果有3个进程共享同一程序段,而且每次最多允许两个进程进入该程序段,则信号量得初值应设置为_B__。
A、3B、2C、1D、04、设有4个进程共享一个资源,如果每次只允许一个进程使用该资源,则用P、V操作管理时信号量S得可能取值就是_C__。
A、3,2,1,0,-1B、2,1,0,-1,-2C、 1,0,-1,-2,-3D、4,3,2,1,05、下面有关进程得描述,就是正确得__A__。
A、进程执行得相对速度不能由进程自己来控制B、进程利用信号量得P、V 操作可以交换大量得信息C、并发进程在访问共享资源时,不可能出现与时间有关得错误D、P、V操作不就是原语操作6、信号灯可以用来实现进程之间得_B__。
A、调度B、同步与互斥C、同步D、互斥7、对于两个并发进程都想进入临界区,设互斥信号量为S,若某时S=0,表示_B__。
A、没有进程进入临界区B、有1个进程进入了临界区C、有2个进程进入了临界区D、有1个进程进入了临界区并且另一个进程正等待进入8、信箱通信就是一种_B__方式A、直接通信B、间接通信C、低级通信D、信号量9、以下关于临界区得说法,就是正确得_C__。
A、对于临界区,最重要得就是判断哪个进程先进入B、若进程A已进入临界区,而进程B得优先级高于进程A,则进程B可以打断进程A而自己进入临界区C、信号量得初值非负,在其上只能做PV操作D、两个互斥进程在临界区内,对共享变量得操作就是相同得10、并发就是指_C__。
A、可平行执行得进程B、可先后执行得进程C、可同时执行得进程D、不可中断得进程11、临界区就是_C__。
A、一个缓冲区B、一段数据区C、一段程序D、栈12.进程在处理机上执行,它们得关系就是_C__。
A、进程之间无关,系统就是封闭得B、进程之间相互依赖相互制约C、进程之间可能有关,也可能无关D、以上都不对13、在消息缓冲通信中,消息队列就是一种__A__资源。
A、临界B、共享C、永久D、可剥夺14、以下关于P、V操作得描述正确得就是__D_。
A、机器指令B、系统调用C、高级通信原语D、低级通信原语15、当对信号量进行V源语操作之后,_C__。
A、当S<0,进程继续执行B、当S>0,要唤醒一个就绪进程C、当S<= 0,要唤醒一个阻塞进程D、当S<=0,要唤醒一个就绪16、对临界区得正确论述就是__D_。
A、临界区就是指进程中用于实现进程互斥得那段代码B、临界区就是指进程中用于实现进程同步得那段代码C、临界区就是指进程中用于实现进程通信得那段代码D、临界区就是指进程中访问临界资源得那段代码17、 __A__不就是进程之间得通信方式。
A、过程调用B、消息传递C、共享存储器D、信箱通信18、同步就是指进程之间逻辑上得__A__关系。
A、制约B、调用C、连接D、排斥19、正在运行得进程在信号量S上作P操作之后,当S<0,进程将进入信号量得__A__。
A、阻塞队列B、提交队列C、后备队列D、就绪队列20、某个信号量S初值为3,当前值为-2,则等待在该信号量上得进程数为_B__个。
A、1B、2C、3D、521.管理若干进程共享某一资源得相关临界区应满足三个要求,其中__A__不考虑。
A一个进程可以抢占己分配给另一进程得资源B.任何进程不应该无限地逗留在它得临界区中C.一次最多让一个进程在临界区执行D.不能强迫一个进程无限地等待进入它得临界区22、_C__就是只能由P与v操作所改变得整型变量。
A共享变量 B.锁 C、整型信号量 D.记录型信号量23.对于整型信号量,在执行一次P操作时,信号量得值应_C__。
A.不变B.加1 C减1 D.减指定数值24.在执行v操作时,当信号量得值__D_时,应释放一个等待该信号量得进程。
A>0 B、<0 c、>=0 D、<=025、Pv操作必须在屏蔽中断下执行,这种不可变中断得过程称为_B__。
A初始化程序 B.原语 c.子程序D控制模块26.进程间得互斥与同步分别表示了各进程间得__A__。
A.竞争与协作B.相互独立与相互制约 c.不同状态 D.动态性与并发性27、并发进程在访问共享资源时得基本关系为_B__。
A.相互独立与有交往得B.互斥与同步C并行执行与资源共享D信息传递与信息缓冲28.在进程通信中,_B__常用信件交换信息。
A.低级通信B.高级通信C.消息通信D.管道通信29.在间接通信时,用send(N,M)原语发送信件,其中N表示_C__。
A.发送信件得进程名B.接收信件得进程名C、信箱名 D.信件内容30.实现进程互斥时,用_C__对应,对同一个信号量调用Pv操作实现互斥。
A.一个信号量与一个临界区B.一个信号量与—个相关临界区C.一个信号量与一组相关临界区 D、一个信号量与一个消息31.实现进程同步时,每一个消息与一个信号量对应,进程__D_可把不同得消息发送出去。
A.在同一信号量上调用P操作B在不同信号量上调用P操作C.在同一信号量上调用v操作 D.在不同信号量上调用v操作32、临界区就是指__D_。
A、并发进程中用于实现进程互斥得程序段B.并发进程中用于实现进程同步得程序段C.并发进程中用户实现进程通信得程序段D.并发进程中与共享变量有关得程序段33.相关临界区就是指__D_。
A、一个独占资源 B.并发进程中与共享变量有关得程序段C.一个共享资源D.并发进程中涉及相同变量得那些程序段34、P、V操作就是__A__。
A.两条低级进程通信原语B.两组不同得机器指令C.两条系统调用命令D.两条高级进程通信原语35.对进程得管理与控制使用_B__。
A.指令B.原语C.信号量D.信箱通信36.用P、V操作管理临界区时,信号量得初值应定义为_C__。
A.一1B.0C.1D.任意值37.用V操作唤醒一个等待进程时,被唤醒进程得状态变为_B__。
A.等待B.就绪C.运行D.完成38.进程间得同步就是指进程间在逻辑上得相互_B__关系。
A.联接B.制约C、继续 D.调用39.__D_就是一种只能进行P操作与V操作得特殊变量。
A.调度B.进程C.同步D.信号量40.用P、V操作可以解决__A__互斥问题。
A.一切B.某些C.正确D.错误41.对于两个并发进程,设互斥信号量为mutex,若mutex=0,则_B__。
A.表示没有进程进入临界区B.表示有一个进程进入临界区C.表示有一个进程进入临界区,另一个进程等待进入D.表示有两个进程进入临界区42.两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来消息,或者建立某个条件后再向前执行,这种制约性合作关系被称为进程得__A__。
A.同步B.互斥C.调度D.执行43.为了进行进程协调,进程之间应当具有一定得联系,这种联系通常采用进程间交换数据得方式进行,这种方式称为__D_。
A.进程互斥B.进程同步C.进程制约D.进程通信44、两个进程合作完成一项任务。
在并发执行中,一个进程要等待其合作伙伴发来消息,或建立某个条件后再运行,这种制约性合作关系被称为进__A__。
A、同步B、执行C、互斥D、调度45、为了进行进程协调,进程之间应当具有一定得联系,这种联系通常采用进程间交换数据得方式进行,这种方式通常称为_C__。
A、进程互斥B、进程同步C、进程通信D、进程制约46、不就是信号量能实现得功能就是__D_。
A、进程同步B、进程互斥C、执行得前趋关系D、进程得并发执行47、若P、V操作得信号量S初值为2,当前值为-1,则表示有_B__等待进程。
A、0个B、1个C、2个D、3个48.在进程通信中,常_C__通过变量、数组形式来实现。
A、高级通信B、消息通信C、低级通信D、管道通信49、管道通信就是以_B__ 进行写入与读出。
A、消息为单位B、自然字符流C、文件D、报文50、进程间得基本关系为_B__。
A、相互独立与相互制约B、同步与互斥C、行执行与资源共享D、信息传递与信息缓冲二.填空题(50空)1、进程得_顺序性_____就是指进程在顺序处理器上得执行就是按顺序进行得。
2.当一个进程独占处理器顺序执行时,具有__封闭性____与__可再现件____两个特性。
3.进程得封闭性就是指进程得执行结果只取决于__进程本身____,不受外界影响。
4、进程得可再现性就是指当进程再次重复执行时,必定获得___相同___得结果。
5.一个进程得工作在没有全部完成之前,另一个进程就可以开始工作,则称这些进程为__可同时执行得___、6.临界区就是指并发进程中与__共享变量____有关得程序段。
7.__相关临界区____就是指并发进程中涉及到相同变量得那些程序段。
8.只要涉及相同变量得若干进程得相关临界区__互斥执行____,就不会造成与时间有关得错误。
9.进程得___互斥 ___就是指当有若干进程都要使用某一共享资源时,任何时刻最多只允许一个进程去使用。
10.Pv操作就是在一个信号量上进行得__不可被中断____得过程,这种过程也称为__原语___。
11.利用P、v操作管理相关临界区时,必须成对出现,在进入临界区之前要调用__ P操作____,在完成临界区操作后要调用__ v操作____。
12、进程得___同步 ___就是指并发进程之间存在一种制约关系,一个进程得执行依赖另一个进程得消息。
13、__同步机制____能把它进程需要得消息发送出去,也能测试自己需要得消息就是否到达。
14.P、v操作不仅就是实现___进程互斥___得有效工具,而且也就是一种简单而方便得___同步___工具。
15.用P、v操作实现进程同步时,调用___ P操作___ 测试消息就是否到达,调用__ v操作____发送消息。
24.用P、v操作实现生产者消费者之间得同步时,在访问共享缓冲区得__前____与__后____分别调动P操作与v操作。
16.进程得互斥实际上就是进程__同步____得一种持殊情况。
17.进程得互斥就是进程间___竞争___共享资源得使用权,其结果没有__固定得必然关系____,而进程得同步则在共享资源得并发进程之间有一种__必然得____依赖关系。
18.Pv操作也可瞧作为进程间得一种通信方式,由于只交换了少量得信息,故称为__低级通信方式 ____19.通过专门得通信机制实现进程间交换大量信息得通信方式称为__进程通信____。
20.采用高级通信方式时,进程间用__信件____来交换信息。
21.最基本得通信原语有两条,它们就是__ send ____原语与___ receive ___原语。