|
Golden Member
|
我不是故意吐槽,不過vandenbroucke兄有關 Raid0 和 block size 的關念是錯的。
所謂的存取時間基本上要計算三個部份,seek time, rotation latency, transfer time. Seek time 是指磁頭移到目的磁軌的時間、rotation latency 是指磁碟轉到目的資料的時間。transfer time 則是磁頭讀取的時間,這部份通常很短,可以不計。
注意硬碟讀取資料時的順序,磁頭先移到資料所在的磁軌上,然後在那個磁軌上等磁碟轉到要存取的資料上,接著開始存取。因此所謂幾轉幾轉的硬碟其實只影響第二部份磁頭在目的磁軌等待資料的時候,但事實上第一部份,磁頭移到目的磁軌所花的時間才是硬碟效能的瓶頸。
至於 block size 和 raid0, 就如 vandenbroucke兄的假設,假設今天硬碟分成 16k/per block, 當我們寫入一個只有 14K 大小的檔案,這個檔案 並不會被分成兩個 7k 大小, 而是寫入其中一個硬碟,並且佔據 16K(雖然實際只有 14K) 的資料,這也是為什麼效能不會變快的原因,因為他實際上只存取到一顆硬碟。
而且 NTFS 支援 512byte、1KB、2KB、4KB、8192、16K、32K 和 64K 的 block size, 並沒有大到 512KB ,1024KB 這麼誇張。FAT32 的 block size 和 NTFS 一樣,但還另外有 128K, 256K 的支援(這兩個幾乎沒有用)。
|