請問一下IMAC有沒有需要像PC一樣要磁碟從組&清理磁碟?我最近突然想起這個問題
http://www.macuknow.com/node/125
他說避免的方法是,放檔案的時候,把兩個檔案放相隔一些距離,分散開來放。
這樣檔案要改變的時候,可以往後加上去...。
HFS+自動重組某些檔案
ext3
會想辦法把檔案放在連續空間。
ext4支援一次取得一個很大的儘量連續的空間extents (contiguous file regions)。
FAT
這裡說明了一件事情,FAT在找空間的時候,是要一個一個去掃描,沒有一個主要的table,所以當要給一個檔案多一點空間的時候,要找很久,當然,為了不要把整個磁碟都掃過一遍然後找出最好的,他就隨便找空間,隨便塞...所以用越久檔案越破碎。
In fact, computing free disk space on FAT is one of the most resource intensive operations, as it requires reading the entire FAT linearly.
其他一些檔案系統使用bitmap(ext3),b-tree(hpfs,ntfs,...)來記錄free space,不但在allocate新的區塊時候比較快,也可以更好去安排檔案應該放在哪裡
記錄free space,智慧安排空間,這才是避免破碎的重點。
另外的說法是這個
他說, ext3可以一次就知道檔案所有的位置,fat要讀到一個block才知道下一個block的位置,所以ext3讀的比較快,fat破碎很嚴重讀的比較慢。
這樣聽起來都沒什麼錯,尤其像現在的sata硬碟有ncq的話,讓硬碟知道一串你要讀的block,他可以去排程。
就算沒有ncq,一次叫硬碟去讀一群分散的block,總比一次叫他讀一個block再讀下一個還要快。
不過要是說ext2可以"一口氣將四個 block 內容讀出來",好像就又有點誇張了,因為檔案內容其實還是分散的...。
所以,這個說明只是說明一半而已吧,很像說了果但是沒有因。
結論,比較好的資料結構在分配跟拿資料上面都會比較有效率。
內文搜尋

X