文档详情

操作系统习题及解答三.doc

发布:2017-03-09约字共10页下载文档
文本预览下载声明
习题三 同步、通信与死锁 一、单项选择题 1、在单一处理机上,将执行时间有重叠的几个程序称为( )。 A.顺序程序 B. 多道程序 C.并发程序 D. 并行程序 2、进程间的基本关系为( )。 A.相互独立与相互制约 B. 同步与互斥 C.并行执行与资源共享 D. 信息传递与信息缓冲 3、两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程间的( )关系。 A.同步 B. 互斥 C.竞争 D. 合作 4、在一段时间内,只允许一个进程访问的资源称为( )。 A. 共享资源 B. 临界区 C. 临界资源 D. 共享区 5、在操作系统中,对信号量S的P原语操作定义中,使进程进入相应阻塞队列等待的条件是( )。 A. S0 B. S=0 C. S0 D. S?0 6、信号量S的初值为8,在S上执行了10次P操作,6次V操作后,S的值为( )。 A.10 B.8 C.6 D.4 7、临界区是指( )。A. 并发进程中用于实现进程互斥的程序段B.并发进程中用于实现进程同步的程序段 C.并发进程中用户实现进程通信的程序段 D.并发进程中与共享变量有关的程序段下列对线程的描述中,(? ?)是错误的。A.不同的线程可执行相同的程序 B.线程是资源分配单位? .线程是调度和执行单位 D.同一进程中的线程可共享该进程的主存空间PV操作也可看作为进程间的一种通信方式,由于只交换了少量的信息,故称为在多线程操作系统中,线程与进程的根本区别在于进程作为单位,而线程是单位。临界区是指并发进程中与有关的程序段___ ___的使用情况有关,它的值仅能由来改变。在操作系统中,P操作和V操作各自的动作是如何定义的?为什么并发进程执行时可能会产生与时间有关的错误?如何避免?A 进程 B 进程 C 进程 D … … … … [1]; [3]; [5]; [7]; read F; read F; read F; read F; [2]; [4]; [6]; [8]; … … … … 2、设有一台计算机,有两条I/O通道,分别接一台卡片输入机和一台打印机。卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后再搬到缓冲区B2中,并在打印机上打印,问:  ①系统要设几个进程来完成这个任务?各自的工作是什么?  ②这些进程间有什么样的相互制约关系?  ③用P、V操作写出这些进程的同步算法。 3、生产者-消费者问题表述如下:一组生产者进程和一组消费者进程通过缓冲区发生联系。生产者进程将生产的产品送入缓冲区,消费者进程则从中取出产品。假定环形缓冲池中共有N个缓冲区,编号为0~N-1。 为了描述生产者进程和消费者进程,设指针in和out分别指向生产者进程和消费者进程当前所用的缓冲区(buffer),初值均为0。 (1)应设置三个信号量实现两类进程的同步,分别是full、empty和mutex。请说出它们的含义及初值。 (2)下面是生产者进程的算法描述,请填写相应的P、V操作语句。 while (TRUE){ ; ; 产品送往buffer(in); in=(in+1)mod N; /*mod为取模运算*/ ; ;(3)指出生产者进程算法中的临界区是哪一段程序? 试问:(1)该状态是否安全? (2)
显示全部
相似文档