操作系统典型例题分析(2)
球。
(3)果汁流水线生产中捣碎、消毒、灌装、装箱等各道工序。存在同步关系,因为后一道工序的开始依赖于前一道工序的完成。
(4)商品的入库和出库。存在同步关系,因为商品若没有入库就无法出库,若商品没有出库,装满了库房,也就无法再入库。
(5)工人做工与农民种粮。工人和农民之间没有相互制约关系。 2、说明P、V操作为什么要设计成原语?
用信号量S表示共享资源,其初值为1表示有一个资源。设有两个进程申请该资源,若其中一个进程先执行P操作。P操作中的减1操作由3条机器指令组成:取S送寄存器R;R-1送R;R送S。若P操作不用原语实现,在执行了前述三条指令中的2条,即还未执行R送S时(此时S的值仍为1),进程被剥夺CPU,另一个进程执行也要执行P操作,执行后S的值为0,导致信号量的值错误。正确的结果是两个进程执行完P操作后,信号量的值为-1,进程阻塞。
V操作也同样。所以要把信号量的P、V操作设计成原语,要求该操作中的所有指令要么都做,要么都不做。
3、设有一个售票大厅,可容纳200人购票。如果厅内不足200人,则允许进入,超过则在厅外等候;售票员某时只能给一个购票者服务,购票者买完票后就离开。试问:(1)购票者之间是同步关系还是互斥关系?(2)用P、V操作描述购票者的工作过程。
购票者之间是互斥关系。
P、V操作描述购票者的工作过程如下: semaphore empty=2000; semaphore mutex=1; void buyer() { P(empty); P(mutex); 购票; V(mutex); V(empty); }
售票大厅可容纳200人购票,说明最多允许200人共享售票大厅。引入一个信号量empty,初值为200;由于购票者必须互斥地购票,故再设置一个信号量mutex,初值为1。
4、分析生产者和消费者问题中多个P操作颠倒引起的后果。
答:如果将生产进程的两个P操作,即P(empty)和P(mutex)的位置互换,生产者和消费者问题描述如下:
semaphore mutex=1; semaphore empty=n; semaphore full=0; int i,j;
ITEM buffer[n], data_p, data_c;
void producer() /*生产者进程*/ { while(true)
{ produce an item in data_p; P(empty) P(empty)
buffer[i] = data_p;
i=(i+1)%n; V(nutex); V(full); }
}
void consumer() /*消费者进程*/ { while(true) { P(full) P(mutex)
data_c = buffer[j];
j=(j+1)%n; V(nutex); V(empty);
consume the item in data_c; }
}
按上面的描述,当生产者进程生产了n个产品而使缓冲区满时,生产者如若继续执行,可能顺利通过P(mutex)。但当执行P(empty)时,由于缓冲区已满,生产者将在信号量empty上等待。若之后消费者欲取产品,执行P(full)顺利通过,但当执行P(mutex)时,由于生产者获得了进入临界区的权力,消费者只能在mutex上等待。此时生产者在empty上等待,消费者在mutex上等待,从而导致生产者等待消费者取走产品,消费者等待生产者释放缓冲区,这种相互等待就造成系统死锁。
4 调度与死锁
1、某进程被唤醒后立即投入运行,能说明系统采用的是可剥夺调度算法吗?
不能。如果当前就绪队列为空,被样被唤醒的进程就是就绪队列中唯一的一个进程,于是调试程序自然选中它投入运行。
2、在哲学家进餐问题中,如果将先拿起左边筷子的哲学家称为左撇子,将先拿起右边筷子的哲学家称为右撇子。请说明在同时存在左、右撇子的情况下,任何的就座安排都不能产生死锁。
该题的关键是证明该情况不满足产生的四个必要条件之一。在死锁的四个必要条件中,本题对于互斥条件、请求与保持条件、不可剥夺条件肯定是成立的,因此必须证明环路条件不成立。
对于本题,如果存在环路条件必须是左、右的哲学家都拿起了左(或右)边的筷子,而等待右(或左)边的筷子,而这种情况只能出现在所有哲学家都是左(或右)撇子的情况下,但由于本题有右(或左)撇子存在,因此不可能出现循环等待链,所以不可能产生死锁。
3、系统中有5个资源被4个进程所共享,如果每个进程最多需要两个资源,试问系统是否会产生死锁? 由于资源数大于进程数,所以系统中总会有一个进程获得的资源数大于等于2,该进程已经满足了它的最大需求,当它运行完毕后会把它占有的资源归还给系统,此时其余3个进程也能满足最大需求而顺利运行完毕。因此系统不会产生死锁。
4、计算机系统中有8台磁带机,由N个进程竞争使用,每个进程最多需要3台。问当N为多少时,系统没有死锁的危险?
当N<4时,系统没有死锁的危险。因为当N为1时,它最多需要3台磁带机,系统中共有8台,其资源数已足够1个进程使用,因此绝对不会产生死锁;当N为2时,两个进程最多需要6台磁带机,系统中共有8台,其资源数也足够两个进程使用,因此也不会产生死锁;当N为3时,无论如何分配,3个进程中必有进程得到3台磁带机,该进程已经达到它的最大需求,当它运行完毕后可释放这3台磁带机,这就保证了其他两个进程也可顺利执行完毕。因此当N<4时,系统没有死锁的危险。
当N=4时,假设4个进程都得到两个资源,此时系统中已没有剩余资源,而4个进程都没有到达它们的最大需求,所以系统有可能产生死锁。同理,当N>4时,也有产生死锁的危险。
5、设系统中有5个进程P1、P2、P3、P4和P5,有三种类型的资源A、B和C,其中A资源的数量是17,B资源的数量是5,C资源的数量是20,T0时刻系统状态如下表。回答以下问题:(1)计算每个进程还可能需要的资源,并填入表的“仍需要资源数”栏目中。(2)T0时刻系统是否处于安全状态?为什么?(3)如果T0时刻进程P2又有新的资源请求(0,3,4),是否实施资源分配?为什么?(4)如果T0时刻进程P4又有新的资源请求(2,0,1),是否实施资源分配?为什么?(5)在第(4)题的基础上,若进程P1又有新的资源请求(0,2,0),是否实施资源分配?为什么? 进程 P1 P2 P3 P4 P5 已分配资源数量 A 2 4 4 2 3 B 1 0 0 0 1 C 2 2 5 4 4 最大资源需求量 A 5 5 4 4 4 B 5 3 0 2 2 C 9 6 11 5 4 仍然需求资源数 A B C
(1)5个进程P1、P2、P3、P4和P5仍然需要A、B和C,三类资源数量如下表: 进程 P1 P2 P3 P4 P5 已分配资源数量 A 2 4 4 2 3 B 1 0 0 0 1 C 2 2 5 4 4 最大资源需求量 A 5 5 4 4 4 B 5 3 0 2 2 C 9 6 11 5 4 仍然需求资源数 A 3 1 0 2 1 B 4 3 0 2 1 C 7 4 6 1 0 (2)由已知条件,系统中A、B和C,三类资源的总数是(17,5,20),从表中可以计算出已分配情况是(15,2,17),剩余可用资源的数量是(2,3,3),如果先让进程P5执行,可以满足它的最大需求。当进程P5运行完毕,又可释放它占有的资源,使系统中可用资源的数量增加为(5,4,7);此时可让P4执行,满足它的最大需求后又可释放它占有的资源,使系统中可用资源的数量增加为(7,4,11);然后让P3执行,满足它的最大需求后又可释放它占有的资源,使系统中可用资源的数量增加为(11,4,16);之后可让P2和P1执行。这样所有进程都可运行完毕,系统是在T0时刻存在安全序列{P5,P4,P3,P2,P1},所以系统是安全的。
(3)如果T0时刻进程P2又有新的资源请求(0,3,4),进程P2请求资源数(C资源只剩下3个, …… 此处隐藏:4499字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [法律文档]苏教版七年级语文下册第五单元教学设计
- [法律文档]向市委巡视组进点汇报材料
- [法律文档]绵阳市2018年高三物理上学期第二次月考
- [法律文档]浅析如何解决当代中国“新三座大山”的
- [法律文档]延安北过境线大桥工程防洪评价报告 -
- [法律文档]激活生成元素让数学课堂充满生机
- [法律文档]2014年春学期九年级5月教学质量检测语
- [法律文档]放射科标准及各项计1
- [法律文档]2012年广州化学中考试题和答案(原版)
- [法律文档]地球物理勘查规范
- [法律文档]《12系列建筑标准设计图集》目录
- [法律文档]2018年宁波市专技人员继续教育公需课-
- [法律文档]工会委员会工作职责
- [法律文档]2014新版外研社九年级英语上册课文(完
- [法律文档]《阅微草堂笔记》部分篇目赏析
- [法律文档]尔雅军事理论2018课后答案(南开版)
- [法律文档]储竣-13827 黑娃山沟大开挖穿越说明书
- [法律文档]《产品设计》教学大纲及课程简介
- [法律文档]电动吊篮专项施工方案 - 图文
- [法律文档]实木地板和复合地板的比较
- 探析如何提高电力系统中PLC的可靠性
- 用Excel函数快速实现体能测试成绩统计
- 教师招聘考试重点分析:班主任工作常识
- 高三历史选修一《历史上重大改革回眸》
- 2013年中山市部分职位(工种)人力资源视
- 2015年中国水溶性蛋白市场年度调研报告
- 原地踏步走与立定教学设计
- 何家弘法律英语课件_第十二课
- 海信冰箱经销商大会——齐俊强副总经理
- 犯罪心理学讲座
- 初中英语作文病句和错句修改范例
- 虚拟化群集部署计划及操作流程
- 焊接板式塔顶冷凝器设计
- 浅析语文教学中
- 结构力学——6位移法
- 天正建筑CAD制图技巧
- 中华人民共和国财政部令第57号——注册
- 赢在企业文化展厅设计的起跑线上
- 2013版物理一轮精品复习学案:实验6
- 直隶总督署简介




