查看單個文章
舊 2008-06-09, 04:48 PM   #9 (permalink)
getter
管理員
 
getter 的頭像
榮譽勳章
UID - 6433
在線等級: 級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時
註冊日期: 2002-12-08
住址: 天線星球
文章: 8157
精華: 0
現金: 19955 金幣
資產: 765391 金幣
預設

引用:
作者: 飛鳥 查看文章
如果要說format的格式和速度的關係,其實一點關係都沒有,只在於你format時給予的配置單位大小是多少,如下圖的
http://netgames123.googlepages.com/format2.jpg

一般在預設的情況下,上方的預設大小是4096位元,也就是硬碟儲存的最小單位(因為經過測試,是內容及速度最平均的大小)

例一:
如果format時設定4096位元為配置單位
比如一個檔案是200位元,但在硬碟裡還是會佔掉4096位元
一個檔案是500位元,在硬碟裡會佔掉8192位元

例二:
如果format時設定2048位元為配置單位
比如一個檔案是200位元,但在硬碟裡還是會佔掉2048位元
一個檔案是500位元,在硬碟裡會佔掉 2048x3 = 6144位元

請看,磁碟大小的項目,一般都可以被4096整除,這樣可以知道是使用預設的配置大小
http://cyberfair.taiwanschoolnet.org/news/country/97010303.jpg

設定比較大的配置單位,這樣設定是為了硬碟讀取時可以連續讀取,一個500位元檔案可能分散分2個地方讀取
但如果format時設定比較小的配置單位,一個500位元檔案可能分散分3個地方讀取

例二雖然是比較少硬碟空間,但會使硬碟不停的在找尋要讀的資料在那裡
而配置大小太大,也會做成空間浪費

4096是經過專家測試後最好的配置大小

這個配置大小才真的跟硬碟的快慢有關


跳回隨身碟話題,因為沒有配置單位的設定,所以並不會因為格式或format的關係而影響讀取寫入的快慢
鳥大說的是正式的說法之ㄧ ...

-------------------------------------------------------
應該說早期的 FAT16 為了能夠配置 2GB 的硬碟,結果弄的 1 個叢集 = 65355
Bytes,我測試過確實很快,可是有一個嚴重問題,就是空間浪費的程度很嚇人。


假設 1 個檔案只有 1,000 Bytes
有兩個磁碟分隔
A 為 1 個叢集 = 512 Bytes
B 為 1 個叢集 = 65,355 Bytes

空間論
當這一的檔案分存於 A 和 B 分隔時,
A 用佔用 2 個叢集,剩餘 24 Bytes
B 用佔用 1 個叢集,剩餘 64,355 Bytes

當然每 1 個叢集 = 512 Bytes 節省空間。一兩個小檔,可能沒什麼可是一堆
小檔就會很有感覺。如有 100 個檔案:

A 用佔用 2 個叢集,剩餘 24 Bytes × 100 = 200 個叢集,剩餘 2400 Bytes
B 用佔用 1 個叢集,剩餘 64,355 Bytes × 100 = 100 個叢集,剩餘 6,435,500 Bytes

就很明顯感覺,才 100 個檔全部加起來約 100,000 Bytes,B 用分割卻要用 6,553,500 Bytes
還存放,而平白消失了 6,435,500 Bytes 。

顯然是電腦無法變通,磁碟機以 "叢集" 為單位進行存取。叢集的大小定了空間的
使用比重(實際的大小/佔用或虛耗的大小),叢集太大則浪費。

-------------------------------------------------------
速度論
因為 1 個檔案,分別在 A = 2 叢集;B = 1 叢集。造成了,讀取時 A 分割要
讀取 2 次,才能讀完,而 B 分割只需要讀一次。因此如果 1 檔案佔用的叢集越多
則讀取的次數也越多。如果運氣很好檔案所佔用的叢集是連續的,那讀取的效果就
會跟佔用少量叢集(甚至 1 個叢集)相當,若是不連續的話,就會慢到不行。

為此才有一種軟體『磁碟重組』的產生,而這種軟體,其實是只再做一種事,就是
把不連續的檔案叢集,排列成連續的檔案叢集,以改善讀取的速度。

-------------------------------------------------------

正如鳥大說的 1 叢集 = 4096 Byte,是經由測試而來的,既不會虛耗太多的
空間又能兼顧讀取的速度。因為一般常見的純文字、WORD、EXCEL文件、圖檔很
容易落在 0K~2M 之間,因此 1 叢集 = 4096 Byte 會省空間與維持讀取效率,
也是如此的關係。

不同的檔案系統,除了所能使用的儲存實體的大小有別外,尚有容錯性、安全原則
性的、單一文件大小等考量,因此自 Windows NT/2000,開始慢慢使用 NTFS
也是有這一方面的關係。


本來就慢的話,就會用再好的檔案系統,我個人覺的還是效果有限。因為本質已受
到限制了。

就好比我舉例的我的硬碟來說,雖然本質很強 55MB/s,卻受到外接盒的關係只有
10MB/s 而 18MB/s 則是 USB 裸接硬碟線(沒有殼的那種),使用上只有認了。

也正如 "不飛" 大大說的,有個 20MB/s 就很厲害了說。
__________________
在「專業主討論區」中的問題解決後,要記得按一下 http://forum.slime.com.tw/images/stamps/is_solved.gif 按鈕喔,
這是一種禮貌動作。

一樣是在「專業主討論區」中發問,不管問題解決與否,都要回應別人的回答文喔。
不然搞 [斷頭文],只看不回應,下次被別人列入黑名單就不要怪人喔。

天線寶寶說再見啦~ ... 天線寶寶說再見啦~

迪西:「再見~ 再見~」

Otaku Culture Party 關心您 ...
getter 目前離線  
送花文章: 37855, 收花文章: 6441 篇, 收花: 26052 次
回覆時引用此帖
有 2 位會員向 getter 送花:
rezard (2008-06-10),飛鳥 (2008-06-09)
感謝您發表一篇好文章