操作系统第五章课后习题答案

第一题

1 ,旋转型设备上信息的优化分布能减少为若干个拍服务的总时间.设磁鼓上分为20 V 个区,每区存放一个记录,磁鼓旋转一周需20 毫秒,读出每个记录平均需用1 毫秒,读出后经2 毫秒处理,再继续处理下一个记录。在不知当前磁鼓位置的情况下:
( 1 )顺序存放记录1 、… … ,记录20 时,试计算读出并处理20 个记录的总时间;
( 2 )给出优先分布20 个记录的一种方案,使得所花的总处理时间减少,且计算出这个方案所花的总时间。
答:
(1)定位第1 个记录需10m s 。读出第1 个记录,处理花2ms ,这时已到了第4 个记录,再转过18 个记录(花18ms )才能找到记录2 ,所以,读出并处理20 个记录的总时间:10 + 3 + ( l+ 2 + 18 ) * 19 = 13 + 2 1 * 19 =412ms
(2)如果给出优先分布20 个记录的方案为:1 , 8 , 15 , 2 , 9 , 16 , 3 , 10 , 17 , 4 , 11 , 18 , 5 , 12 , 19 , 6 , 13 , 20 , 7 , 14 。当读出第1 个记录,花2ms 处理后,恰好就可以处理记录2 ,省去了寻找下一个记录的时间,读出并处理20 个记录的总时间:
10+3+3*19=13+57=70ms

第二题

2.现有如下请求队列:8 , 18 , 27 , 129 , 110 , 186 , 78 , 147 , 41 , 10 , 64 , 12 :试用查找时间最短优先算法计算处理所有请求移动的总柱面数。假设磁头当前位置下在磁道1000
答:处理次序为:100 -110 -129 -147 -186 -78 -64 -41 -27 -18 -12 -10 -8 。移动的总柱面数:264 。

第三题

3 上题中,分别按升序和降序移动,讨论电梯调度算法计算处理所有存取请求移动的总柱面数。
答:升序移动次序为:100 -110 -129 -147 -186 -78 -64 -41 -27 -18 -12 -10 -8 。移动的总柱面数:264 。降序移动次序为:100 -78 -64 -4l -27 -18 -12 -10 -8 -110 -129 -147 -186 。移动的总柱面数270

第四题

4.某文件为连接文件,由5 个逻辑记录组成,每个逻辑记录的大小与磁盘块大小相等,均为512 字节,并依次存放在50 、121 、75 、80 、63 号磁盘块上。现要读出文件的1569 字节,问访问哪一个磁盘块?
答:80 号磁盘块

第五题

5对磁盘存在下面五个请求:求!柱面号

请求序列柱面号磁头号扇区号
1728
2725
3712
43053
5366

答:最少调度次序 :5.3.2.1.和4

第六题

6.有一具有40 个磁道的盘面,编号为0-39 ,当磁头位于第11磁道时,顺序来到如下磁道请求:磁道号:1 、36 、16 、34 、9 、12 ;试用l )先来先服务算法FIFO 、2 ) 最短查找时间优先算法SST 、3 )扫描算法SCAN 等三种磁盘驱动调度算法,计算出它们各自要来回穿越多少磁道?
答:1 ) FIFO 为111 (2 ) SST 为61 (3 ) SCAN 为66(先扫地址大的请求),为47(先扫地址小的请求)。

第七题

7 假定磁盘有200 个柱面,编号O - 199 ,当前存取臂的位置在143 号柱面上,并刚刚完成了125 号柱面的服务请求,如果请求队列的先后顺序是:86 , 147 , 91 , 177 , 94 , 150 , 102 , 175 , 130 ;试问:为完成上述请求,下列算法存取臂移动的总量是多少?并算出存取臂移动的顺序。
( 1 )先来先服务算法FCFS;
( 2 )最短查找时间优先算法SSTF :
( 3 )扫描算法SCAN 。
( 4 )电梯调度。
答:( l )先来先服务算法FCFS 为565 ,依次为143 -86 -147 -91 -177 -94 -150 -102 -175 -130 。( 2 )最短查找时间优先算法SSTF 为162 ,依次为143 -147 -150 -130 -102 -94 -91 -86 -175 -177 。
( 3 )扫描算法SCAN 为169 ,依次为143 -147 -150 -175 -177 -199 -130 -102 -94 -91 -86 。
( 4 )电梯调度为125,依次为143 -147 -150 -175 -177 -130-102 -94 -91 -86 。

