操作系统课外习题答案课案Word下载.docx
- 文档编号:13888866
- 上传时间:2022-10-14
- 格式:DOCX
- 页数:12
- 大小:73.99KB
操作系统课外习题答案课案Word下载.docx
《操作系统课外习题答案课案Word下载.docx》由会员分享,可在线阅读,更多相关《操作系统课外习题答案课案Word下载.docx(12页珍藏版)》请在冰豆网上搜索。
PB()(2分)
While
(1)
P(full1);
从缓冲区1中取出记录;
V(empty1);
P(empty2);
将记录存入缓冲区2;
V(full2);
PC()(2分)
P(full2);
从缓冲区2中取出记录;
V(empty2);
打印记录;
}
2.有一只最多能装2只兔子的铁笼子,猎人仅能向笼子中放入兔子(每次只能放入1只),若笼子是满的,则猎人必须等待;
饭店老板仅能从笼子中取兔子(每次只能取出1只),若笼子是空的则他也必须等待。
假设初始时笼子是空的。
定义信号量并初始化,使用P、V操作模拟猎人和饭店老板进程之间的同步与互斥。
mutex,empty,fullsemaphore;
1分
mutex=1,empty=2;
full=0;
2分
以下内容7分
cobegin
pcocedureHunter(x)
begin:
P(empty);
P(mutex);
//放兔子;
V(mutex);
V(full);
Gotobegin;
pcocedureBoss(x)
P(full);
V(empty);
3.桌上有一空盘,最多允许存放一只水果。
爸爸可向盘中放一个苹果或放一个桔子,儿子专等吃盘中的桔子,女儿专等吃苹果。
试用P、V操作实现爸爸、儿子、女儿三个并发进程的同步。
分析:
在本题中,爸爸、儿子和女儿共用一个盘子,盘子一次只能放一个水果。
当盘子为空时,爸爸可以试着将一个水果放入盘中,若放入盘子中的是橘子,则允许儿子吃,女儿必须等待;
若放入盘子中的是苹果,则允许女儿吃,儿子必须等待。
在本题中,应设置3个信号量dish、apple、orange,信号量dish表示盘子是否为空,其初值为1;
信号量apple表示盘中是否有苹果,其初值为0;
信号量orange表示盘中是否有橘子,其初值为0。
进程之间的同步描述如下:
Semaphoredish=1;
Semaphoreapple,orange=0;
Main()
cobegin
father();
son();
daughter();
coend
Father()
{while(true)
{
p(dish);
将一水果放入盘中;
If盘中放的是橘子v(orange)
Elseif盘中放的是苹果v(apple);
}
}
Son()daughter()
{{
while(true)while(true)
{{
p(orange);
p(apple);
从盘中取出橘子;
从盘中取出苹果;
v(dish);
吃橘子;
吃苹果;
}}
}}
4、一阅览室只能容纳150人,当少于150人时,可以进入,否则,需在外等候,若将每一个读者作为一个进程,请用P、V操作编程(类C、类pascal),并写出信号量的初值。
Semaphoreempty=150,full=0;
(每个信号量1分,共3分)
Semaphoremutex=1
ProcessIn:
{
While(true)
{
P(empty);
(P操作顺序写对2分,其余部分2分,共4分)
P(mutex);
第i个人进入阅览室;
V(mutex);
V(full)
ProcessOut:
P(full);
(P操作顺序写对2分,其余部分1分,共3分)
第i个人离开阅览室;
V(empty)
5、如图所示的交通管理例子(各方向上的汽车是单行、直线行使),试用PV操作实现各方向上汽车行驶的同步。
解:
路口A和路口B可以被看成为临界资源,分别为其设定互斥信号量crossA和crossB,它们的初值设定为1。
因为中间一段马路可以停靠n辆车子,所以设置资源信号量length,初值设定为n。
A路口方向向下的车子:
(2分)
P(crossA);
通过路口A;
V(crossA);
B路口方向向下的车子:
P(crossB);
通过路口B;
V(crossB);
方向向右的车子:
(6分)
P(length);
通过路口A;
在马路中行进;
通过路口B;
V(length);
第三章
1.
作业名进入时间运行时间(分)需内存量KB磁带机打印机
A8:
00251511
B8:
20103001
C8:
20206010
D8:
30202010
E8:
35151011
有用户空间100KB,磁带机2台,打印机1台,并规定作业相应程序装入内存连续区域,并不能被移动,作业与进程均采用FCFS算法
问题如下:
1、作业调度选中各作业的次序是什么?
2、最大的作业周转时间是多少?
3、平均周转时间是多少?
解答:
(1)作业调度选中作业的次序是:
A,C,D,B,E
(2)作业A的周转时间是:
8:
25-8:
00=25分钟
作业B的周转时间是:
9:
15-8:
20=55分钟
作业C的周转时间是:
45-8:
20=25分钟
作业D的周转时间是:
05-8:
30=35分钟
作业E的周转时间是:
30-8:
35=55分钟
因此最大的作业周转时间是:
55分钟
(3)平均的周转时间是:
T=(25+55+25+35+55)/5=39分钟
2、在单CPU和两台输入输出设备(I1,I2)的多道程序设计环境下,同时投入3个作业Job1、Job2、Job3运行。
这3个作业对CPU和输入输出设备的使用顺序和时间如下所示:
Job1:
I2(30ms);
CPU(10ms);
I1(30ms);
I2(20ms)
Job2:
I1(20ms);
CPU(20ms);
I2(40ms);
Job3:
CPU(30ms);
I1(20ms);
I1(10ms)
假定CPU、I1、I2都能并行工作,Job1优先级最高,Job2次之,Job3优先级最低,优先级高的作业可以抢占优先级低的作业的CPU但不抢占I1和I2。
试求:
(1)3个作业从投入到完成分别需要的时间。
(2)从投入到完成的CPU利用率。
(3)输入输出设备利用率。
时间0
102030405060708090100110
CPU
Job3
Job2
Job1
等待
IO1
Job2
等待
Job1
Job3
IO2
J0b2
I2
I1
CPU
(1)由图可以看出,Job1从投入到运行完成需要110ms,Job2从投入到运行完成需要90ms,Job3从投入到运行完成需要110ms。
(2)CPU在时段60ms至70ms、80ms至90ms,100ms至110ms期间空闲,所以CPU利用率为:
(110-30)/110=72.7%
(3)外设I1在时段20ms至40ms,90ms至100ms期间空闲,所以外设I1利用率为:
外设I2在时段30ms至50ms期间空闲,所以外设I2利用率为:
(110-20)/110=81.8%
3、系统中有三种资源(A,B,C)和5个进程P1~P5,资源总数为(17,5,20),T0时刻系统状态如表所示,系统采用银行家算法实施死锁避免策略
请解答以下问题:
(1)T0时刻是否为安全状态?
若是则给出安全序列
(2)在T0时刻P2请求资源(0,3,4),是否能够实施资源分配,为什么?
(3)在
(2)的基础上,若P4请求资源(2,0,1),是否能够实施分配,为什么?
(4)在(3)的基础上,若P1请求资源(0,2,0),是否能够实施分配,为什么
最大资源需求量
已分配资源量
A
B
C
P1
5
9
2
1
P2
3
6
4
P3
11
P4
P5
第四章
1.某操作系统采用可变分区分配存储管理方法,用户区为512K且始址为0,用空闲分区表管理空闲分区。
若分配时采用分配空闲区低地址部分的方案,且初始时用户区的512K空间空闲,对下述申请序列:
Req(300K),req(100K),release(300K),req(150K),req(30K),req(40K),req(60K),release(30K)
回答下列问题:
(1)采用首次适应算法,空闲分区中有哪些空闲块(给出图示,并给出始址、大小)?
(2)采用最佳适应算法,空闲分区中有哪些空闲块(给出图示,并给出始址、大小)?
(1)首次适应算法(5分)(用阴影表示空闲)
(图2分)
150K
150K作业
180K
220K
40K作业
280K
60K作业
300K
400K
100K作业
512K-1
(指出空闲分区大小和始址,每个1分)
分区
大小
起始地址
30K
20K
112K
(2)
最佳适应算法(5分)(用阴影表示空闲)
(图2分)
210K
430
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 课外 习题 答案