硬盤軟故障的維修
實際上,大量的硬盤故障屬于軟故障,這些故障也占了電腦故障的很大比例,而這些故障用戶是可以自己解決的,下面,我們主要針對一些經(jīng)常發(fā)生的軟故障現(xiàn)象,講述它們的維修技巧。
一、硬盤自舉失敗的維修
實際應(yīng)用中,硬盤的自舉失敗是很常見的,硬盤自舉失敗一般有如下的故障現(xiàn)象:
顯示“BASIC…OK”,進(jìn)入ROM BASIC。
顯示“Invalid partition Table”,無效分區(qū)表。
顯示“Error loading operating system”,讀引導(dǎo)記錄失敗并進(jìn)入死循環(huán)。
顯示“Operating system missing operating system”沒有操作系統(tǒng)。
顯示“NOn—System disk or disk error”
“Replace and strike any key when ready”,讀引導(dǎo)程序錯誤。
顯示“Disk boot failure”,磁盤啟動失敗陷入死循環(huán)。
顯示“Bad or missing command interpreter”,COM-MAND.COM沒有或被破壞。
1.與硬盤啟動有關(guān)的引導(dǎo)模塊及其引導(dǎo)過程
硬盤自舉引導(dǎo)是由硬盤ROM BIOS、硬盤主引導(dǎo)記錄、DOS引導(dǎo)記錄和系統(tǒng)文件完成的。ROM BIOS,共8K字節(jié),提供自檢、自舉能力及建立硬盤I/O等一系列操作,所含的硬盤自舉引導(dǎo)模塊是中斷例行程序INT19H;硬盤主引導(dǎo)記錄位于0柱0頭1扇區(qū)(物理扇區(qū)),排在邏輯0扇區(qū)之前,包括硬盤自舉引導(dǎo)程序和分區(qū)信息表,扇區(qū)的最后兩個字節(jié)為“55A”,是隱含扇區(qū),用DEBUG命令或DOS功能調(diào)用INT 21H均無法讀寫,通常用ROM BIOS提供的硬盤中斷服務(wù)程序INT13H進(jìn)行絕對讀寫,DOS分區(qū)引導(dǎo)記錄位于硬盤0柱0頭2扇區(qū)(物理扇區(qū),整個硬盤劃歸DOS分區(qū)時),也即邏輯0扇區(qū),結(jié)束標(biāo)志也是“55AA”。
系統(tǒng)加電時,電腦的執(zhí)行流程如下:
CPU進(jìn)入復(fù)位狀態(tài)井強(qiáng)置CS:IP=FFF:0000H,即由該地址取得第一條指令(跳轉(zhuǎn)指令)。
系統(tǒng)轉(zhuǎn)移到ROM BIOS程序區(qū),執(zhí)行自檢程序,若自檢成功,則發(fā)指令I(lǐng)NT19H進(jìn)行系統(tǒng)引導(dǎo),否則揭示錯誤信息并進(jìn)入死循環(huán)。
INT19H首先試圖復(fù)位軟盤系統(tǒng),若成功,則讀軟盤第1扇的DOS引導(dǎo)記錄到起始地址為0000:7C00H的內(nèi)存單元執(zhí)行,繼而進(jìn)入DOS,否則復(fù)位硬盤系統(tǒng)。
成功則讀硬盤主引導(dǎo)記錄到起始地址為0000:7C00H的內(nèi)存單元,并執(zhí)行主引導(dǎo)程序,若復(fù)位失敗,讀主引導(dǎo)記錄時出錯或硬盤物理第1扇最后兩個字節(jié)不是“55AA”,均顯示:
“BASIC…OK”轉(zhuǎn)入ROM BASIC。
硬盤主引導(dǎo)程序的主要功能是找出當(dāng)前的活動分區(qū),即查看分區(qū)信息表中4個分區(qū)引導(dǎo)標(biāo)志,當(dāng)DOS分區(qū)的引導(dǎo)標(biāo)志為80H,而其他分區(qū)為00H,就將DOS引導(dǎo)記錄讀到內(nèi)存0000:7C00H處。
若4個分區(qū)均沒有引導(dǎo)標(biāo)志(80H),則發(fā)INT18指令,進(jìn)入ROM BASIC;
若引導(dǎo)標(biāo)志(80H)多于1個或某分區(qū)為引導(dǎo)標(biāo)志既非80H,又非00H,則顯示“Invalid partition table”并進(jìn)入死循環(huán)。
找到活動分區(qū)后,主引導(dǎo)記錄程序試圖將DOS引導(dǎo)記錄讀到內(nèi)存0000:7C00H處,若讀失敗,則顯示:“Error LoadongSystem”并進(jìn)入死循環(huán)。
讀成功則檢查DOS引導(dǎo)扇區(qū)最后兩個字節(jié)是否為“55AA”,正確則跳轉(zhuǎn)0000:7C00H執(zhí)行剛讀入的DOS引導(dǎo)程序,若否,則顯示:
“Missing operating system”并進(jìn)入死循環(huán)。
引導(dǎo)程序以AH=OINT13H指令復(fù)位磁盤系統(tǒng),若失敗,則顯示:
“Non—system disk or disk error”
“Replace and strike any key when ready”
等待鍵盤輸入,以轉(zhuǎn)向INT19H進(jìn)行重新引導(dǎo)。
若成功,則計算文件目錄區(qū)以及文件數(shù)據(jù)區(qū)的起始位扇區(qū)號,并讀根目錄第1扇到0050:007H處,若讀失敗,則顯示上一錯誤信息。
若正確則讀“IBMBIO.COM”文件到內(nèi)存。若讀錯誤,則顯示:
“Disk boot failure”陷入死循環(huán)。
若讀成功,則由IBMBIO.COM,IBMDOS.COM和COMMAND.COM三個系統(tǒng)文件繼續(xù)進(jìn)行DOS的安裝,在這期間若找不到COMMAND.COM或該文件已損壞,則顯示“Bod or missing command interpreter”。
否則正常引導(dǎo),直到出現(xiàn)系統(tǒng)提示符,等待用戶鍵入DOS命令。
至此,系統(tǒng)進(jìn)入DOS工作狀態(tài)。
2.硬盤自舉失敗的修復(fù)
若硬盤設(shè)備正常,硬盤自舉失敗與硬盤主引導(dǎo)模塊、DOS引導(dǎo)模塊和系統(tǒng)文件密切相關(guān)。譬如開機(jī)進(jìn)入ROM BASIC很可能是硬盤主引導(dǎo)記錄損壞;而引導(dǎo)失敗揭示錯誤信息時,則與分區(qū)信息表、DOS引導(dǎo)記錄和系統(tǒng)文件的損壞或丟失有關(guān)。對于不同的錯誤信息,應(yīng)該找出其癥結(jié)所在,繼而采取與之相應(yīng)的修復(fù)手法,現(xiàn)分述如下:
(1)修復(fù)硬盤的主引導(dǎo)記錄
采用硬盤主引導(dǎo)模塊的通用性,由另一臺正常且硬盤分區(qū)情況相同的微機(jī)上獲取該模塊,然后將之寫回發(fā)生故障的硬盤,此法簡單快捷,即使對主引導(dǎo)塊結(jié)構(gòu)了解甚淺,操作起來也不感到困難,步驟如下:
①啟動正常的微機(jī),并在驅(qū)動器A置一已格式化的空盤,鍵入以下語句序列:
C>DEBUG
—A 100
????:0100 MOV AX,0201;讀1個扇區(qū)
????:0103 MOV BX,1000;置緩沖區(qū)CS:1000
????:0106 MOV CX,0001;讀0柱第1扇
????:0109 MOV DX,0080;硬盤0號磁頭
????:010C INT 13;硬盤I/O中斷
????:010E INT 20;程序終結(jié)。
????:0110
—G=100
—W 1000 0 50 1
至此,已得到完好的硬盤主引導(dǎo)塊并寫在軟盤邏輯50H扇區(qū)。
②以DOS軟盤啟動出現(xiàn)故障的微機(jī),進(jìn)入DEBUG后在驅(qū)動器A置入上述軟盤,在DEBUG狀態(tài)鍵入語句序列:
—L 1000 0 501
—A 100
????:0100 MOV AX,0301:寫1個扇區(qū)
????:0103 MOV BX,1000
????:0106 MOV DX,0001
????:0109 MOV DX,0080
????:010C INT 13
????:010E INT 20
????:0110
—G=100
至此,硬盤主引導(dǎo)記錄修復(fù)完畢。