操作系统习题及答案三文档格式.docx
- 文档编号:17130680
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:13
- 大小:40.04KB
操作系统习题及答案三文档格式.docx
《操作系统习题及答案三文档格式.docx》由会员分享,可在线阅读,更多相关《操作系统习题及答案三文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
、下列对线程的描述中,(
)是错误的。
.不同的线程可执行相同的程序.线程是资源的分配单位
.线程是调度和执行单位.同一进程中的线程可共享该进程的主存空间
、,操作是()
.两条低级进程通信原语.两组不同的机器指令
.两条系统调用命令.两条高级进程通信原语
、若,操作的信号量初值为,当前值为,则表示有()等待进程。
.个.个.个.个
、()是一种只能进行操作和操作的特殊变量.
.调度.进程.同步.信号量
、下面的叙述中正确的是()。
.操作系统的一个重要概念是进程,因此不同进程所执行的代码也一定不同
.为了避免发生进程死锁,各进程只能逐个申请资源
.操作系统用管理进程,用户进程可以从中读出与本身运行状况有关
的信息
.进程同步是指某些进程之间在逻辑上的相互制约关系
、对于两个并发进程,设互斥信号量为,若,则().
.表示没有进程进入临界区
.表示有一个进程进入临界区
.表示有一个进程进入临界区,另一个进程等待进入
.表示有两个进程进入临界区
、发生死锁的必要条件有四个,要防止死锁的发生,可以破坏这四个必要条件,但破
坏()条件是不太实际的。
.互斥.不可抢占
.部分分配.循环等待
、资源的按序分配策略可以破坏()条件。
.互斥使用资源.占有且等待资源
.非抢夺资源.循环等待资源
、在()的情况下,系统出现死锁。
.计算机系统发生了重大故障
.有多个封锁的进程同时存在
.若干进程因竞争资源而无休止地相互等待他方释放己占有的资源
.资源数大大小于进程数或进程同时申请的资源数大大超过资源总数
、银行家算法是一种()算法。
.死锁解除.死锁避免
.死锁预防.死锁检测
、某系统中有个并发进程,都需要同类资源个,试问该系统不会发生死锁的最
少资源数是()。
....
、信箱通信是一种()通信方式。
.直接通信.间接通信
.低级通信.信号量
、并发进程失去了封闭性是指()。
.多个相对独立的进程以各自的速度向前推进
.并发进程的执行结果与速度无关
.并发进程执行时,在不同时刻发生的错误
.并发进程共享变量,其执行结果与速度有关
二、填空题
、若一个进程已进入临界区,其他欲进入临界区的进程必须。
、用,操作管理临界区时,任何一个进程在进入临界区之前应调用操作,退出临界区时应调用操作。
、用信箱实现通信时,应有和两条基本原语。
、有个进程共享同一临界资源,若使用信号量机制实现对临界资源的互斥访问,则信号量值的变化范围是。
、死锁产生的必要条件有四个,即、、、。
、银行家算法中,当一个进程提出的资源请求将导致系统从进入时,系统就拒绝它的资源请求。
、操作也可看作为进程间的一种通信方式,由于只交换了少量的信息,故称为。
、在多线程操作系统中,线程与进程的根本区别在于进程作为单位,而线程
是单位。
、临界区是指并发进程中与有关的程序段
、操作系统中信号量的值与的使用情况有关,它的值仅能由来改变。
三、简答题
、什么是进程的互斥与同步?
、一个进程进入临界区的调度原则是什么?
、在操作系统中,操作和操作各自的动作是如何定义的?
、为什么并发进程执行时可能会产生与时间有关的错误?
如何避免?
、为什么说采用有序资源分配法不会产生死锁?
四、应用题
、四个进程、、、都要读一个共享文件,系统允许多个进程同时读文件。
但限制是进程和进程不能同时读文件,进程和进程也不能同时读文件。
为了使这四个进程并发执行时能按系统要求使用文件,现用操作进行管理,请回答下面的问题:
()如何定义信号量及初值;
()在下列的程序中填上适当的、操作,以保证它们能正确并发工作:
进程进程进程进程
…………
[];
;
、设有一台计算机,有两条通道,分别接一台卡片输入机和一台打印机。
卡片机把一叠卡片逐一输入到缓冲区中,加工处理后再搬到缓冲区中,并在打印机上打印,问:
①系统要设几个进程来完成这个任务?
各自的工作是什么?
②这些进程间有什么样的相互制约关系?
③用、操作写出这些进程的同步算法。
、生产者消费者问题表述如下:
一组生产者进程和一组消费者进程通过缓冲区发生联系。
生产者进程将生产的产品送入缓冲区,消费者进程则从中取出产品。
假定环形缓冲池中共有个缓冲区,编号为。
为了描述生产者进程和消费者进程,设指针和分别指向生产者进程和消费者进程当前所用的缓冲区(),初值均为。
()应设置三个信号量实现两类进程的同步,分别是、和。
请说出它们的含义及初值。
()下面是生产者进程的算法描述,请填写相应的、操作语句。
(){
;
产品送往();
();
*为取模运算*
()指出生产者进程算法中的临界区是哪一段程序?
、在银行家算法中,若出现下述资源分配情况:
试问:
()该状态是否安全?
()如果进程提出请求(,,,)后,系统能否将资源分配给
它?
、桌上有一空盘,允许存放一只水果。
爸爸可向盘中放苹果,也可向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。
规定当盘空时一次只能放一只水果供吃者
取用,请用,原语实现爸爸、儿子、女儿三个并发进程的同步。
、哲学家甲请哲学家乙、丙、丁到某处讨论问题,约定全体到齐后开始讨论:
在讨论的间隙四位哲学家进餐,每人进餐时都需使用刀、叉各一把,餐桌上的布置如图所示。
请用信号量及、操作说明这四位哲学家的同步、互斥过程。
答案三同步、通信与死锁
、、、、、、、、、、
、、、、、、、、、、
、等待
、、
、发送、接收
、至-()
、互斥条件、不剥夺条件、部分分配、环路条件
、安全状态、不安全状态
、低级通信
、资源分配、调度和执行单位
、共享变量
、资源、操作
三、简答题
.进程的互斥是指在逻辑上本来完全独立的若干进程,由于竞争同一个资源而产生的相互制约关系。
进程的同步是进程间共同完成一项任务时直接发生相互作用的关系,也就是说,这些具有伙伴关系的进程在执行时间次序上必须遵循确定的规律。
.一进程进入临界区的调度原则是:
①如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。
②任何时候,处于临界区内的进程不可多于一个。
如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。
③进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区。
④如果进程不能进入自己的临界区,则应让出,避免进程出现“忙等”现象。
.操作顺序执行下述两个动作:
①信号量的值减,即;
②如果≥,则该进程继续执行;
如果<,则把该进程的状态置为阻塞态,把相应的连入该信号量队列的末尾,并放弃处理机,进行等待(直至其它进程在上执行操作,把它释放出来为止)。
操作顺序执行下述两个动作:
①值加,即;
②如果>,则该进程继续运行;
如果≤,则释放信号量队列上的第一个(即信号量指针项所指向的)所对应的进程(把阻塞态改为就绪态),执行操作的进程继续运行。
.有交往的并发进程可能会同时使用共享资源,如果对这种情况不加控制,由于进程占用处理器的时间、执行的速度和外界的影响等,就会引起与时间有关的错误。
只要使若干并发进程的相关临界区互斥执行,就可避免造成这类错误。
.为了便于说明,不妨设系统中有类资源,个进程,分别用,,…,
(,,…,可看作资源编号)和,,…表示。
根据有序资源分配法可知,进程申请资源时必须按照资源编号的升序进行,即任何进程在占有了类资源后,再申请的资源的编号一定大于。
因此在任一时刻,系统中至少存在一个进程,它占有了较高编号的资源,且它继续请求的资源必然是空闲的,因而可以一直向前推进直至完成,当运行完成后即会释放它占有的所有资源;
在完成之后,剩下的进程集合中同样会存在一个进程,它占有了较高编号的资源,且它继续请求的资源必然是空闲的,因而它可以一直向前推进直至完成;
以此类推,所有进程均可运行完成,故不会发生死锁。
.解:
()定义二个信号量、,初值均为,即:
,(共分)
()从[]到[]分别为:
(),(),(),(),(),(),(),()
、解:
①系统可设三个进程来完成这个任务:
进程负责从卡片输入机上读入卡片信息,输入到缓冲区中;
进程负责从缓冲区中取出信息,进行加工处理,之后将结果送到缓冲区中;
进程负责从缓冲区中取出信息,并在打印机上印出。
②进程受进程影响,放满信息后进程要等待——等进程将其中信息全部取走,才能继续读入信息;
进程受进程和进程的约束:
中信息放满后进程才可从中取出它们,且被取空后进程才可将加工结果送入其中;
进程受进程的约束:
中信息放满后进程才可从中取出它们,进行打印。
③信号量含义及初值:
——缓冲区满,初值为;
——缓冲区空,初值为;
进程进程进程
.答:
()表示放有产品的缓冲区数,初值为;
表示可供使用的缓冲区数,初值为;
为互斥信号量,初值为,表示互斥进入临界区。
()()()()()
()生产者进程算法中的临界区是如下程序段:
产品送往();
();
()利用银行家算法对此时刻的资源分配情况进行分析,可得此时刻的安全性分
析情况:
从上述分析中可以看出,此时存在一个安全序列{,,,,},故该状态是
安全的。
()提出请求(,,,),按银行家算法进行检查:
.(,,,)≤(,,,)
.试分配并修改相应数据结构,资源分配情况如下:
.再利用安全性算法检查系统是否安全,可用资源()已不能
满足任何进程的需要,故系统进入不安全状态,此时系统不能将资源分配给。
在本题中,应设置三个信号量,,,信号量表示盘子是否为空,其初值
为;
信号量表示盘中是否有桔子,其初值为;
信号量表示盘中是否有苹果,其初
值为。
同步描述如下:
;
()
();
();
}
()
{
()
{
将水果放入盘中:
(放入的是桔子)();
():
}
从盘中取出桔子;
吃桔子;
从盘中取出苹果;
吃苹果;
在本题中,应设置四个信号量、、、,其初值均为,分别
表示资源叉、叉、刀、刀是否可用。
();
*分别用进程、、、代表哲学家甲、乙、丙、丁的活动*
进餐;
讨论问题:
()·
讨论问题;
()
}‘
进餐:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 习题 答案