2013年8月20日 星期二

傳統硬碟外殼上為什麼會有一個小洞?

傳統硬碟上會有一個小洞,還特別註明不可以將該孔洞覆蓋起來。這個小洞有什麼作用呢?

位在讀寫臂上的磁頭,是藉由碟盤旋轉時產生的氣流,使磁頭以極小的空隙漂浮在碟盤上讀寫資料,一旦磁頭直接接觸到旋轉中的碟盤,將造成資料永久性的毀損。

氣流和外殼上的小洞又有什麼關係呢?這又牽涉到另一個原理--『氣壓』(空氣的重力),在高處的氣壓比低處的氣壓還要低(例如高山的氣壓比海平面低),硬碟外殼上面的小洞就是為了確保硬碟內外的氣壓是一致的,當硬碟處在不同高度時就不會因為硬碟內外部的氣壓不一致,導致磁頭和碟盤的間隙產生誤差,進而影響資料判讀或造成硬碟故障。


2013年8月5日 星期一

什麼是磁碟重組?

在傳統式硬碟,磁碟盤被分為好幾個同心圓軌道(稱為磁軌 track),每個磁軌又被劃分為好幾個小格子(稱為磁區 sector ),許多的磁區又被組合成叢集(cluster),叢集是擺放檔案的最小單位,檔案資料就被擺放在叢集當中;作業系統會根據叢集大小來保留檔案的磁碟空間,叢集越小,磁碟空間的利用率就越高。

以XP作業系統為例,當我們將硬碟(大於或等於2G的硬碟)格式化成 NTFS 格式時,預設的一個叢集大小為 4KB;如果格式化成 FAT 格式時,預設的一個叢集大小為 64KB。假設您有一個檔案大小是2KB,當它存入 NTFS 格式硬碟時,會佔用4KB(一個叢集)的硬碟空間;當它存入 FAT 格式硬碟時,會佔用64KB的硬碟空間,因此才會說叢集越小,磁碟空間的利用率就越好。

接下來要簡單的解釋磁碟重組,我們用火車來比喻,假設一節火車車廂就是一個叢集,有一列12節車廂的火車, A 檔案佔用了第1~2節車廂,B 檔案佔用3~5節車廂,C 檔案佔用6~7節車廂,第8~12節車廂是空的。有一天我們刪除了 B 檔案,所以3~5節車廂就空出來了;接著又新增了一個需要佔用2節車廂的 D 檔案,作業系統會找到一塊符合的空間來存放,所以 D 檔案被放入3~4節車廂;一段時間過後 D 檔案的內容增加了一倍,所以就往第8和第9節車廂擺放。

這時候問題來了,當我們要存取 B 檔案時,就必須在3~4和8~9這四節車廂來回存取資料,這會降低檔案存取的速度,為了要提昇效能就必須將檔案重新排列組合,讓檔案可以連續擺放,例如將C檔案搬到3~4節車廂,B檔案搬到5~8節車廂,這樣子就可以連續存取檔案提昇效率,這也就是所謂的磁碟重組(Defragmentation)。

有一個很重要的觀念需要提醒,固態硬碟(SSD)中資料並非擺放在磁區所組成的叢集中,而是置放在有寫入次數限制(SLC約為100,000次寫入週期)的記憶體Cell中,當您執行重組時,會增加寫入的次數因而減少記憶體的壽命;另外固態硬碟在存取檔案時,是一次性將資料從所有存放的cell中取出,所以也不需要重組。