硬盘分区怎么做4k对齐 (磁盘有一个分区没有4k对齐)

1,CHS寻址:早期磁盘盘片的每一条磁道都具有相同的扇区数,即存储空间由磁头数(Heads) ,柱面数(Cylinders),扇区数(Sectors) ,这三个参数定位一个扇区,因产生相应CHS寻址方式。每张磁片的正反两面各有一个磁头,半径相同的同心磁道构成柱面,扇区由磁道划分为若干个小的区段。磁头参数定位哪个盘面,柱面参数定位哪个半径,扇区参数定位磁道上某个扇区的具体位置。扇区是磁盘读写的基本单位,通常为512字节。

已经分区的硬盘4k对齐,硬盘分区怎么做4k对齐

CHS寻址

CHS寻址方式的容量:容量=盘片数*2*磁道数*2*扇区数*512

磁头数最大为255 (用8个二进制位存储),从0开始编号;

柱面数最大为1023(用10个二进制位存储)。从0开始编号;

扇区数最大数63(用6个二进制位存储)。从1始编号。

所以CHS寻址方式的最大寻址范围为:

255 * 1023 * 63 * 512/ 1048576= 7.837 GB ( 1M =1048576 Bytes )

2,LBA(Logical Block Addressing)寻址:实际上就是物理地址的转化,将三元组转换为一维的线性地址。即 0柱面0磁头1扇区编址为逻辑0扇区,0柱面0磁头2扇区编址为逻辑1扇区等等。地址不再是硬盘的实际物理地址(柱面、磁头和扇区),将CHS这种三维方式转变为一维的线性寻址,把硬盘所有的物理扇区的C/H/S编号通过一定的规则转变为线性的编号,但在访问时,还由硬盘控制器转换成实际的物理寻址。

3,扇区:硬盘最小得读写单元,块/簇:多个扇区组合在一起为一个块,块/簇是操作系统对硬盘读写最小单元。簇总是扇区大小的整数倍,且不同文件系统对于不同大小的卷(分区)会有不同的默认簇大小,如FAT32对于8GB以下的分区,默认簇大小为4KB,对于8GB~16GB的分区,默认簇大小为16个扇区(8KB),NTFS对于大于2GB的分区,默认簇大小为8个扇区(4KB)。

4,MBR(Main Boot Record):主引导记录,位于整个硬盘的第一个扇区即 0 柱面,0 磁头,1 扇区( CHS 方式以 1 开始编号)。分为三部分:引导程序和一些参数,446 字节;分区表 DPT,64 字节;结尾标记 0x55 和 0xAA,2字节。分区表只有 4 个表项,也就是说只支持 4 个分区,但4 个分区远远不够,于是有了扩展分区,但最多只有一个,扩展分区可以分为多个子扩展分区,子扩展分区就像是一个单独的硬盘,最开始的扇区为扩展引导扇区 EBR,结构同 MBR,只是分区表只用了两项,第一项表示该子扩展分区的逻辑分区,第二项表示下一个子扩展分区,其他两项为 0 ,扩展分区构建了一个单链表,将各个子扩展分区连起来。

已经分区的硬盘4k对齐,硬盘分区怎么做4k对齐

MBR分区

5,GPT分区:MBR 分区有许多限制,只能支持 4 个主分区,每个分区大小不能超过 2TB。而 GPT有每个硬盘的分区数分区大小没有限制;分区表有备份等。

已经分区的硬盘4k对齐,硬盘分区怎么做4k对齐

GPT

6,4K对齐:采用NAND(Non-Volatile Array of NAND)闪存存储单,扇区大小是4K。早期分区起始位置不是从0开始,而是从LBA63开始,就是第63个扇区开始开始存储。63个扇区×512字节=31.5K,磁盘的前31.5K是不能被使用的,使用固态硬盘,即使存储一个字,也需要占用31.5K-35.5K之间的磁盘扇区,恰好隔过一个扇区的4K倍的位置,就会造成一个数据存2个扇区的情况(位置在能被4K整除的位置就100%占用了2个扇区)。 无论簇是多大,都会造成性能和空间的浪费。

为什么4K对齐:簇是硬盘分区的物理存储单元,它不是硬盘的物理结构,而是操作系统的使用方法,分区的时候可以指定这个大小。将每个扇区512字节改为每个扇区4096 个字节,也就是现在的“4K扇区”。实现了簇与扇区相对应,保证硬盘读写效率,所以,有了“4K对齐”的概念。传统硬盘的每个扇区固定是512字节,现在有了4096字节扇区的硬盘。为了保证兼容性,扇区模拟成512字节扇区,将硬盘内部物理扇区在逻辑上划分为多个扇区片段(一般为512字节大小),这样的扇区片段称之为“逻辑扇区”。这样会导致4K扇区和4K簇不对齐,所以就要用“4K对齐的方式,将硬盘模拟扇区对齐成“4k扇区”。“4K对齐”就是将硬盘扇区对齐到8的整数倍个模拟扇区,即512B*8=4096B,4096字节即是4K。实际读写时由硬盘内的程序(固件)负责在逻辑扇区与物理扇区之间进行转换。

已经分区的硬盘4k对齐,硬盘分区怎么做4k对齐

对齐

7,逻辑扇区与物理扇区关系:逻辑扇区是硬盘可以接受读写指令的最小操作单元,是操作系统可以访问的扇区,一般情况下大小为512字节,通常所说的扇区一般指的就是逻辑扇区。物理扇区是硬盘底层意义上的扇区,是实际执行读写操作的最小单元,只能由硬盘直接访问的扇区,操作系统及应用程序一般无法直接访问物理扇区。一个物理扇区可以包含一个或多个逻辑扇区(如多数硬盘的物理扇区包含了8个逻辑扇区)。实际读写时由硬盘固件负责在逻辑扇区与物理扇区之间进行转换,上层程序感觉不到物理扇区的存在。当要读写某个逻辑扇区时,硬盘底层在实际操作时都会读写逻辑扇区所在的整个物理扇区。“硬盘”及其“扇区”的概念,同样适用于存储卡、固态硬盘(SSD),固态硬盘(SSD)对分区4K对齐的要求更高。如果没有对齐,额外的动作会增加更多,造成读写性能下降。