0
点赞
收藏
分享

微信扫一扫

硬盘和操作系统数据块


硬盘


百科:硬盘是电脑主要的存储媒介之一,由一个或者多个铝制或者玻璃制的 ​​碟片​​​ 组成。 ​​​碟片​​ 外覆盖有铁磁性材料。


硬盘本身是物理东西,他就是金属盘片上涂了一层磁性介质而已,它如果要按照逻辑的想法去正常工作,最首先的是驱动程序这一块。驱动程序是直接附加在物理硬件上的一层底层软件。驱动程序完成对硬盘的一切操作。

虽然驱动程序是操作系统的一部分,但是在理解的时候,驱动程序应该剥离出来,与物理硬件一起被当做一个整体去理解,这才是可以使用的硬盘。而剥去驱动的硬盘只不过是几块金属片而已。

对硬盘的读写的最小单位是扇区。这是在驱动层规定的。

硬盘读写的定位是由3个参数确定的

磁头号。这个参数确定盘面,我们知道磁盘内部是多个金属圆盘,每个圆盘有两个面,每个面都对应一个磁头,确定了磁头号就是选择了要进行读写的盘面。

柱面。这个参数跟磁道有很深渊源的词,柱面就是确定磁道的。磁道是盘面上一个个的同心圆。

扇区又被赋予了其他含义,就是你确定了磁头号和柱面号之后,再去说对对某个扇区进行读写,此时这个扇区已经不是一个扇形,而是一个圆弧。我们现在说一个扇区是512Byte,就是说在这个圆弧上写这么多数据,而不是在这个扇形区域的所有圆弧上一共写512Byte。这个扇区的大小也是驱动层面就定义的。

再说下磁盘的性能参数。

影响磁盘读写效率的参数主要也是3个。

寻道时间:磁盘在不进行读写的时候是停在盘面中心上方的。当磁盘进行读写操作时,磁盘臂首先定位到磁道。这个定位到磁道的时间就是寻道时间。

转速。磁盘在寻道结束后,接下来就是寻找到要读写的扇区。寻找到要读写的扇区时间就跟转速有关了,转的越快找到扇区的速度越快。

数据传输速度。这个参数是单纯进行读写的速度,即一秒钟能读写多少数据,它跟硬盘接口有一定关系,也是硬盘的硬属性。

再就是I/O。

意思为读写,是为一次读写操作。注意这里,把I/O理解为一种操作。对于设备而言,一次I/O操作就是上层向驱动发来读写请求,驱动程序控制磁盘完成读写并将数据提交给上层的过程。所以,磁盘层面上的I/O chunk size是跟请求有关的,请求读取的数据大小决定了它的大小,它并不是一个固定值。

操作系统数据块

块的概念

I/O等各种操作。

OS space allocation block size。在windows中这个叫做簇,在其他操作系统中叫做block(块)。一个块内只能存储一个文件,比如定义块为2k,那么5k的要占用3个块。

操作系统级别的I/O

I/O请求要读取一个文件时,操作系统收到请求后,首先在文件系统的地址表中找到这个文件对应硬盘上的块地址。然后,对每一个块产生一个I/O请求,发送到驱动模块处理。所以,在操作系统级别,I/O chunk size等于OS block size。




举报

相关推荐

0 条评论