先进格式化

9 篇文章 0 订阅

    硬盘的磁道是由一序列的扇区组成的,大小通常是512字节,并且扇区与扇区之间是有空隙、引子(lead-in)和错误校验信息的。那么采用大扇区的最直接的结果就是减少扇区之间的空隙,这样可以让出更多的空间来存放数据;而且也可以让先进格式化提供更有效率的数据完整性的错误校验机制。增大磁盘扇区的尺寸有两个实际好处:提高可靠性且增加磁盘容量,预计可将磁盘可用容量提升7%11%

    最新的文件系统使用4KB(相当于把之前的8个扇区合二为一)的数据结构。因此,大部分磁盘 I/O 操作是4KB的整数倍。当 Linux想在一个4KB扇区的新磁盘上读写这些数据结构时,将会发生什么事情?如果文件系统数据结构正好与底层物理分区大小一致,对4KB字节数据结构的读写会产生对单一扇区的读写。硬盘的固件不需要做任何特别的事;但是当文件系统数据结构与底层物理扇区不完全一致时,读写操作必须使用两个物理扇区。对于读操作,这基本上不会花费很多额外时间,因为磁盘上的读/写头极可能连续通过两个扇区,且固件可丢弃它不需要的数据。但是对于非对齐数据结构的写操作需要磁盘的固件首先读取两个扇区,修改两个扇区部分区域,然后写两个扇区。该操作所需时间要比占用一个扇区(4KB)时所需时间多。因此,性能下降。

    如何判断数据结构是否得到合理对齐?大多数文件系统将其数据结构与包含其本身的分区开头对齐。因此,如果一个分区起始于一个 4096 字节(8 个扇区)边界,则表示它得到合理对齐。微软Windows Vista和Windows 7的分区工具的第一个分区的起始扇区为2048,所以从跨平台的角度,这是一个安全的选择。ext4的领导者Theodore Ts’o就专门写了一篇博客探讨这个主题,他的建议如下:

  224 heads (32*7)

  56 sectors per track (8*7)

  这样每个柱面包含12544个扇区(256*49),每个磁道使用56个扇区,大小为56*512字节,即每磁道28762字节,这和每柱面4KB的7个块是一样的,因此每柱面4KB页面的数量是一个整数,这样任何分区都是协调一致的使用fdisk的方法是运行fdisk -H 224 -S 56 /dev/sda, 这一条命令改变了柱面/磁头/扇区(CHS)的几何关系,让程序对齐到柱面,从而保证了正确的4096字节对齐。



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值