-
磁盘结构以及磁盘访问时间(柱面 磁头 扇区)
2019-01-01 21:45:47磁盘容量大,价格低,存取速度快,断电信息后不丢失,可随机存取,因此成为计算机系统中最主要的...在硬磁盘系统中,盘面号又叫磁头号,因为每一个有效盘面都有一个对应的读写磁头。 2)磁道、扇区 下图显示的...磁盘容量大,价格低,存取速度快,断电信息后不丢失,可随机存取,因此成为计算机系统中最主要的文件存储设备。磁盘系统的可靠性及其I/O速度的高低,将直接影响到文件操作的效率。
1)盘面
磁盘每一个盘片都有两个盘面,即上、下两个盘面,都可以用来存储数据。每一个有效盘面都有一个盘面号。在硬磁盘系统中,盘面号又叫磁头号,因为每一个有效盘面都有一个对应的读写磁头。
2)磁道、扇区
下图显示的是一个盘面,盘面中一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之为一个扇区(图示绿色部分)。扇区是磁盘的最小组成单元,通常是512字节。(由于不断提高磁盘的大小,部分厂商设定每个扇区的大小是4096字节)
3)柱面
硬盘通常由重叠的一组盘片构成,每个盘面都被划分为数目相等的磁道,并从外缘的“0”开始编号,具有相同编号的磁道形成一个圆柱,称之为磁盘的柱面。
所以读取磁盘必须要获取这块待读扇区对应的柱面号(cylinder)、磁头号(head)、扇区号(sector)。
磁盘访问时间=寻道时间+旋转时间+传输时间
寻道时间:把磁头从当前位置移动到指定的磁道所需要的时间。
通常表示为:T=m*n+s
s为启动磁臂的时间;m为移动一条磁道所需要的时间;n为需要移动的磁道数。
寻道是做直线运动,所耗时间较多,通常为8~12ms。
旋转时间:欲访问扇区旋转到磁头下面所需要的时间,通常可以认为是半周旋转时间,大约为4ms。
传输时间:把数据从磁盘读出或向磁盘写入所需要的时间,通常为0.3ms。
所以可以发现,磁盘访问主要时间是寻道时间。为了能改善磁盘的访问速度,引入了盘块的概念。盘块就是若干个扇区,系统每一次读取磁盘,不是一次性读取一个扇区,而是读取一个盘块(也就是若干个扇区),这样能改进磁盘访问的效率。当然这也有一个缺点,是以空间牺牲来换取时间上的改进,盘块的大小尺寸会造成一些碎片。
扇区是磁盘最小的物理存储单元,一般而言是每个扇区512B大小,但是操作系统通常不直接管理每一个扇区,而是通过将若干个扇区组成的一个更大的集合来去进行操作管理。这个比扇区更大的集合,在Windows下叫做簇;在Linux下叫做块(block)
-
磁盘访问时间计算
2016-10-21 14:15:45通常磁盘数据访问时间计算分为三个部分(实际上是四个,但是启动时间不加说明时忽略不计): 寻道时间,也称寻找时间:磁头移动到指定磁道需要的时间 延迟时间:磁头定位到某一磁道的扇区所需要的时间 传输时间:从...通常磁盘数据访问时间计算分为三个部分(实际上是四个,但是启动时间不加说明时忽略不计):
- 寻道时间,也称寻找时间:磁头移动到指定磁道需要的时间
- 延迟时间:磁头定位到某一磁道的扇区所需要的时间
- 传输时间:从磁盘读出或者写入经历的时间
值得强调的是,寻找磁道的时间是最大的影响因子,因此各种调度算法目的都是为了优化寻道的时间。盘面上密密麻麻的同心圆,找到需要的那个想来就很费时间,再加上访问的数据不必在相邻或相近磁道,因此如何降低总的寻道时间是我们关注的重点。
一旦找磁道的问题得到了解决,那么在道上寻找扇区也不会那么难了。最多是转一圈就可以找到,最少是进到道上就是需要的扇区。因此平均是转半圈的时间。
而读取磁道上的数据耗时计算,我们通常是简化了的,即读一个磁道的数据耗时就是转动一圈的时间。
实际上,为了达到这个效果,需要的策略是扇区的交错编号。为什么呢,因为读完一个扇区,就需要一点时间休息调整一下。机器也要缓冲,不能连续不断工作。
连续编号是指,读取的扇区是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。
-
磁盘平均存取时间
2019-12-15 14:34:47平均存取时间 = 寻道时间 + 旋转延迟时间(磁头定位到所在扇区的时间)+ 传输时间 平均寻道时间与平均旋转延迟时间之和称为平均存取时间(average access time) 扇区 磁盘上的每个磁道被等分为若干个弧段,这些弧段...平均存取时间 = 寻道时间 + 旋转延迟时间(磁头定位到所在扇区的时间)+ 传输时间
平均寻道时间与平均旋转延迟时间之和称为平均存取时间(average access time)
扇区
磁盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区. 扇区是磁盘最小的物理存储单元
磁盘簇(windows)
windows 将相邻的扇区组合在一起,形成一个簇,然后再对簇进行管理
寻道时间
磁头从开始移动到移动到数据所在磁道所需要的时间
旋转延迟
首先,读写头沿径向移动,移到要读取的扇区所在磁道的上方,这段时间称为寻道时间(seek time)。
然后,通过盘片的旋转,使得要读取的扇区转到读写头的下方,这段时间称为旋转延迟时间(rotational latency time)。例:一个7200(转 /每分钟)的硬盘, 每旋转一周所需时间为60×1000÷7200=8.33毫秒, 则平均旋转延迟时间为8.33÷2=4.17毫秒 (最多旋转1圈,最少不用旋转,平均情况下,需要旋转半圈)。
换种问法
1.寻道时间,启动磁臂的时间s与磁头移动n条磁道所花费的时间之和 t=m*n+s(一般磁盘,m=0.2,高速磁盘,m<=0.1) 2.旋转延迟时间,是指定扇区移动到磁头下面所经历的时间 3.传输时间 ,指把数据从磁盘读出或向磁盘写入数据所经历的时间 若每次读/写的字节数为b,磁盘每秒钟的转速为r, 一条磁道上的字节数为N t=b/(rN)
参考来自:
https://my.oschina.net/xiangxw/blog/11288 -
如果磁盘的旋转周期为33ms,磁头当前处在R0的开始处。若系统使用单缓冲区顺序处理这些记录,每个记录处理...
2020-01-25 14:23:25所谓磁盘就是我们传统所说的硬盘,但是如今的硬盘分成两种,一种是机械硬盘,一种是固态硬盘,固态硬盘的读写速度比机械硬盘快很多,价格也贵非常多,在这个文章中我先讲述一下传统的磁盘的存储结构。 传统的磁盘...
所谓磁盘就是我们传统所说的硬盘,但是如今的硬盘分成两种,一种是机械硬盘,一种是固态硬盘,固态硬盘的读写速度比机械硬盘快很多,价格也贵非常多,在这个文章中我先讲述一下传统的磁盘的存储结构。
传统的磁盘存储结构就像光盘一样,是一个圈,所有的内存块都在这个圈里面,假设某磁盘的每个磁道划分成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
-
java磁盘顺序写入_磁盘IO单线程顺序写时最快的,如果多线程写,磁盘的磁头要不断重新寻址,所以写入速度...
2021-03-10 04:58:15磁盘IO单线程顺序写时最快的,如果多线程写,磁盘的磁头要不断重新寻址,所以写入速度反而会慢(1) 读写最好还是不要多线程,硬盘读写的速度有限,单线程时已经满负荷了,多线程又会增加线程之间的切换,会增加时间。... -
java实现顺序写入磁盘_磁盘IO单线程顺序写时最快的,如果多线程写,磁盘的磁头要不断重新寻址,所以写入...
2021-03-11 11:33:01磁盘IO单线程顺序写时最快的,如果多线程写,磁盘的磁头要不断重新寻址,所以写入速度反而会慢(1) 读写最好还是不要多线程,硬盘读写的速度有限,单线程时已经满负荷了,多线程又会增加线程之间的切换,会增加时间。... -
操作系统(8) 磁盘的结构 磁道磁盘 扇区 磁盘调度算法 减少磁盘延迟时间的方法 交替编号 错位命名
2020-12-27 13:33:18磁盘管理 文章目录磁盘管理一、磁盘的结构1. 磁盘、磁道、扇区2. 如何在磁盘中读写数据3....需要把磁头移动到想要读写的扇区所在的磁道,磁盘会转动起来,让目标扇区从磁头下面划过, 即可完成对磁盘的读写操作 -
磁盘寻道时间计算
2016-03-10 16:05:00㈠ 磁道 以盘片中心为圆心,用不同的半径,划分出不同的很窄的圆环形区域,称为磁道㈡ 扇区 ...㈣ 寻道时间磁头从开始移动到数据所在磁道所需要的时间寻道时间越短,I/O操作越快, 1.磁盘结构图: 工 -
磁盘IO单线程顺序写时最快的,如果多线程写,磁盘的磁头要不断重新寻址,所以写入速度反而会慢...
2017-08-12 08:32:43如果多线程写,磁盘的磁头要不断重新寻址,所以写入速度反而会慢(1) 读写最好还是不要多线程,硬盘读写的速度有限,单线程时已经满负荷了,多线程又会增加线程之间的切换,会增加时间。 如果想增加读写速度,应该... -
机械磁盘的三种时间
2019-01-23 09:03:47寻道时间 磁头移动到数据所在磁道的时间 旋转延迟 数据所在扇区旋转至磁头下方的时间 传输时间 数据传输所需时间 -
磁盘读取数据时间
2014-09-25 10:48:00数据存储在磁盘上的排列方式会影响I/O服务的总时间 假设每磁道划分成10个物理块,每块存放1个逻辑记录。逻辑记录R!个逻辑记录。逻辑记录R1,R2,﹍﹍ ,R10存放在同一个磁道上,记录的安排顺序如下表所示: 物理... -
磁盘IO单线程顺序写时最快的,如果多线程写,磁盘的磁头要不断重新寻址,所以写入速度反而会慢
2018-11-21 17:18:03(1) 读写最好还是不要多线程,硬盘读写的速度有限,单线程时已经满负荷了,多线程又会增加线程之间的切换,会增加时间。 如果想增加读写速度,应该增加硬盘,做raid (2)首先是硬盘的写入是串行的,CPU的计算... -
磁盘
2021-02-03 15:37:05seek time (寻道时间:先让磁头运动到你想要的那个同心圆) rotation latency (记得*1/2,因为是平均时间) transfer time 有关实验的ppt 上课ppt -
4.2 磁盘
2021-03-10 11:15:39平均寻道时间(磁头移动到指定磁道所要花费的时间)+平均等待时间(转半圈的时间)+传输时间(从磁盘读出数据所需要的时间) 平均等待时间和传输时间都不能发生变化,唯一可以发生变化的就是平均寻道时间,磁盘调度... -
磁盘调度
2019-11-23 10:10:31磁盘访问时间 磁盘访问时间=寻道时间Ts+旋转延迟时间+传输时间 寻道时间:磁臂(磁头)移动到指定磁道上所经历的时间 旋转延迟时间:指定扇区移动到磁头下面所经历的时间,1/(2r) 传输时间:把数据从磁盘读出或... -
磁盘调度之最短寻道时间优先
2019-11-17 12:00:00该算法选择这样的过程,其要求访问的的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短。但这种算法不能保证平均寻道时间最短。下图示出了按SSTF算法进行调度时,各种进程被调度的次序、每次磁头移动的... -
磁盘存储器
2020-06-18 09:38:26一、磁盘存储器的结构 磁表面信息读出过程: 二、磁盘驱动器以及操作过程 ...①硬盘操作流程:所有磁道同步...②平均存取时间T =平均寻道时间+平均旋转等待时间+数据传输时间(转过一个扇区的时间,忽略不... -
磁盘管理
2020-11-08 23:37:20磁盘 磁盘的俯视图 ...磁盘访问时间 = 写入控制时间 + 寻道时间 + 旋转时间 + 传输时间 S:扇区号 盘块可以是几个连续的扇区 多个进程使用磁盘 磁盘调度算法 FCFS:响应队头请求 短寻道优先(Sh -
四十八、减少磁盘延迟时间的方法
2021-02-15 14:31:53一、知识引入 那么如何才能减少这种延迟时间呢?...答案:因为读取地址连续的磁盘块时,采用(柱面号,盘面号,扇区号)的地址结构可以减少磁头移动消耗的时间。 三、减少延迟时间的方法:错位命名 四、总结 ... -
磁道、柱面、扇区、磁盘簇、寻道时间、旋转延迟、存取时间
2019-03-21 23:48:261.磁道 以盘片中心为圆心,用不同的半径,划分出不同的很窄的圆环形区域,称为磁道。 2.柱面 上下一串盘片中,相同半径的磁道所组成的一个圆柱型的环壁,就称为柱面。 ...磁盘上的每个磁道被等分为若干个...磁头... -
影响机械磁盘速度的因素:寻道时间、旋转延迟、数据传输时间
2015-11-11 16:45:53㈠ 磁道 以盘片中心为圆心,用不同的半径,划分出不同的很窄的圆环形区域,称为磁道 ㈡ 扇区 磁盘上的每个磁道被等分为若干个弧段,这些弧段...磁头从开始移动到数据所在磁道所需要的时间寻道时间越短,I/O操作越快, -
磁盘调度算法
2020-06-08 17:10:18一,一次磁盘读/写操作所需要的时间T 1,寻道时间T1:在读写...2,延迟时间T2:通过旋转磁盘,使磁头定位到目标扇区的时间 T2=0.5*r(设转盘转速为r) 3,传输时间T3:从磁盘读出或向磁盘写入数据所经历的时间.. -
4.3.4 磁盘组织与管理
2015-12-08 00:21:12(3)传输时间:从磁盘读出或向磁盘写入数据所经历的时间。 (4)启动时间:(一般忽略):控制器的启动时间。 三、调度算法 (1)先来先服务 (2)最短寻道时间优先:选择与当前磁头所在磁道距离最近的请求 (3)... -
常用磁盘的性能参数
2018-12-24 09:45:10传统磁盘本质上一种机械装置,如FC, SAS, SATA磁盘,转速通常为...1,寻道时间Tseek是指将读写磁头移动至正确的磁道上所需要的时间。寻道时间越短,I/O操作越快,目前磁盘的平均寻道时间一般在3-15ms。2,旋转延迟... -
操作系统~磁盘的结构、磁盘调度算法、磁盘的管理
2021-02-14 21:21:38文章目录磁盘的结构磁盘的物理地址磁盘调度算法一次磁盘读/写操作需要的时间先来先服务算法(FCFS)最短寻找时间优先(SSTF)扫描算法(SCAN)LOOK调度算法循环扫描算法(C-SCAN)C-LOOK调度算法磁盘管理磁盘地址结构的设计... -
磁盘调度模拟
2018-01-26 16:49:33可以随机输入磁道请求序列,当前磁头位置和磁头移动方向,支持先来先服务、最短寻道时间优先、扫描、循环扫描调度算法,能够输出磁头移动经过的磁道序列。具体信息见测试用例格式说明。 测试用例格式如下: 输入...