五、应用题
1.画出有挂起操作的操作系统中进程状态转换图,标出引起进程状态变化的主要原因。
2.有一个可以存放消息的缓冲池BUF,由指针IN和OUT分别指示当前可存取消息的缓冲区位置。每存入一消息,执行IN:=(IN+1 )mod 128,每取出一消息,执行OUT:=(OUT+1 )mod 128,现在有多个进程并 发共享该缓冲池BUF,试用信号量机制协调诸进程正确地工作。
3.某集装箱仓库共有100个仓位,用同一辆吊车负责集装箱的吊进和吊出。现有一批集装箱运来进仓,另有货主不断前来提货(按仓位顺序进出),设进仓用过程PUTIN表示,出仓用过程GETOUT表示,请用 P、V操作协调上述工作。
4.有一独木桥,每次只允许一人过桥,现在桥的南北两端随时有人要过桥(PASS),为保证安全,请用P、V操作解决如下问题:
(1)只要桥上无人则允许任一方的一人过桥,桥上有人则等待。
(2)两边的人交替过桥。即某一方一人过桥后要让另一方的一个人过桥,桥上有人则等待。
5.假设有一个成品仓库,总共能存放100台成品,生产者进程生产成品放入仓库,消费者进程从仓库中取出成品消费,为了防止积压,仓库满时就停止生产。由于仓库搬运设备只有一套,故成品的进出只能分别 进行。使用P、V操作来实现该方案。
6.设进程A每次产生一个记录依次存入缓存,进程B依次从缓存取出一个记录加以处理;又设缓存由N个缓存块(每块存放一个记录)组成,对缓存的两个操作(add_to_buffer,take_from_buffer)属临界区,请 用信号量控制上述并发进程。
7.桌上有一空盘,允许存放一只水果。妈妈可以向盘中放苹果,也可以向盘中放桔子,儿子专等吃盘中的苹果,女儿专等吃盘中的桔子。规定当盘空时只能放一只水果供孩子取用,请用P、V原语实现母子三人 的同步。
8.有三个进程PA、PB、PC合作解决文件打印问题:PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录;PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录;PC将缓冲区2的内容打 印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录的大小。请用P、V操作协调三个进程的工作。

9.请写出一个不会死锁的哲学家进餐问题的算法。
10.某计算机系统有A、B、C三种资源,其中A共有10台,B共有12台,C共有7台,T0时刻,系统中有P1、P2、P3、P4、P5五个进程,各进程的资源分配和请求情况如下:
Allocation Need Available
A B C A B C A B C
P1 5 1 1 2 3 2 2 10 4
P2 2 0 1 3 2 3
P3 1 0 0 2 3 3
P4 0 1 0 6 3 1
P5 0 0 1 4 1 2
(1)T0时刻系统安全吗?
A
B C (10,12,7) p1 2 10 4 2 3 2 5 1 1 7 11 5 ture p2 7 11 5 3 2 3 2 0 1 9 11 6 ture p3 9 11 6 2 3 3 1 0 0 10 11 6 ture p4 10 11 6 6 3 1 0 1 0 10 12 6 ture p5 10 12 6 4 1 2 0 0 1 10 12 7 tureT0时刻系统安全;
(2)设T0时刻P4发出请求(2,3,1),能否实施分配?
request4(2,3,1)<=need4(6,3,1)
request4(2,3,1)<=available(2,10,4)
假定为p4分配资源:
Allocation Need Available
A B C A B C A B C
P1 5 1 1 2 3 2 0 7 3
P2 2 0 1 3 2 3
P3 1 0 0 2 3 3
P4 2 4 1 4 0 0
P5 0 0 1 4 1 2
安全性检查不通过;
不能实施分配
(3)设T0时刻P3发出请求(2,3,1),能否实施分配?
request3(2,3,1)<=need3(2,3,3)
request3(2,3,1)<=available(2,10,4)
假定为p3分配资源:
Allocation Need Available
A B C A B C A B C
P1 5 1 1 2 3 2 0 7 3
P2 2 0 1 3 2 3

P3 3 3 1 0 0 2
P4 0 1 0 6 3 1
P5 0 0 1 4 1 2
A
B C (10,12,7) p1 3 10 4 2 3 2 5 1 1 8 11 5 ture p2 8 11 5 3 2 3 2 0 1 10 11 6 ture p3 0 7 3 0 0 2 3 3 1 3 10 4 ture p4 10 11 6 6 3 1 0 1 0 10 12 6 ture p5 10 12 6 4 1 2 0 0 1 10 12 7 ture安全性检查通过;
能实施分配
11. 设系统中有A、B、C三种资源和P1、P2、P3、P4、P5五个进程,A资源的数量为17,B资源的数量为5,C资源的数量为20。(剩余资源数为2,3,3)T0 时刻系统状态如下:
最大需求
已分配资源数量
A
B
C
A
B
C
P1
5
5
9
2
1
2
P2
5
3
6
4
0
2
P3
4
0
11
4
0
5
P4
4
2
5
2
0
4
P5
4
2

4
3
1
4
a) T0时刻系统是否安全?若是,请给出一个安全序列。
A
B C (17,5,20) p1 7 4 11 3 4 7 2 1 2 9 5 13 ture 3 p2 9 5 13 1 3 4 4 0 2 13 5 15 ture 4 p3 13 5 15 0 0 6 4 0 5 17 5 20 ture 5 p4 2 3 3 2 2 1 2 0 4 4 3 7 ture 1 p5 4 3 7 1 1 0 3 1 4 7 4 11 ture 2安全序列:<p4,p5,p1,p2,p3>
b) T0时刻P2请求资源(0,3,4),是否可以实施资源分配?为什么?
request2(0,3,4)<=need2(1,3,4)
request2(c=4)>available(c=3)
不可以实施资源分配,剩余的C资源不够;
c) T0时刻P4请求资源(2,0,1),是否可以实施资源分配?为什么?
request4(2,0,1)<=need4(2,2,1)
request4(2,0,1)<=available(17,5,20)
假定为p4分配资源:
A
B C (17,5,20) p1 7 4 11 3 4 7 2 1 2 9 5 13 ture p2 9 5 13 1 3 4 4 0 2 13 5 15 ture p3 13 5 15 0 0 6 4 0 5 17 5 20 ture p4 0 3 2 0 2 0 4 0 5 4 3 7 ture p5 4 3 7 1 1 0 3 1 4 7 4 11 ture安全性检查通过;
能实施分配
12.单道批处理系统中,一批作业的到达和要求运行时间如下:
作业
到达时间(时)
所需运行时间(小时)
1
8.0
0.5
2
8.2
0.4
3
8.2
0.2
4
8.4
0.3
5
8.5
0.2
(1)采用SJF算法进行调度
(2)采用HRF算法进行调度
分别指出调度顺序,计算平均周转时间T和平均带权周转时间W。(同等条件下,按FCFS原则调度)
(1)调度顺序:1→3→1→5→4→2
T=(0.7+1.4+0.5+0.8+0.4)/5=0.6
W=(0.7⁄0.5+1.4⁄0.4+0.5⁄0.2+0.8⁄0.3+0.4⁄0.2)/5=2.413
(2)调度顺序:1→3→2→5→4
T=(0.5+0.9+0.5+1.2+0.8)/5=0.78
W=(0.5⁄0.5+0.9⁄0.4+0.5⁄0.2+1.2⁄0.3+0.8⁄0.2)/5=2.75

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/177956.html