磁盘访问时间计算
来源:互联网 发布:egd网络黄金美国上市 编辑:程序博客网 时间:2024/05/24 04:52
通常磁盘数据访问时间计算分为三个部分(实际上是四个,但是启动时间不加说明时忽略不计):
- 寻道时间,也称寻找时间:磁头移动到指定磁道需要的时间
- 延迟时间:磁头定位到某一磁道的扇区所需要的时间
- 传输时间:从磁盘读出或者写入经历的时间
值得强调的是,寻找磁道的时间是最大的影响因子,因此各种调度算法目的都是为了优化寻道的时间。盘面上密密麻麻的同心圆,找到需要的那个想来就很费时间,再加上访问的数据不必在相邻或相近磁道,因此如何降低总的寻道时间是我们关注的重点。
一旦找磁道的问题得到了解决,那么在道上寻找扇区也不会那么难了。最多是转一圈就可以找到,最少是进到道上就是需要的扇区。因此平均是转半圈的时间。
而读取磁道上的数据耗时计算,我们通常是简化了的,即读一个磁道的数据耗时就是转动一圈的时间。
实际上,为了达到这个效果,需要的策略是扇区的交错编号。为什么呢,因为读完一个扇区,就需要一点时间休息调整一下。机器也要缓冲,不能连续不断工作。
连续编号是指,读取的扇区是0,1,2,3…编号时它们不相邻,隔着一段能够修整好的时间,通常隔一个扇区即可。这样读取一圈磁道需要耗时并不是转一圈的时间,而是两圈。但是我们计算时还是简化了,也不考虑背后的设计逻辑,简单考虑为,可以连续工作。
背后的设计与妥协可以思考一下,计算本身还是依据简化的模型来。
因此总的时间可以简单记为:寻道+转半圈寻找扇区+读取。
看一个例子,这里需要注意的是转速的单位。我们通常用r转/s,但是不排除有些故意挖坑,设置为r s/转。因此要留心。
已知某磁盘的平均转速是r秒/转,平均寻找时间是T秒,每个磁道可以存储的字节数是N,现在向该磁盘写入b字节的数据,采用随机寻道的方法,每道的所有扇区组成一个簇,其平均访问时间是(r+T)b/N.
推导:寻道时间已经告知为T, 现在需要读出b字节,随机读写,则需要的磁道数是b/N。
那么寻道的总时间是:bT/N.
因为一个道就作为一个簇,不用涉及寻找扇区时间,因此读写总时间就是:rb/N.
因此总时间就是(r+T)b/N。
- 磁盘访问时间计算
- 访问磁盘次数计算
- 磁盘寻道时间计算
- FTP磁盘配额和访问时间控制
- 自定义文件系统下的磁盘访问次数计算
- 操作内存、磁盘访问所需时间笔记
- 分页存储系统中内存有效访问时间计算
- 运用HTML5本地存储计算两个页面的访问时间
- 磁盘容量的计算
- 磁盘IO利用率计算
- 磁盘容量计算
- 计算磁盘IOPS
- 磁盘IOPS的计算
- 磁盘IOPS的计算
- 磁盘IOPS计算
- 磁盘容量的计算
- 磁盘存储容量计算
- 磁盘IOPS相关计算
- VISA函数原型
- Linux系统核心源程序文件组织结构介绍
- HttpClient请求
- OpenGL中gl,glu,glut的区别
- spring学习之@ModelAttribute运用详解
- 磁盘访问时间计算
- (原创)使用aidl进程间通讯并开启独立进程的服务仿下载监听回调等场景
- Android7.0新特性介绍(二)——通知增强功能
- error:LNK2019:无法解析的外部符号_imp_closesocket@4,该符号在函数_wmain中被引用
- JS基础第一课:js的基本用法、书写位置、引入方法、注释、万能变量var
- VM虚拟机下安装Centos7图文教程
- post 和get 两种传输方式的归纳
- Android listView用法详解
- 入门学习apiCloude的一些总结。(超级入门)