如果磁盘的旋转周期为33ms,磁头当前处在R0的开始处。若系统使用单缓冲区顺序处理这些记录,每个记录处理时间为3ms,则处理这11个记录最长时间为? 磁盘工作原理

在这里插入图片描述
所谓磁盘就是我们传统所说的硬盘,但是如今的硬盘分成两种,一种是机械硬盘,一种是固态硬盘,固态硬盘的读写速度比机械硬盘快很多,价格也贵非常多,在这个文章中我先讲述一下传统的磁盘的存储结构。
传统的磁盘存储结构就像光盘一样,是一个圈,所有的内存块都在这个圈里面,假设某磁盘的每个磁道划分成11个物理块,每块存放一个逻辑记录/逻辑记录R0,R1,…,R9,R10存放在同一个磁道上。

如果磁盘的旋转周期为33ms,磁头当前处在R0的开始处。若系统使用单缓冲区顺序处理这些记录,每个记录处理时间为3ms,则处理这11个记录最长时间为?

答:这个时间是 存取时间 = 寻道时间 + 等待时间(平均定位时间+转动延迟)
寻道时间是指磁头移动到磁道的时间 等待时间为等待读写的扇区转到磁头下方所用的时间
因为旋转周期为33ms 意思也就是转过11个内存块需要33ms,所以每一个内存块为3ms,假设内存块是顺序存放,也就是一个11个内存平分一个圆形,所以磁盘从一个内存块转到另一个内存块花费3ms,但是当内存块还有我们想要的内容时需要将对应的内存中的内容转到我们的缓冲区,并需要新的3ms处理对应内存块的内容,这个时候磁盘依旧在寻道,就转到了R3而不是R2,只能经过一圈再转回R2,这个时候处理完一个内存块并指向下一个内存块开头所耗费的时间其实是33ms + 3ms=36ms 当第十一个处理完所耗费的时间其实是36 * 10 =360 ms 第十一个处理完所需的时间就是6ms 所以一共需要366ms,

若对存储进行优化则处理十一个记录最少需要多少时间,这个其实也好理解,每次处理完一共内存块的时候,马上执行下一个就好了,不需要频繁的绕圈寻址,所以我们只需把平常的从R0 - R11顺序 的分配转成 R0 空 R2 空 R4以此类推的形式,把剩余的内存块再假如空里面,这样执行完一个内存块直接直行下一个的就好了不需要再转一圈,所以所消耗的时间就是,执行成功一个内存块所需 6ms * 11 = 66ms

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

举世无双勇

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值