第八题

8 除FCFS 外,所有磁盘调度算法都不公平,如造成有些请求饥饿,试分析:( l )为什么不公平?( 2 )提出一种公平性调度算法。(3 )为什么公平性在分时系统中是一个很重要的指标?
答:(1)对位于当前柱面的新请求,只要-到达就可得到服务,但对其他柱面的服务则不
然。如SSTF算法,一个离当前柱面远的请求,可能其后不断有离当前柱面近的
请求到达而得不到服务(饥饿)。
(2)可划定-一个时间界限,把这段时间内尚未得到服务的请求强制移到队列首部,
并标记任何新请求不能插到这些请求前。对于SSTF算法来说,可以重新排列这
些老请求,以优先处理。
(3)可避免分时进程等待时间过长而拉长响应时间。

第九题

9 若磁头的当前位置为100 柱面,磁头正向磁道号减小方向移动。现有一磁盘读写请求队列,柱面号依次为:190 , 10 , 160 , 80 , 90 , 125 , 30 , 20 , 29 , 140 , 25 .若采用最短寻道时间优先和电梯调度算法,试计算出各种算法的移臂经过的柱面数?
答:采用SSTF 处理次序为:100-90-80-125-140-160-190-30-29-5-20-10 ,总柱面数为:310 。采用电梯调度处理次序为:100-90-80-30-29-25-20-10-125-140-160-190 ,总柱面数为:270 。

第十题

10 若磁头的当前位置为100 柱面,磁头正向磁道号增加方向移动。现有一磁盘读写请求队列,柱面号依次为:23 , 376 , 205 , 132 , 19 , 61 , 190 , 398 , 29 , 4 , 18 , 40 。若采用先来先服务、最短寻道时间优先和扫描算法,试计算出各种算法的移臂经过的柱面数?
答:采用先来先服务处理次序为:100 一23 一376 一205 一132 一19 一61 一190 一398 - 29 -4-18 -40 ,总柱面数为:1596
采用SSTF 处理次序为:100 一132 一190 一05 一61 -40 一9 一3 一19 一18 -4 一376 一398 ,总柱面数
处理次序为:100 -132 一190 一205 一376 一398 一140 一29 一23 一19 一18 -4,总柱面数692(错了吧,不是要到边界吗?明显这是电梯算法)

第十一题

11设有长度为L个字节的文件存到磁带上,若规定磁带物理块长为B 字节,试问
(1)存放该文件需多少块?
( 2 )若一次启动磁带机交换K 块,则存取这个文件需执行操作多少次?
答:( l )求I/B ,如整除则需”商”个块数,否则为”商+l ”个块数.
( 2 )把上述结果再除以K ,可求出存取这个文件需执行的拍操作次数。

第十二题

12某磁盘共有200 个柱面,每个柱面有20 个磁道,每个磁道有8 个扇区,每个扇区为1024B .如果驱动程序接到访求是读出606 块,计算该信息块的物理位置。:
答:每个柱面的物理块数为20 X8= 160 块。 606 / 160。得到商为3 ,余数为126 。故可知访求的物理位置在:第3 个柱面(0 柱面开始编号)的126 物理块中。

第十五题

15一个软盘有40 个柱面,查找移过每个柱面花6ms .若文件信息块零乱存放,则相邻逻辑块平均间隔13 个柱面.但优化存放,相邻逻辑块平均间隔为2 个柱面.如果搜索延迟为100ms ,传输速度为每块25ms ,现问在两种情况下传输100 块文件信息各需多长时间。
答:非优化存放,读一块数据需要时间为:13 6 十100 十25 = = 203ms 因而,传输100 块文件需:2O300ms 。优化存放,读一块数据需要时间为:26 十100 + 25 = = 137ms 因而,传输100 块文件需:13700ms 。

