磁盘的块大小(Block Size)和扇区大小(Sector Size)

时间:2022-07-01 16:12:43

来源:http://chenjianjx.iteye.com/blog/1806258

Logical Block Size:A "block", a contiguous number of bytes, is the minimum unit of memory that is read from and written to a disk by a disk driver (出处
它一般是Sector Size的倍数 

要明确的是,块是文件系统的抽象,不是磁盘本身的属性。 
扇区大小则是磁盘的物理属性,它是磁盘设备寻址的最小单元。 

Linux中, 
1.查看某个分区的Block Size:  blockdev --getbsz /dev/sda7 
2.查看硬盘的扇区大小(Sector Size):  通过fdisk -l可以看到 

Linux内核还要求 Block_Size = Sector_Size  * (2的n次方),并且Block_Size <= 内存的Page_Size(页大小)



来源:http://sharkyan.blog.51cto.com/536264/415932

磁盘里面的和文件系统里面的两个都叫block size但是大小是不一样的,磁盘里面一般都是512bytes,文件系统里面的不一定也是512bytes。

举例说明:

Disk /dev/sda: 160.0 GB, 160040803840 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          25      200781   83  Linux

红色的是磁盘里面的一个block的大小,蓝色的是文件系统里面的block的个数。
红色的是1block=512byes  蓝色的是1block=1024bytes
文件系统里面的用#tune2fs -l /dev/sda1|grep Block可以看到一个block是多大。

犯晕时:
sda1的大小:25*8225280/1024/1024=196MB    200781*512/1024/1024=98MB    少一半囧了。
明白之后:
#tune2fs -l /dev/sda1|grep Block
sda1的大小:25*8225280/1024/1024=196MB    200781*1024/1024/1024=196MB   对上了 。