操作系统磁盘管理类问题

例题:在磁盘上存储数据的排列方式会影响1/0服务的总时间。假设每个磁道被划分成10个物理块,每个物理块存放1个逻辑记录。逻辑记录R1,R2....R10存放在同一个磁道上,记录的排列顺序如下表所示:

假定磁盘的旋转速度为10ms/周,磁头当前处在R1的开始处。若系统顺序处理这些记录,使用单缓冲区,每个记录处理时间为2ms,则处理这10个记录的最长时间为()。若对存储数据的排列顺序进行优化,处理10个记录的最少时间为()。

问题一

A.30ms

B.60ms

C.94ms

D.102ms

问题二

A.30ms

B.60ms

C.102ms

D.94ms

整个磁盘如下图所示,整个磁盘的旋转速度为10ms/周,共10个磁盘,可知每个磁盘的读取时间为1ms,对于每个磁盘而言,有读取时间1ms处理时间2ms

接下来具体的看分析:

读取R1

对于磁盘R1而言,磁头首先位于R1的开始处(即R10的末尾位置那条线),读取R1花费1ms时间,磁头到了R1的末尾处,又需要花费2ms处理它,所以可以得知经过3ms时候,磁头已经旋转到了R4的开始处(即R3的末尾处)

读取R2:

接下来需要读取R2并处理R2,这个时候需要将磁头旋转到R2的开始处位置,那么需要顺时针移动(R4-R1,共计8个磁盘花费8ms)才到R2的开始处,接下来,读取R2(1ms)并处理R2(2ms)同样需要花费3ms时间。这时候读取R2花的时间是1ms+2ms+8ms=11ms

读取R3:

磁盘也到了R5的开始也需要旋转同样的8个磁盘,依次类推。除第一个磁盘R1不需要移动磁头位置,其余9个磁盘都需要移动8个磁盘,即总时间为R1的时间(1+2)ms后面9个磁盘的时间9*(8+1+2),共计102ms,所以第一空选择D选项。

1+2+9*11=102ms.

改善后的磁盘,避免了磁头的移动,即每个磁盘读取和处理共计3ms,总共10个磁盘,需要花费3*10=30ms(如下图所示),所以第二空选择A选项。

  • 19
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gabriel Drop Out

饿饿!饭饭!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值