操作系统教程第5版部分习题答案(3)

2019-08-31 15:45

check(IM); seatcount--;

for i=1 to 100 do i++

if name[i]==readername then name[i]:=null; release(IM); end

begin

seatcount:=100;name:=null; end

cobegin

process readeri(i=1,2.…) begin

readercome(readername); read the book;

readerleave(readername); leave the readroom; end coend.

6、答:实质上是两个进程的同步问题,设信号量S1和S2分别表示可拣白子和黑子,不失一般性,若令先拣白子。

var S1,S2:semaphore;

S1:=1;S2:=0; cobegin {

process P1 begin repeat P(S1);

拣白子 V(S2); until false; end

process P2 begin repeat P(S2);

拣黑子 V(S1); until false;

end }

11

coend.

16、答:(1)用信号量和P、V操作。 var S,S1,S2,S3;semaphore; S:=1;S1:=S2:=S3:=0;

flag1,flag2,flag3:Boolean; flag1:=flag2:=flag3:=true; cobegin {

process 供应者

begin

repeat P(S);

取两样香烟原料放桌上,由flagi标记; /*flage1、flage2、flage3代表烟草、纸、火柴 if flag2&flag3 then V(S1); /*供纸和火柴 else if flag1&flag3 then V(S2); /*供烟草和火柴 else V(S3); /*供烟草和纸 untile false; end

process 吸烟者1

begin

repeat P(S1); 取原料; 做香烟; V(S); 吸香烟; untile false; process 吸烟者2

begin

repeat P(S2);

取原料; 做香烟; V(S); 吸香烟; untile false; process 吸烟者3

begin

repeat P(S3); 取原料; 做香烟; V(S);

12

吸香烟; untile false; }

coend.

23、

答:(1) P1,P2,P3,P4的Cki-Aki分别为:(2,2,2)、(1,0,2)、(1,0,3)、(4,2,0)

(1) 系统处于安全状态,存在安全序:P2,P1,P3,P4 (2) 可以分配,存在安全序列:P2,P1,P3,P4。 (3) 不可以分配。

24、

答:(1)系统处于安全状态,存在安全序列:P0,P3,P4,P1,P2。 (2)不能分配,否则系统会处于不安全状态。

25、

答:(1)此时可以找出进程安全序列:P4,P1,P5,P2,P3。故系统处于安全状态。

(2)可以分配,存在安全序列:P4,P1,P5,P2,P3。 (3)不可分配,系统进入不安全状态。 31、答:

semaphore wait,mutex1,mutex2; mutex1=mutex2=1;wait=1; int counter1,counter2; count1=count2=0; Cobegin {

Process p1 {

P(mutex1); counter1++;

if (counter1==1) then P(wait); V(mutex1); 过独木桥; P(mutex1); counter1--;

if (counter1==0) then V(wait); V(mutex1);

13

}

Process p2 {

P(mutex2); Counter2++;

if (counter2==1) then P(wait); V(mutex2); 过独木桥; P(mutex2); counter2--;

if (counter2==0) then V(wait); V(mutex2); } } coend

50、答:

答:semaphore mutex1,mutex2; semaphore empty,full,count;

mutex1=mutex2=1;count=3;empty=10;full=0; cobegin

process youngmonki(i=1,2…) process oldmonki(i=1,2…) { { While(true){ while(true){

P(empty);

P(count); P(mutex1); 从井中取水; V(mutex1); P(mutex2); 倒入水缸; V(mutex2); V(count); V(full); } } coend

P(full); P(count); P(mutex2); 从缸中取水; V(mutex2); V(count); V(empty); } }

14

第四章: 一、

1、试述存储管理的基本功能。 答:

(1) 存储分配; (2) 地址映射; (3) 存储保护; (4) 存储共享; (5) 存储扩充。

4、何谓地址转换(重定位)?哪些方法可以实现地址转换? 答:

逻辑地址转换为物理地址的过程称为地址转换(重定位)。

(1) 静态地址重定位; (2) 动态地址重定位;

(3) 运行时链接地址重定位。

18、试述实现虚拟存储器的基本原理。有哪几种实现方法? 答:

虚拟存储器是指在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理内存容量大得多的、可寻址的“内存储器”。是一种具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。

虚拟存储器的实现方式有两种:请求分页系统和请求分段系统。请求分页系统允许只装入少数页面的程序(及数据),便启动运行,以后,再通过调页功能及页面置换功能,陆续地把即将要运行的页面调入内存,同时把暂不运行的页面换出到外存上;请求分段系统允许只装入少数段(而非所有的段)的用户程序和数据,即可启动运行。以后再通过调段功能和段的置换功能将暂不运行的段调出,同时调入即将运行的段。 二、 1、答:

(1)当有3个物理页面时:

使用FIFO算法:缺页16次,缺页中断率16/20=80%; 使用OPT算法:缺页11次,缺页率11/20=55%。 使用LRU算法:缺页12次,缺页率12/20=60%。 (2)当使用4个物理页面时:

(2)当使用5个物理页面时:

(2)当使用6个物理页面时:

15


操作系统教程第5版部分习题答案(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:环境工程CAD及其答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: