当前位置:
文档之家› 02323操作系统概论-综合题集
02323操作系统概论-综合题集
(3)进程的程序结构如下,请在方框位置填上适当的 P、 v操作。
(4)上述程序中变量 k的作用是什么?写出它的初值。
答:
(1)一个互斥信号量S;初值为1; S用于两个入口对文件W的互斥使用;
(2)能保留n量车的信息;
(3)①P(S) ②V(S) ③P(S) ④ V(S)
(4)K的作用用于把进入的车辆登记在文件W 的哪一个登记项中。初值为0.
综合题型:
36.系统中有三个进程INPUT、PROCESS和OUTPUT,共用两个缓冲区BUF1和BUF2。 假设BUF1中最多可放10个数据,现已放入了 2个数据;BUF2最多可放5个数据。 INPUT进程负责不断地将输入的原始数据送入BUF1中,PROCESS进程负责从 BUF1中取出原始数据进行处理,并将处理后的结果数据送到BUF2中,OUTPUT 进程负责从BUF2中读取结果数据并输出。请采用记录型信号量机制,实现进程 INPUT、PROCESS和OUTPUT的同步算法。补充完成下列带标号处空缺的内容。 (注:空缺处可能有多行代码)
要求:⑴请简述地址转换的转换过程;
⑵根据上面的已知条件计算逻辑地址320、2345、5374分别对应的物理地址。
答:
(1)在基于分页系统中进行地址转换时,地址变换机构将自动把逻辑地址转化为页号和业内偏移量。如果页号超过页表长度,将产生越界中断;否则以页号为索引去检索页表,从中得到对应的页框号,并把页框号和页内偏移量送入物理地址寄存器中,形成物理地址。
37. 有5个进程A、B、C、D、E,他们的到达时间分别为0、10、20、30、35ms,预 计他们的运行时间分别为100、60、20、40、80ms。其优先数分别为3、1、4、5、2 (优先级数值越小,表示优先级越高)。要求:
(1)分别给出采用短进程优先调度算法、非抢占式优先权调度算法时,进程的启动 顺序;
注:每一空可能不止一行代码。
答:
(1)
Cap.value=500;
Officer.value=5;
(2)
Wait(cap);
Wait(officer);
Register();
Signal(officer);
visit();
leavபைடு நூலகம்();
signal(cap);
36. 设有无穷多个整数缓冲区(即为无界缓冲池),A进程从输入设备逐个地读入整数并写入缓冲区,B进程则逐个地从缓冲区取出整数进行打印。其中存放整数的变量为item,缓冲区名为buffer,读取过程使用函数getAItem(int* itm)来完成,而打印整数使用函数printAItem(int itm)来完成。请用记录型信号量机制实现上述两个进程的同步算法。要求:补充完整下列算法程序中带标号处空缺的内容。(注:每个空缺部分的代码可能是多行代码)。
2)请计算采用抢占式优先权调度算法的平均周转时间和平均带权周转时间。
(注:精确到小数点后2位)
答:
(1)短进程优先调度算法(5 分,其中列表 1 分)
平均周转时间=(56+7+21+57)/4=35.25 (2 分)
平均带权周转时间=(56/34+7/7+21/15+57/4)/4=4.57(2 分)
9:45时,作业A等待时间为75分钟,响应比为:75/130; 作业C的等待时间为25分钟,响应比为:25/70;作业A的响应比最高,选中作业A执行。130分钟后,作业A结束。
11:55时,作业C的等待时间为155分钟,响应比为:155/70。
所以作业A被选中的时间是9:45,选中时的响应比为75/130;
(2)抢占式优先调度算法(5 分,其中列表 1 分)
平均周转时间=(34+44+58+35)/4=42.75 (2 分)
平均带权周转时间=(34/34+44/7+58/15+35/4)/4=4.98(2 分)
37. 设系统中有三种类型的资源A、B、C,资源数量分别为15、7、18,系统有五个进程P1、P2、P3、P4、P5,其最大资源需求量分别为(5, 4, 9)、(4, 3, 5)、(3,0, 5)、(5, 2, 5)、(4, 2, 4)。在T0时刻,系统为各进程已经分配的资源数量分别为(2, 1, 2)、(3, 0, 2)、(3, 0, 4)、(2, 0, 4)、(3, 1, 4)。若系统采用银行家算法实施死锁避免策略,则请回答:
答:
进程
最大资源需求量
(A,B,C)
已分配资源数量
(A,B,C)
需要资源数量
(A,B,C)
可用资源数
(A,B,C)
P1
5, 4, 9
2, 1, 2
3,3,7
2 5 2
P2
4, 3, 5
3, 0, 2
1,3,3
P3
3,0, 5
3, 0, 4
0,0,1
P4
5, 2, 5
2, 0, 4
3,2,1
P5
4, 2, 4
作业
运行时间(分钟)
优先级
相对开始时间
完成时间
周转时间
A
10
3
0
10
0
B
6
5
10
16
16
C
2
2
16
18
18
D
4
1
18
22
22
E
8
4
22
30
30
平均周转时间
(16+18+22+30)/5=19.2分钟
(2)优先级调度算法采用优先级调度算法,执行次序为:B,E,A,C,D.(题未看清)
作业
运行时间(分钟)
答:
(1)
In=0;
Out=0;
Full.value=0;
(2)
While(TRUE){
getAItem(itm);
buffer[in++]=item;
signal(full);
}
(3)
While(TRUE){
Wait(full);
Item=buff[out++];
printAItem( itm);
答:
(1)
Empty1.value=8;
Full1.value=2;
Empty2.value=5;
Full2.value=0;
(2)
While(TRUE){
Wait(empty1);
将信息送入BUF1;
Signal(full1);
}
(3)
While(TRUE){
Wait(full1)
从BUF1中取出信息;
}
36、某小区有两个出口和两个入口。该小区设计的安保系统能对要进入小区的车辆进行识别,且登记在有 n个登记项的文件 W中。若该安保系统采用 PV操作来管理,把每辆车进出小区一次的过程作为一个进程。为保证系统信息的正确,要求:
(1)定义 PV操作的信号量,写出信号量的含义和初值。
(2)该系统能实时保留多少辆车的信息?
答:
(1)
(2)作业A的周转时间是:115分钟;
作业B的周转时间是:50分钟;
作业C的周转时间是:10分钟。
平均周转时间是:(115+50+10)/3=58.3分钟
37、某单道系统中有 A, B, C三个作业在输入井等待处理,它们进入输入井的时间和需计算的时间如下:
假定系统从 9: 30开始按响应比高者优先算法调度作业。请计算每个作业被选中的时间及选中时的响应比。
D:160-30=130 D:300-30=260
E:300-35=265 E:240-35=205
平均周转时间:805/5=161平均周转时间:965/5=193
37.有4个进程A、B、C、D,它们的到达时间、预计运行时间以及优先级数值(优先级数值越小,表示优先级越髙)如题37表所示。
1)请计算采用短进程优先调度算法的平均周转时间和平均带权周转时间。
答:
作业A被选中的时间是9:45,选中时的响应比为75/130;
作业B被选中的时间是9:30,选中时的响应比为:40/15;
作业C被选中的时间是11:55,选中时的响应比为:155/70.;
【解析】9:30时,作业A等待时间为60分钟,响应比为:60/130; 作业B的等待时间为40分钟,响应比为:40/15;作业C的等待时间为10分钟,响应比为:10/70;此时,作业B的响应比最高,按照响应比高者优先算法,选中作业B执行,15分钟后,作业B结束。
3, 1, 4
1,1,0
(2)是,安全序列为P3P2P4P5P1,(安全序列不唯一,P3或P5需要先执行,P1位于最后,例如P5P2P3P4P1)
(3)不能,因为可用资源不够。
(4)能分配,存在安全序列为P3P2P4P5P1。
37、
答:
37、在一个单道程序设计系统中,有 5个作业 A、 B、 C、 D、 E,它们几乎同时到达,预计它们的运行时间分别为 10、 6、 2、 4、 8分钟。其优先级分别为 3、 5、 2、1、 4,这里 5为最高优先级。试对于下列每一种调度算法,计算 5个作业的平均周转时间。
36、有两个进程P1、P2、其中P1负责将文件记录从磁盘读入主存的缓冲区,P1每执行一次读一个记录;P2负责将缓冲区的内容打印出来,P2每执行一次打印一个记录。缓冲区的大小与一个记录的大小相等。使用记录型信号量机制wait(s)和signal(s)操作来实现文件的正确打印,请写出同步代码。
答:
为缓冲区设置互斥信号量mutex,设置资源信号量empty和full。设3个信号量的初始值分别为1,1,0.
优先级
相对开始时间