Linux

我的 HDD 的物理扇區大小是多少?

  • July 30, 2017

執行時我有一個 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 操作嗎?

是的,兼容性是原因。硬碟移動到 4096 的扇區大小以更有效地利用磁碟區域。所有軟體都無法在一夜之間轉換為使用更大的扇區大小,因此 4k 磁碟仍然顯示為具有 512 字節的邏輯扇區。如果磁碟訪問未與 4096 物理扇區大小對齊,它會減慢 I/O。如果您注意對齊,那真的沒關係,因為讀取和寫入請求一次完成多個扇區。請注意,邏輯扇區大小是由磁碟規定的,核心必須適應它,而不是相反。

引用自:https://unix.stackexchange.com/questions/382751