操作系统进程通信练习及答案

  • 格式:doc
  • 大小:47.00 KB
  • 文档页数:7

进程同步与通信练习题(一)单项选择题1.临界区是指(D)。

A.并发进程中用于实现进程互斥的程序段 B.并发进程中用于实现进程同步的程序段 C.并发进程中用户实现进程通信的程序段 D.并发进程中与共享变量有关的程序段2.相关临界区是指(D )。

A.一个独占资源 B.并发进程中与共享变量有关的程序段 c.一个共享资源 D.并发进程中涉及相同变量的那些程序段3.管理若干进程共享某一资源的相关临界区应满足三个要求,其中(A)不考虑。

A一个进程可以抢占己分配给另一进程的资源 B.任何进程不应该无限地逗留在它的临界区中 c.一次最多让一个进程在临界区执行 D.不能强迫一个进程无限地等待进入它的临界区4、(C)是只能由P和v操作所改变的整型变量。

A共享变量 B.锁 c整型信号量 D.记录型信号量5.对于整型信号量,在执行一次P操作时,信号量的值应(C)。

A.不变 B.加1 C减1 D.减指定数值6.在执行v操作时,当信号量的值(D )时,应释放一个等待该信号量的进程。

A>0 B.<0 c.>=0 D.<=0 这道题目问的是:使用v操作之前的情况。

即,若S信号量的值大于0则释放一个等待该信号量的进程,所以S的值小于等于0的时候才需要通过V操作实现释放一个等待该信号量的进程7.Pv操作必须在屏蔽中断下执行,这种不可变中断的过程称为(B)。

A初始化程序 B.原语c.子程序 D控制模块8.进程间的互斥与同步分别表示了各进程间的(A)。

A.竞争(互斥时竞争资源)与协作(同步时共同完成一个任务) B.相互独立与相互制约 c.不同状态 D.动态性与并发性9并发进程在访问共享资源时的基本关系为(B)。

A.相互独立与有交往的 B.互斥与同步 c 并行执行与资源共享 D信息传递与信息缓冲10.在进程通信中,(B)常用信件(信件在信箱中,信箱属于高级通信)交换信息。

A.低级通信 B.高级通信 c.消息通信 D.管道通信11.在间接通信时,用send(N,M)原语发送信件,其中N表示(C)。

A.发送信件的进程名 B.接收信件的进程名 C信箱名 D.信件内容本题注意:发送端只需确定目标信箱和消息内容,目标信箱即信箱名,消息内容即消息本身,选项中只出现了信箱名。

send(mailbox,message):将一个消息发送到指定信箱,其中message指出消息,mailbox是信箱。

12.下列对线程的描述中,(B)是错误的。

A不同的线程可执行相同的程序 B.线程是资源分配单位 c.线程是调度和执行单位 D.同一进程中的线程可共享该进程的主存空间13.实现进程互斥时,用(C)对应,对同一个信号量调用Pv操作实现互斥。

A.一个信号量与一个临界区 B.一个信号量与—个相关临界区 c.一个信号量与一组相关临界区 D一个信号量与一个消息14.实现进程同步时,每一个消息与一个信号量对应,进程(D )可把不同的消息发送出去。

A.在同一信号量上调用P操作 B在不同信号量上调用P操作 c.在同一信号量上调用v操作 D.在不同信号量上调用v操作(二)填空题(注意:题目中考点有重复的,看的时候把同样的题归类,只保证会做就行)1.目前使用的计算机的基本特点是处理器______执行指令。

2进程的______是指进程在顺序处理器上的执行是按顺序进行的。

3.当一个进程独占处理器顺序执行时,具有______和______两个特性。

4.进程的封闭性是指进程的执行结果只取决于______,不受外界影响。

5进程的可再现性是指当进程再次重复执行时,必定获得______的结果。

6.一个进程的工作在没有全部完成之前,另一个进程就可以开始工作,则称这些进程为______. 7若系统中存在一组可同时执行的进程,则就说该组进程具有______。

8.如果—个进程的执行不影响其他进程的执行,且与其他进程的进展情况无关,则说这些并发进程相互之间是______的。

9如果一个进程的执行依赖其他进程的进展情况,则说这些并发进程相互之间是______ 10.有交往的并发进程一定______某些资源。

11.有交往的进程执行时可能产生与时间有关的错误,造成不正确的因素与进程______、______和外界的影响有关。

12.对______的使用不受限制,这是使有交往的并发进程执行时出现与时间有关的错误的根本原因。

13.临界区是指并发进程中与______有关的程序段。

14.______是指并发进程中涉及到相同变量的那些程序段。

15.只要涉及相同变量的若干进程的相关临界区______,就不会造成与时间有关的错误。

16.进程的______是指当有若干进程都要使用某一共享资源时,任何时刻最多只允许一个进程去使用。

17.Pv操作是在一个信号量上进行的______的过程,这种过程也称为______ 18.利用Pv操作管理相关临界区时,必须成对出现,在进入临界区之前要调用______,在完成临界区操作后要调用______。

l9.若信号量的初值为1,用Pv操作能限制一次______进程进入临界区操作。

20进程的______是指并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消息。

