我运行时有 1 TB 硬盘:
# fdisk -l
我得到的其他细节包括:
Model: ATA HGST HTS721010A9 (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
我将逻辑扇区大小视为操作系统的 I/O 扇区大小。但是显示物理扇区是4096B。我不确定两者之间有什么区别。为什么内核会使用 512B 扇区进行 I/O 而不是 4096B 扇区,也许是出于兼容性原因?这不会减慢 I/O 操作吗?
答案1
是的,兼容性就是原因。硬盘扇区大小改为 4096,以更有效地利用磁盘区域。所有软件都无法在一夜之间转换为使用更大的扇区大小,因此 4k 磁盘仍然显示为具有 512 字节逻辑扇区。如果磁盘访问未与 4096 物理扇区大小对齐,它确实会减慢 I/O。如果您注意对齐,那真的没关系,因为无论如何,读取和写入请求都是一次完成多个扇区的。请注意,逻辑扇区大小是由磁盘规定的,内核必须适应它,而不是相反。