https://www.iteye.com/blog/daimajishu-971469
https://jingyan.baidu.com/article/bad08e1ecdced848c951210c.html
磁盘分为磁道(track),每条track上有若干sector,每个sector为512字节,为什么是512字节呢?这是1956年由industry trade organization, International Disk Drive Equipment和Materials Association三家机构确定的行业标准。
随着时代的发展512的sector大小明显太小了,由于每个sector还要存放很多其他信息【3】,因此增大sector size可以降低sector的数量,从而提高实际存储量,同时降低了差错校验等很多CPU计算量。但遗憾的是由于这个标准太根深低估很多代码开发都默认了这一size要想改势必登天【2】。
在sector的size很难修改的情况下,加快read的方式,可以选用disk readahead方式,增加预读的缓冲,从而在顺序读,且程序采用流水线时取得更好的性能【4】,但对随机读写是有害的。
hdparm -a N /dev/hda (N为sector的数量,默认是8,即4k),可以调整到更大的size。通过实验调整到最优。
以上是hardware readahead,数值不宜调整过大。如果业务上随机读写在优化后依然较多,这个参数改了效果反而会有影响。
在内核中可以对
/sys/block/sda/queue/read_ahead_kb
进行调整,默认值为128k,可以调节到1M,这个是software readahead,这个值需要是hardware readahead的倍数。
----------------------------以下节选自http://en.wikipedia.org/wiki/Disk_sector------------------------------------------------------
The standard sector size of 512 bytes for magnetic disks was established with the inception of the hard disk drive in 1956. Through a coordinated effort organized by the industry trade organization, International Disk Drive Equipment and Materials Association (IDEMA), leading hardware and software companies started work to define the implementation and standards that would govern sector size formats exceeding 512 bytes to accommodate future increases in data storage capacities.
Seven year later, hard disk drives supporting 1,024-byte sectors began to be integrated into consumer electronics devices. Portable media players and digital video cameras were the first products to utilize the larger sector format. By the end of 2007, Samsung and Toshiba began shipments of 1.8-inch hard disk drives with 4,096-byte sectors, the sector size designated as the next standard format for all hard drives.
推荐阅读:
(1)http://www.dewassoc.com/kbase/hard_drives/hard_disk_sector_structures.htm
(2)http://www.ibm.com/developerworks/linux/library/l-4kb-sector-disks/index.html
(3)http://www.dewassoc.com/kbase/hard_drives/hard_disk_sector_structures.htm
(4)http://linuxgazette.net/issue79/punk.html
(5)http://insights.oetiker.ch/linux/raidoptimization/
硬盘一个扇区多少字节
- 浏览:60
- |
- 更新:<time>2022-08-10 10:34</time>
传统上一个硬盘扇区的大小是512字节。但在高级格式化硬盘中,物理扇区大小是4096字节,不过依然向下支持512字节,若不进行4K对齐的话,就会影响性能。
一个磁盘上可以记录的最大位数称为它的最大容量,或简称为容量。磁盘容量由以下因素决定:
1、记录密度(位/英寸):磁道一英寸的段中可以放入的位数;
2、磁道密度(道/英寸):从盘片中心出发半径上一英寸的段内可以有的磁道数;
3、面密度(位/平方英寸):记录密度 与 磁道密度 的乘积。
[图片上传失败...(image-2e1063-1665376463112)]
扩展资料
硬盘由很多盘片(platter)组成,每个盘片的每个面都有一个读写磁头。如果有N个盘片。就有2N个面,对应2N个磁头(Heads),从0、1、2 开始编号。每个盘片被划分成若干个同心圆磁道(逻辑上的,是不可见的。)每个盘片的划分规则通常是一样的。
这样每个盘片的半径均为固定值R的同心圆再逻辑 上形成了一个以电机主轴为轴的柱面(Cylinders),从外至里编号为0、1、2……每个盘片上的每个磁道又被划分为几十个扇区(Sector),通 常的容量是512byte,
并按照一定规则编号为1、2、3……形成Cylinders×Heads×Sector个扇区。这三个参数即是硬盘的物理参 数。我们下面的很多实践需要深刻理解这三个参数的意义。
什么, 磁盘还要分512和4096扇区大小?
<article class="content box" style="box-sizing: inherit; display: block; background-color: rgb(255, 255, 255); border-radius: 0px; box-shadow: none; color: rgb(74, 74, 74); padding: 1.25rem; font-size: 17px; line-height: 1.8em; margin-bottom: 1.5rem; font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", "WenQuanYi Micro Hei", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;">
我们在考虑购买磁盘时,通常就只会考虑磁盘的大小,是机械硬盘,还是固态硬盘,磁盘的读写速度, Sata接口,还是PCIE接口。除了上面的几个考虑点外,很少会去关注磁盘扇区大小,因为对我们来说并没多大用。
硬盘行业背景
随着硬盘行业的快速发展,硬盘公司大概在2010年左右,开始从传统的512 kb扇区大小磁盘迁移到更大、更高效的 4096 字节的扇区规模。国际上有个叫硬盘设备与材料协会(International Disk Drive Equipment and Materials Association,IDEMA)的,将这种4k扇区大小的磁盘称之为高级格式化(AF)磁盘。
当我们将数据保存到硬盘时,数据会保存到硬盘的扇区。
传统硬盘的扇区大小为 512 字节,并且在每个扇区与扇区之间并不是直接相连,在它们之间还存在着一定的空间,分为空隙(gap,用来分割扇区),同步(sync,表示扇区的开始处,并提供计时对齐),地址标志(Address Mark,识别扇区号和位置的数据。还可提供扇区本身的状态。),以及用户数据修复和还原的ECC区域。
下图就是打开的512扇区磁盘的结构图。[图片上传失败...(image-47dbfb-1665376492838)]
可想而知,这种结构的缺点,随着单盘容量的增加,是不是ECC校验的效率变低了?并且扇区之间存在如此多的空间,浪费了很多硬盘空间。
512字节的扇区需要另外40字节作为ECC校验空间,而4k扇区(8个512字节扇区)只需要100个字节,所以,同样提供4kbyte扇区空间,使用高级格式化磁盘能节约出220byte的储存空间,这样就能令ECC校验完成更多空间的检验纠错,提高ECC校验的效率。
为了解决上述等的问题, 大佬们就计划推出4K扇区大小的磁盘。
简而言之,4K 硬盘是扇区大小为 将以前512个字节就有一段不可用的空间(用来存放其他数据),变成了4096个字节才有。
这种硬盘结构将缩小扇区之间的差距,大大提高硬盘空间的使用率。下图显示了 4K 硬盘的结构和512磁盘的对比图:
image.png磁盘升级过渡期:512e磁盘
既然好多硬盘厂商从2011年就开始推出了高级格式化硬盘,
为什么现在关于这方面的介绍还不多呢?
考虑到与操作系 Windows,Linux等 兼容性问题,(当然,从Windows Vista Server Pack 1之后都是直接支持4K磁盘了),将整个行业突然一下转变为新的 4K 标准是不可能的。
这里出现了一个新的概念 :512e磁盘
512 模拟 (512e) 磁盘,其物理扇区大小为 4096 字节,但逻辑扇区大小为 512 字节。
站在windows系统的角度,它还是认为该磁盘是传统的512字节大小,使用上和以前并没有区别。
什么是 4K 原生硬盘
4K 原生硬盘也称为 4Kn 硬盘。512 模拟硬盘和 4Kn 硬盘均为 4K 驱动器,因为它们的物理扇区大小为 4096 (4K) 字节。但是,对于在 4K 本机模式下工作的硬盘,没有仿真层,磁盘介质会直接向系统固件和操作系统公开其 4096、4112、4160 或 4224 字节的物理扇区大小。
这样,4K 本机驱动器的外部可见逻辑扇区组织直接映射到其内部物理扇区组织。
下图是 512n、512e 和 4Kn 的比较。
[图片上传失败...(image-ae2ce4-1665376492838)]
如何区分自己的磁盘是哪种类型?
1、通过Windows 系统分区大小来判断。
通常情况下, UEFI模式安装的Windows,系统会自动创建一个100MB大小的EFI分区
如果你在磁盘管理器中发现,你的EFI分区竟然是默认就是260MB左右。那么就基本可以判断你的磁盘是4K原始磁盘。
[图片上传失败...(image-bc2580-1665376492838)]
当然,像小编手动改过EFI分区大小就不同。为什么小编要改EFI分区大小?因为要装黑苹果的话,引导分区EFI分区必须要大于 200MB才行。所以,是不是苹果电脑的磁盘默认都是用的4k原生磁盘?
2、通过命令行工具
以管理员权限打开 cmd或powershell, 输入
<pre style="box-sizing: inherit; margin: 0px 0px 1em; padding: 1.25em 1.5em; -webkit-font-smoothing: auto; font-family: monospace; background-color: rgb(245, 245, 245); color: rgb(74, 74, 74); font-size: 0.875em; overflow-x: auto; white-space: pre; overflow-wrap: normal;">fsutil fsinfo ntfsinfo C:</pre>
如果每物理扇区字节数以及每扇区字节数都是4096,那么恭喜你,你的就是4k原始磁盘。
而如果是像下图的方式,就是512e磁盘,虽然也是4k磁盘,但是系统会把他当作512磁盘来处理。[图片上传失败...(image-121820-1665376492838)]
3、通过分区助手
右键磁盘上的任意一个分区:选择“属性“,点击”文件系统信息“ ,每扇区字节数大小就显示在这儿。
[图片上传失败...(image-996701-1665376492838)]
[图片上传失败...(image-ad3cb8-1665376492838)]
高级磁盘的扇区优点是支持更大的存款空间,磁盘性能更好。
那么缺点呢?
缺点的话,可能是如果你购买的磁盘是4k原生磁盘, 使用大部分工具,包括分区助手,轻松备份,都没法实现从512字节的磁盘直接迁移系统到4k原生磁盘。
网友评论