21 ______能把它进程需要的消息发送出去,也能测试自己需要的消息是否到达。

22.Pv操作不仅是实现______的有效工具,而且也是一种简单而方便的______工具。

23.用Pv操作实现进程同步时,调用______测试消息是否到达,调用______发送消息。

24.用Pv操作实现生产者消费者之间的同步时,在访问共享缓冲区的______和______分别调动P操作和v操作。

25.进程的互斥实际上是进程______的一种持殊情况。

26.进程的互斥是进程间______共享资源的使用权,其结果没有______,而进程的同步则在共享资源的并发进程之间有一种______依赖关系。

27.Pv操作也可看作为进程间的一种通信方式,由于只交换了少量的信息,故称为______ 28.通过专门的通信机制实现进程间交换大量信息的通信方式称为______。

29.采用高级通信方式时,进程间用______来交换信息。

30.最基本的通信原语有两条,它们是______原语和______原语。

31.进程通信方式有两种:______和______。

32.直接通信是固定在______进程之间通信,而间接通信以信箱为媒体实现通信。

33.一个信息可以由______和______两部分组成。

34.进程间通过信件交换信息,可实现______。

35______是进程中可以独立执行的子任务。

36.线程是处理器的独立______单位,多个线程可以______执行。

37.线程与进程有许多相似之处,所以线程又称为______。

38.线程在生命周期内会经历______、______和______之间各种状态变化。

39.采用多线程技术可把生产者消费者两个进程作为一个进程和进程中的两个线程来处理,这两个线程仍具有______,但不在需要额外的______。

40.在使Pv操作实现进程互斥时,调用______相当于申请一个共享资源,调用______相当于归还共享资源的使用权。

41.在多线程操作系统中,线程与进程的根本区别在于进程作为______单位,而线程是______单位。

填空题答案1.顺序 2.顺序性 3封闭性,可再现件 4.进程本身 5.相同 6.可同时执行的 7并发性 8.无关 9.有交往的 10.共享 11.占用处理器的时间,执行的速度 12.共享资源 13共享变量14.相关临界区 15互斥执行 16.互斥 17.不可被中断,原语 18.P操作,v操作 19.只有一个 20.同步 21.同步机制 22.进程互斥,同步 23.P操作,v操作 24.前,后 25.同步 26.竞争,固定的必然关系,必然的 27.低级通信方式 28.进程通信 29.信件 30.send,receive 31.直接通信,间接通信 32.一对 33.信箱说明,信箱体 34.进程同步 35.线程 36.调度,并发 37.轻型进程 38.等待态,就绪态,运行态 39并发性,公共缓冲区 40.P 操作,v操作 41.资源分配,调度和执行(二)简答题1.什么是进程的顺序性和并发性? 2为什么并发进程执行时可能会产生与时间有关的错误?如何避免? 3.简述临界区的相关临界区的概念。

4.管理相关临界区有些什么要求? 5.假设PV操作用信号量s管理某个共享资源,请问当s>0,S=0和S<0时,它们的物理意义是什么? 6.请给出Pv操作的定义。

7.用Pv操作实现进程间同步与互斥应注意些什么? 8.何谓进程通信?最基本的通信原语有哪些? 9直接通信与间接通信有何区别? 10.线程与进程的根本区别是什么?简答题答案:1.进程的顺序性是指进程在顺序的处理器上严格地按顺序执行。

若系统中存在一组可同时执行的过程,则该组程序具有并发性。

可同时执行的进程是指这些进程执行时在时间上是重叠的,即一个进程的工作没有全部完成之前,另一个进程就可以开始工作。

2.有交往的并发进程可能会同时使用共享资源,如果对这种情况不加控制,由于进程占用处理器的时间、执行的速度和外界的影响等,就会引起与时间有关的错误。

只要使若干并发进程的相关临界区互斥执行,就可避免造成这类错误。

3.临界区是指并发进程中与共享变量有关的程序段。

相关临界区是指并发进程中涉及到相同变量的那些程序段。

4.管理相关临界区有三点要求:(1)一次最多让一个进程在临界区执行;(2)任何一个进入临界区执行的进程必须在有限的时间内退出临界区;(3)不能强迫一个进程无限地等待进入它的临界区。

5.信号量S的物理意义如下: s>0时,S表示可使用的资源数或表示可使用资源的进程数。

s=0时,表示无资源可供使用和表示不允许进程再进入临界区。

s<0时,│S│表示等待使用资源的进程个数或表示等待进入临界区的进程个数。

6.Pv操作是指在信号量上进行的P操作和v操作。

假定信号量为s,则P(s)和v(s)的定义如下:Procedure p(Var s:semaphore);begin s:=s-1; if s<0 then w(s) end;Procedure v(Var s:semaphore);begin s:=s+1; if s<=0 then r (s) end;其中,W(s)表示将调用P(s)过程的进程置成“等待信号量s”的状态,且将其排入等待队列。

R(s)表示释放一个“等待信号量s”的进程,该进程从等待队列退出并加入就绪队列中.7.(1)对每一个共享资源(含变量)都要设立信号量,互斥时对一个共享资源设一个信号量,同步时对一个共享资源可能要设两个或多个信号量,视由几个进程来使用该共享变量而定。