硬盤軟件故障修護方案
硬盤是筆記本中極為重要的存儲設備,計算機工作所用到的全部文件系統和數據資料的絕大多數都存儲在硬盤中。硬盤是產生計算機軟故障最主要的地方,常見的硬盤軟故障有:硬盤重要參數及文件丟失,電腦不能起動;碎片過多,電腦運行速度變慢;硬盤分區后丟失容量等。對付硬盤軟故障,只要我們肯動腦并利用一些硬盤維護工具,發揮一不怕苦、二不怕(硬盤)死的革命精神,外加膽大心細,當然還要掌握硬盤基本常識,這樣就可以輕松搞定(說的容易、做起來可不簡單 :( )。因此,我收集了大量的資料整理匯編了“硬盤軟故障完全修復手冊”,希望能在與大家一起學習的過程中掌握硬盤常見故障的排除方法,做到“自已動手、豐衣足食”,凡事不求人的目的。
大家知道,一個硬盤要能存放文件,必須經過硬盤分區,格式化等操作步驟,因為經過這些步驟之后,在硬盤中就建立起了主分區,引導分區,確定了FAT16或FAT32文件表。主分區的作用是保存硬盤中各邏輯分區在盤片上起始位置和終止位置及分區的容量大小。引導分區的作用是在固定的位置存放有操作系統文件,在電腦送電或復位時,由BIOS程序將處于固定位置的系統文件裝入內存,再將電腦控制權交給系統文件人而完成引導過程。擴展分區作為一個主分區占用了主分區表的一個表項。在擴展分區起始位置所指示的扇區(即該分區的第一個扇區)中,包含有第一個邏輯分區表,同樣從1BEH字節開始,每個分區表項占用16個字節。邏輯分區表一般包含兩個分區表項,一個指向某邏輯分區,另一個則指向下一個擴展分區。下一個擴展分區的首扇區又包含了一個邏輯分區表,這樣以此類推,擴展分區中就可以包含多個邏輯分區。下面我們就來學習一下硬盤數據的基本結構。
★ 硬盤的數據結構 ★
、 MBR(Main Boot Record 主引導記錄區)
MBR位于整個硬盤的0磁道0柱面1扇區,包括硬盤引導程序和分區表。在總共512字節的硬盤主引導扇區中,MBR只占用了其中的446個字節,其最后兩個字節“55 AA”是分區的結束標志。另外的64個字節交給了DPT(Disk Partition Table 硬盤分區表),從1BEH字節開始,共占用64個字節,包含四個分區表項。每個分區表項的長度為16個字節,它包含一個分區的引導標志、系統標志、起始和結尾的柱面號、扇區號、磁頭號以及本分區前面的扇區數和本分區所占用的扇區數。其中“引導標志”表明此分區是否可引導,即是否活動分區。當引導標志為“80”時,此分區為活動分區;“系統標志”決定了該分區的類型,如“06”為FAT16分區,“0B”為FAT32分區,“07”為NTFS分區,“63”為UNIX分區,等;起始和結尾的柱面號、扇區號、磁頭號指明了該分區的起始和終止位置。
我們假設一個硬盤分區表從1BEH字節開始的16個字節為 80 01 01 00 06 0D 68 6D 28 00 00 00 78 20 03 00硬盤分區表項的16個字節分配如下:
第1字節:是一個分區的激活標志,表示系統可引導。如是0則表示非活動分區。
第2字節:該分區起始磁頭(HEAD)號
第3字節:該分區起始扇區(Sector)號
第4字節:該分區起始的柱面(Cylinder)號
第5字節:該分區系統類型標志
第6—8字節:該分區終止磁頭(HEAD)號、分區結束的扇區號、分區結束的柱面號
第9-12字節:該分區首扇區的相對扇區號
第13-16字節:該分區占用的扇區總數
以上參數我們可以用NU 8.0中DISKEDIT工具軟件可輕松獲取,其功能非常強大,但應用不當會有很大錯誤,請各位注意使用方法。操作步驟如下:
以一臺硬盤為270 MB,分為C盤(100 MB)和D盤(170 MB)的機子(老掉牙了 ^_^)為例,在純DOS下啟動DISKEDIT → 在對象菜單(Object)上選中驅動器(Drive)和物理磁盤選項后確定 → 在對象菜單(Object)上選中分區表(Partition Table) → 在顯示菜單(View)中選擇十六進制(Hex)
以下數據為主分區信息:
000001B0: 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 80 01
000001C0: 01 00 06 0D 68 6D 28 00 - 00 00 78 20 03 00 00 00
000001D0: 41 6E 05 0D E8 AE A0 20 - 03 00 30 EE 04 00 00 00
000001E0: 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00
000001F0: 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 55 AA
② DBR(Dos Boot Record 操作系統引導記錄區)
它通常位于硬盤的0磁道1柱面1扇區,是操作系統可直接訪問的第一個扇區,它包括一個引導程序和一個被稱為BPB(BIOS Parameter Block)的本分區參數記錄表。引導程序的主要任務是當MBR將系統控制權交給它時,判斷本分區跟目錄前兩個文件是不是操作系統的引導文件(以DOS為例,即是Io.sys和Msodos.sys)。如果確定存在,就把它們讀入內存,并把控制權交給該文件。BPB參數塊記錄著本分區的起始扇區、結束扇區、文件存儲格式、硬盤介質描述符、根目錄大小、FAT個數、分配單元的大小等重要參數。DBR是由高級格式化程序(即Format等程序)所產生的。
、 FAT(File Allocation Table 文件分配表)
FAT是DOS、Windows 9X系統的文件尋址格式,位于DBR之后。
在解釋文件分配表的概念的時候,我們有必要談談簇(Cluster)的概念。文件占用磁盤空間,基本單位不是字節而是簇。一般情況下,軟盤每簇是1個扇區,硬盤每簇的扇區數與硬盤的總容量大小有關,可能是4、8、16、32、64……
同一個文件的數據并不一定完整地存放在磁盤的一個連續的區域內,而往往會分成若干段,像一條鏈子一樣存放。這種存儲方式稱為文件的鏈式存儲。由于硬盤上保存著段與段之間的連接信息(即FAT),操作系統在讀取文件時,總是能夠準確地找到各段的位置并正確讀出。
為了實現文件的鏈式存儲,硬盤上必須準確地記錄哪些簇已經被文件占用,還必須為每個已經占用的簇指明存儲后繼內容的下一個簇的簇號。對一個文件的最后一簇,則要指明本簇無后繼簇。這些都是由FAT表來保存的,表中有很多表項,每項記錄一個簇的信息。由于FAT對于文件管理的重要性,所以為了安全起見,FAT有一個備份,即在原FAT的后面再建一個同樣的FAT。初形成的FAT中所有項都標明為“未占用”,但如果磁盤有局部損壞,那么格式化程序會檢測出損壞的簇,在相應的項中標為“壞簇”,以后存文件時就不會再使用這個簇了。FAT的項數與硬盤上的總簇數相當,每一項占用的字節數也要與總簇數相適應,因為其中需要存放簇號。FAT的格式有多種,最為常見的是FAT16和FAT32。
、 DIR (Directory 根目錄區)
DIR位于第二個FAT表之后,記錄著根目錄下每個文件(目錄)的起始單元,文件的屬性等。定位文件位置時,操作系統根據DIR中的起始單元,結合FAT表就可以知道文件在硬盤中的具體位置和大小了。
、 DATA(數據區)
數據區是真正意義上的數據存儲的地方,位于DIR區之后,占據硬盤的大部分空間。當將數據復制到硬盤時,數據就存放在DATA區。