第十六题

16磁盘请求以10 、22 、20 、2 、40 、6 、38 柱面的次序到达磁盘驱动器,如果磁头当前位于柱面20 。若查找移过每个柱面要花6ms ,用以下算法计算出查找时间:1 ) F CFS , 2 ) 最短查找优先,3 )电梯调度(正向柱面大的方向).
答:
1)FCFS 查找时间次序为:20 、10 、22 、2 、40、6、38、、查找时间为867ms
2)最短查找优先查找次序为:20 、20 、22 ??10 、6 、2 、38 、40、查找时间为360ms
3 )电梯调度查找次序为:20 、20 、22 、38 、40 、10 、6 、2 ,查找时间为:348ms

第十七题

17今假定在某移动臂磁盘上,刚刚处理了75 号柱面的请求,目前正在80 号柱面读信息,并且有下请求序列等待访问磁盘:

请求次序 	      1 	 2 	  3 	  4 	 5 	 6 	 7 	  8 
欲访问的柱面号 	160 	40 	190 	188 	90 	58 	32 	102 

试用:( l )电梯调度算法( 2 )最短寻找时间优先算法分别列出实际处理上述请求的次序。
答:( l )电梯调度算法查找次序为:80 、90 、102 、160 、188 、190 、58 、40 、32 ,总柱面数为:268 .
( 2 )最短查找优先查找次序为:80 、90 、102 、58 、40 、32 、160 、188 、190总柱面数为:250 。

第二十六题

19 ?磁盘组共有n 个柱面,编号顺序为O 、1 、2 、…、n-1 ;共有m 个磁头,编号顺序为0 、1 、2 、…、m -1 :每个磁道内的k 个信息块从1 开始编号,依次为1 、2 、…、k 。现用x 表示逻辑磁盘块号,用a , b , c 分别表示任一逻辑磁盘块的柱面号、磁头号、磁道内块号,则x 与a 力,。可通过如下公式进行转换:
x = kma 十kb + c
a = = ( x -l ) DIV (K
M )
b = ( ( x -l ) MOD (Km ) ) DIVk
c = ( ( x -l ) MOD (K
m ) )MOD k + l
若某磁盘组为n = 200 , m =20 , k =10 ,问:
( 1 )柱面号为185 ,磁头号为12 ,道内块号为5 的磁盘块的逻辑磁盘块号为多少?( 2 )逻辑磁盘块号为1200 ,它所对应的柱面号、磁头号及磁道内块号为多少?( 3 )若每一磁道内的信息块从。开始编号,依次为。、1 、… 、k -1 ,其余均同题设,试写出x 与a 、b 、c 之间的转换公式.
答:( 1 )由上述公式可知,逻辑磁盘块号x 为:
x = kma+kb+c =1020185+120+5= 37125
所以,柱面号为185 ,磁头号为12 ,道内块号为5 的磁盘块的逻辑磁盘块号为:37125 。( 2 )由上述公式可知,
a=(X-1 ) DIV ( k m )=(1200-l ) DIV ( 1020=1199 DIV 200 = 5
b = ( ( x 一1 ) MOD ( k * m) ) DIV K=(( 1200 -1 ) MOD ( 10
20 ) ) DIV 10
= = ( 1199 MOD 200 ) DIV 10 = =199 DIV 10 = 10
c = ( ( x-l ) MOD ( k m ) ) MOD k + l = ( ( 1200 一1 ) MOD ( 10X20 ) ) MOD 10 + 1 = = ( 1 199 MOD 200 ) MOD 10 + 1 = 199 MOD 10 + l = 9 + l = = 10
所以,逻辑磁盘块号为1200 ,它所对应的柱面号是5 、磁头号是19 及磁道内块号为
( 3 )转换公式为:
x = k
ma 十kb + c + 1
A=(x-1)DIV(km)
b = ( ( x 一1 ) MOD (k
m ) ) DIV K?
c = ( ( x 一1 ) MOD ( k*m )MOD k

  • 21
    点赞
  • 91
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值