操作系统计算题
计算题:
一、 生产消费者问题
为解决生产者消费者问题,应该设两个同步信号量,一个说明空缓冲区得数目,用S1 表示,初值为有界缓冲区得大小N,另一个说明已用缓冲区得数目,用S2表示,初值 为0。
由于在此问题中有M 个生产者与N 个消费者,它们在执行生产活动与消费活动中要对有界缓冲区进行操作。由于有界缓冲区就是一个临界资源,必须互斥使用,所以,另外还需要设置一个互斥信号量m utex,其初值为1。
二、 地址
转
换
例1:若在一分页存储管理系统中,
某作
业得页表如下所示。已知页面大小为1024字节,试将逻辑地址
1011,2148,3000,4000,5012转化为相应得物理地址。
页号 块号
0 2
1 3
2 1
3 6
解:本题中,为了描述方便,设页号为P,页内位移为W,逻辑地址为A,页面大小为L,则:
p=i nt(A /L)
w=A mo d L
对于逻辑地址1011
p=int(1011/1024)=0
w=1011 m od 1024=1011
查页表第0页在第二块,所以物理地址为3059。
对于逻辑地址2148
p =int(2148/1024)=2
w=2148 mod 1024=100
查页表第2页在第1块,所以物理地址为1124。
对于逻辑地址3000
p=int(3000/1024)=2
w =3000 mod 1024=928
查页表第2页在第1块, 所以物理地址为1796。
对于逻辑地址4000
p=int(4000/1024)=3
w=4000mod 1024=928
查页表第3页在第6块, 所以物理地址为7072。
对于逻辑地址5012
p=int(5012/1024)=4
w=5012mod1024=916
因页号超过页表长度,该逻辑地址非法。
例2:
在一分页存储管理系统中,逻辑地址长度为16位,页面大小为4096字节,现有一逻辑地址为2F6AH,且第0,1, 2页依次存放在物理块5,10 ,11中,问相应得物理地址为多少?
解:由题目所给给条件可知,本页式系统得逻辑地址结构为:
逻辑地址2F6AH得二进制表示如下:
由此可知逻辑地址2F6AH得页号为2,该页存放在第11号物理块中,用十六进制表示志号为B,所以物理地址为BF6AH、
三、求文件最大长度
例:设文件索引节点中有7个地址项,其中4个地
址项为直接地址索引,2个地址项就是一级间接地址索
引,1个地址项就是二级间接地址索引,每个地址项大
小为4字节,若磁盘索引块与盘块大小均为256字
节,则可表示得单个文件得最大长度就是多少?
解答:本题得文件结构属混合索引分配方式。每个地址项大小为4字节,索引块与盘块大小为256字节,每个索引块中得项目数=256B/4B=64个。4个地址项为直接地址索引,对应得文件大小为4×256B=1KB。2个地址项就是一级间接地址索引,对应得文件大小就是2×64×256B=32KB,一个地址项就是二级间接地址索引,对应得文件大小为1×64×64×256B=1024KB。所以单个文件得最大长度=1KB+32KB+1024KB=1057KB。
四、磁盘调度算法:
1.先来先服务FCFS
2.最短寻道时间优先SSTF
3.SCAN算法
4.循环扫描(CSCAN)算法
例:假设一个活动头磁盘有200道, 编号从0-199、当前磁头正在143道上服务, 并且刚刚完成了125道得请求、现有如下访盘请求序列(磁道号):
86, 147,91, 177, 94, 150,102, 175,130
试给出采用下列算法后磁头移动得顺序与移动总量(总磁道数)、
(1)、先来先服务(FCFS)磁盘调度算法、
(2)、最短寻道时间优先(SSTF)磁盘调度算法、
(3)、扫描法(SCAN)磁盘调度算法、(假设沿磁头移动方向不再有访问请求时,磁头沿相反方向移动、)
答案:三、(1)86,147,91,177,94,150,102,175,130
(2)当前磁头在143道上:
147,150,130,102,94,91,86,175,177
(3)当前磁头在143道上,并且刚刚完成125道得请求
147,150,175,177,130,102,94,91,86
五、调度算法(求周转时间,加权周转时间)
1.先来先服务调度算法FCFS:该算法按照进程进入就绪队列得先后顺序选择最先进
入该队列得进程,把处理机分配给它,使之投入运行。
例
2.优先级调度算法:总就是选择具有最高优先级得进程首先使用处理机。在这种算法
中,首先考虑得问题就是如何确定进程得优先数。分为:
?静态优先权:在创建进程得时候便确定得,且在进程得运行期间保持不变。(简单?易行,系统开销小,但不够精确,很可能出现优先权低得作业(进程)长期不被调度得情况。所以,只在要求不太高得系统中,才使用静态优先数(权))
?动态优先权:在创建进程时所赋予得优先权,可以随进程得推进而改变,以便获得
更好得调度性能
例:
3、最短作业/进程优先法(SJF/SPF):SJF:从后备队列中选择估计运行时间最短得作业,先调入内存运行。
SPF:从就绪队列中选择估计运行时间最短得进程,先将处理机分配给它,使它立即执行。
4、最高响应比作业优先算法(HRN):就是对FCFS方式与SJF方式得一种综合平衡响应比。R=(作业等待时间+需运行时间)/ 需运行时间
=1+已等待时间/ 需运行时间
=1+W/T
例:
六:页面置换算法
先进先出页面淘汰算法(FIFO)
选择在内存中驻留时间最长得页并淘汰之
理想淘汰算法—最佳页面算法(OPT)
淘汰以后不再需要得或最远得将来才会用到得页面
最近最久未使用页面淘汰算法(LRU)
选择最后一次访问时间距离当前时间最长得一页并淘汰之
即淘汰没有使用得时间最长得页
1.已知页面走向为1、2、1、3、1、2、4、2、1、3、4,且开始执行时主存中没有页面。
若只给该作业分配2个物理块,当采用FIFO页面淘汰算法时缺页率为多少?假定现有一种淘汰算法,该算法淘汰页面得策略为当需要淘汰页面时,就把刚使用过得页面作为淘汰对象,试问就相同得页面走向,缺页率又为多少?
[分析及相关知识] 在进行内存访问时,若所访问得页已在主存,则称此次访问成功;若所访问得页不在主存,则称此次访问失败,并产生缺页中断。若程序P在运行过程中访问页面得总次数为S,其中产生缺页中断得访问次数为F,则其缺页率为:F/s、
解:根据所给页面走向,采用FIFO淘汰算法得页面置换情况如下:
页面走向 1 2 1 3 1 242 1 34
物理块 1 11 3 3 2 2 11 4
物理块 2 2 2 1 1 44 3 3
缺页缺缺缺缺缺缺缺缺缺
从上述页面置换图可以瞧出:页面引用次数为11次,缺页次数为9次,所以缺页率为9/11。
若采用后一种页面淘汰策略,其页面置换情况如下:
页面走向 1 2 1 3124
2 1
3 4
物理块 1 1 1 3 1 1 1 3 4
物理块 2 2 224 2 2 2
缺页缺缺缺缺缺缺
缺缺
在一个请求分页存储管理系统中,一个作业得页面走向为4,3,2,1,4,3,5,4,3,2,1,5,当分配给该作业得物理块数分别为3,4时,试计算采用下述页面淘汰算法时得缺页率(假设开始执行时主存中没有页面),并比较所得结果。
(1)最佳置换淘汰算法
(2)先进先出淘汰算法
(3)最近最久未使用淘汰算法
解:(1)根据所给页面走向,使用最佳页面淘汰算法时,页面置换情况如下:
走向 4 3 2 1 4 3 5 4 3 2 1 5
块1 4 4 444 2 2
块2333 3 3 1
块3 2 1 5 5 5
缺页缺缺缺缺缺缺缺
缺页率为:7/12
走向 4 321435 4 3 2 1 5
块1 44 4 4 4 1
块233 3 3 3
块3 2 2 22
块4 1 5 5
缺页缺缺缺缺缺缺缺
缺页率为:6/12
由上述结果可以瞧出,增加分配给作业得内存块数可以降低缺页率
(2)根据所给页面走向,使用最佳页面淘汰算法时,页面置换情况如下:
走向4 3 2 1 4 3 5 43215
块1 4 44 1 1 15 5 5
块23 3 3 44 4 3 2
块3 2 2 2 3 3 2 1
缺页缺缺缺缺缺缺缺
缺页率为:9/12
走向43 2 1 4 3 5 4 3 2 1 5
块1 4 4 4 4 555 5 1 1
块2 3 3 3 344 4 4 5
块3 2 222 3 3 3 3
块4 1 1 1 1 2 2 2
缺页缺缺缺缺缺缺缺
缺页率为:10/12
由上述结果可以瞧出,对先进先出算法而言,增加分配给作业得内存块数反而使缺页率上升,这种异常现象称为Belady现象。
(3)根据所给页面走向,使用最佳页面淘汰算法时,页面置换情况如下:
走向4 3 2 1 4 3 5 4 3 2 1 5
块14 4 4 1 1 1 5 22 2
块2 32444 4 1 1
块3 2 3 2 3 33 3 5
缺页缺缺缺缺缺缺缺
由上述结果可以瞧出,增加分配给作业得内存块数可以降低缺页率、