一分鐘教會(huì)菜鳥(niǎo)認(rèn)識(shí)硬盤(pán)
1.硬盤(pán)邏輯壞道可以修復(fù),而物理壞道不可修復(fù)。實(shí)際情況是,壞道并不分為邏輯壞道和物理壞道,不知道誰(shuí)發(fā)明這兩個(gè)概念,反正廠家提供的技術(shù)資料中都沒(méi)有這樣的概念,倒是分為按邏輯地址記錄的壞扇區(qū)和按物理地址記錄的壞扇區(qū)。
2.硬盤(pán)出廠時(shí)沒(méi)有壞道,用戶發(fā)現(xiàn)壞道就意味著硬盤(pán)進(jìn)入危險(xiǎn)狀態(tài)。實(shí)際情況是,每個(gè)硬盤(pán)出廠前都記錄有一定數(shù)量的壞道,有些數(shù)量甚至達(dá)到數(shù)千上萬(wàn)個(gè)壞扇區(qū),相比之下,用戶發(fā)現(xiàn)一兩個(gè)壞道算多大危險(xiǎn)?
3.硬盤(pán)不認(rèn)盤(pán)就沒(méi)救,0磁道壞可以用分區(qū)方法來(lái)解決。實(shí)際情況是,有相當(dāng)部分不認(rèn)的硬盤(pán)也可以修好,而0磁道壞時(shí)很難分區(qū)。
Bad
sector
(壞扇區(qū))
在硬盤(pán)中無(wú)法被正常訪問(wèn)或不能被正確讀寫(xiě)的扇區(qū)都稱為Bad
sector。一個(gè)扇區(qū)能存儲(chǔ)512Bytes的數(shù)據(jù),如果在某個(gè)扇區(qū)中有任何一個(gè)字節(jié)不能被正確讀寫(xiě),則這個(gè)扇區(qū)為Bad
sector。除了存儲(chǔ)512Bytes外,每個(gè)扇區(qū)還有數(shù)十個(gè)Bytes信息,包括標(biāo)識(shí)(ID)、校驗(yàn)值和其它信息。這些信息任何一個(gè)字節(jié)出錯(cuò)都會(huì)導(dǎo)致該扇區(qū)變“Bad”。例如,在低級(jí)格式化的過(guò)程中每個(gè)扇區(qū)都分配有一個(gè)編號(hào),寫(xiě)在ID中。如果ID部分出錯(cuò)就會(huì)導(dǎo)致這個(gè)扇區(qū)無(wú)法被訪問(wèn)到,則這個(gè)扇區(qū)屬于Bad
sector。有一些Bad
sector能夠通過(guò)低級(jí)格式化重寫(xiě)這些信息來(lái)糾正。
Bad
cluster
(壞簇)
在用戶對(duì)硬盤(pán)分區(qū)并進(jìn)行高級(jí)格式化后,每個(gè)區(qū)都會(huì)建立文件分配表(File
Allocation
Table,
FAT)。FAT中記錄有該區(qū)內(nèi)所有cluster(簇)的使用情況和相互的鏈接關(guān)系。如果在高級(jí)格式化(或工具軟件的掃描)過(guò)程中發(fā)現(xiàn)某個(gè)cluster使用的扇區(qū)包括有壞扇區(qū),則在FAT中記錄該cluster為Bad
cluster,并在以后存放文件時(shí)不再使用該cluster,以避免數(shù)據(jù)丟失。有時(shí)病毒或惡意軟件也可能在FAT中將無(wú)壞扇區(qū)的正常cluster標(biāo)記為Bad
cluster,
導(dǎo)致正常cluster不能被使用。
這里需要強(qiáng)調(diào)的是,每個(gè)cluster包括若干個(gè)扇區(qū),只要其中存在一個(gè)壞扇區(qū),則整個(gè)cluster中的其余扇區(qū)都一起不再被使用.
Defect
(缺陷)
在硬盤(pán)內(nèi)部中所有存在缺陷的部分都被稱為Defect。
如果某個(gè)磁頭狀態(tài)不好,則這個(gè)磁頭為Defect
head。
如果盤(pán)面上某個(gè)Track(磁道)不能被正常訪問(wèn),則這Track為Defect
Track.
如果某個(gè)扇區(qū)不能被正常訪問(wèn)或不能正確記錄數(shù)據(jù),則該扇區(qū)也稱為Defect
Sector.
可以認(rèn)為Bad
sector
等同于
Defect
sector.
從總的來(lái)說(shuō),某個(gè)硬盤(pán)只要有一部分存在缺陷,就稱這個(gè)硬盤(pán)為Defect
hard
disk.
P-list
(永久缺陷表)
現(xiàn)在的硬盤(pán)密度越來(lái)越高,單張盤(pán)片上存儲(chǔ)的數(shù)據(jù)量超過(guò)40Gbytes.
硬盤(pán)廠家在生產(chǎn)盤(pán)片過(guò)程極其精密,但也極難做到100%的完美,硬盤(pán)盤(pán)面上或多或少存在一些缺陷。廠家在硬盤(pán)出廠前把所有的硬盤(pán)都進(jìn)行低級(jí)格式化,在低級(jí)格式化過(guò)程中將自動(dòng)找出所有defect
track和defect
sector,記錄在P-list中。并且在對(duì)所有磁道和扇區(qū)的編號(hào)過(guò)程中,將skip(跳過(guò))這些缺陷部分,讓用戶永遠(yuǎn)不能用到它們。這樣,用戶在分區(qū)、格式化、檢查剛購(gòu)買的新硬盤(pán)時(shí),很難發(fā)現(xiàn)有問(wèn)題。一般的硬盤(pán)都在P-list中記錄有一定數(shù)量的defect,
少則數(shù)百,多則數(shù)以萬(wàn)計(jì)。如果是SCSI硬盤(pán)的話可以找到多種通用軟件查看到P-list,因?yàn)楦鞣N牌子的SCSI硬盤(pán)使用兼容的SCSI指令集。而不同牌子不同型號(hào)的IDE硬盤(pán),使用各自不同的指令集,想查看其P-list要用針對(duì)性的專業(yè)軟件。
G-list
(增長(zhǎng)缺陷表)
用戶在使用硬盤(pán)過(guò)程中,有可能會(huì)發(fā)現(xiàn)一些新的defect
sector。
按“三包”規(guī)定,只要出現(xiàn)一個(gè)defect
sector,商家就應(yīng)該為用戶換或修,F(xiàn)在大容量的硬盤(pán)出現(xiàn)一個(gè)defect
sector概率實(shí)在很大,這樣的話硬盤(pán)商家就要為售后服務(wù)忙碌不已了。于是,硬盤(pán)廠商設(shè)計(jì)了一個(gè)自動(dòng)修復(fù)機(jī)制,叫做Automatic
Reallcation。有大多數(shù)型號(hào)的硬盤(pán)都有這樣的功能:在對(duì)硬盤(pán)的讀寫(xiě)過(guò)程中,如果發(fā)現(xiàn)一個(gè)defect
sector,則自動(dòng)分配一個(gè)備用扇區(qū)替換該扇區(qū),并將該扇區(qū)及其替換情況記錄在G-list中。這樣一來(lái),少量的defect
sector對(duì)用戶的使用沒(méi)有太大的影響。
也有一些硬盤(pán)自動(dòng)修復(fù)機(jī)制的激發(fā)條件要嚴(yán)格一些,需要用某些軟件來(lái)判斷defect
sector,并通過(guò)某個(gè)端口(據(jù)說(shuō)是50h)調(diào)用自動(dòng)修復(fù)機(jī)制。比如常用的Lformat,
ADM,DM中的Zero
fill,Norton中的Wipeinfo和校正工具,西數(shù)工具包中的wddiag,
IBM的DFT中的Erase等。這些工具之所以能在運(yùn)行過(guò)后消除了一些“壞道”,很重要的原因就在這Automatic
Reallcation(當(dāng)然還有其它原因),而不能簡(jiǎn)單地概括這些“壞道”是什么“邏輯壞道”或“假壞道”。
如果哪位被誤導(dǎo)中毒太深的讀者不相信這個(gè)事實(shí),等他找到能查看G-list的專業(yè)工具后就知道,這些工具運(yùn)行過(guò)后,G-list將會(huì)增加多少記錄!“邏輯壞道”或“假壞道”有必要記錄在G-list中并用其它扇區(qū)替換么?
當(dāng)然,G-list的記錄不會(huì)無(wú)限制,所有的硬盤(pán)都會(huì)限定在一定數(shù)量范圍內(nèi)。如火球系列限度是500,美鉆二代的限度是636,西數(shù)BB的限度是508,等等。超過(guò)限度,Automatic
Reallcation就不能再起作用。這就是為何少量的“壞道”可以通過(guò)上述工具修復(fù)(有人就概括為:“邏輯壞道”可以修復(fù)),而壞道多了不能通過(guò)這些工具修復(fù)(又有人概括為:“物理壞道”不可以修復(fù))。
Bad
track
(壞道)
這個(gè)概念源于十多年前小容量硬盤(pán)(100M以下),當(dāng)時(shí)的硬盤(pán)在外殼上都貼有一張小表格,上面列出該硬盤(pán)中有缺陷的磁道位置(新硬盤(pán)也有)。在對(duì)這個(gè)硬盤(pán)進(jìn)行低級(jí)格式化時(shí)(如用ADM或DM
5.0等工具,或主板中的低格工具),需要填入這些Bad
track的位置,
以便在低格過(guò)程中跳過(guò)這些磁道。現(xiàn)在的大容量硬盤(pán)在結(jié)構(gòu)上與那些小容量硬盤(pán)相差極大,這個(gè)概念用在大容量硬盤(pán)上有點(diǎn)牽強(qiáng)。
深入了解硬盤(pán)參數(shù)
正常情況下,硬盤(pán)在接通電源之后,都要進(jìn)行“初始化”過(guò)程(也可以稱為“自檢”)。這時(shí),會(huì)發(fā)出一陣子自檢聲音,這些聲音長(zhǎng)短和規(guī)律視不同牌子硬盤(pán)而各不一樣,但同型號(hào)的正常硬盤(pán)的自檢聲音是一樣的。
有經(jīng)驗(yàn)的人都知道,這些自檢聲音是由于硬盤(pán)內(nèi)部的磁頭尋道及歸位動(dòng)作而發(fā)出的。為什么硬盤(pán)剛通電就需要執(zhí)行這么多動(dòng)作呢?簡(jiǎn)單地說(shuō),是硬盤(pán)在讀取的記錄在盤(pán)片中的初始化參數(shù)。
一般熟悉硬盤(pán)的人都知道,硬盤(pán)有一系列基本參數(shù),包括:牌子、型號(hào)、容量、柱面數(shù)、磁頭數(shù)、每磁道扇區(qū)數(shù)、系列號(hào)、緩存大小、轉(zhuǎn)速、S.M.A.R.T值等。其中一部分參數(shù)就寫(xiě)在硬盤(pán)的標(biāo)簽上,有些則要通過(guò)軟件才能測(cè)出來(lái)。這些參數(shù)僅僅是初始化參數(shù)的一小部分,盤(pán)片中記錄的初始化參數(shù)有數(shù)十甚至數(shù)百個(gè)!硬盤(pán)的CPU在通電后自動(dòng)尋找BIOS中的啟動(dòng)程序,然后根據(jù)啟動(dòng)程序的要求,依次在盤(pán)片中指定的位置讀取相應(yīng)的參數(shù)。如果某一項(xiàng)重要參數(shù)找不到或出錯(cuò),啟動(dòng)程序無(wú)法完成啟動(dòng)過(guò)程,硬盤(pán)就進(jìn)入保護(hù)模式。在保護(hù)模式下,用戶可能看不到硬盤(pán)的型號(hào)與容量等參數(shù),或者無(wú)法進(jìn)入任何讀寫(xiě)操作。近來(lái)有些系列的硬盤(pán)就是這個(gè)原因而出現(xiàn)類似的通病,如:FUJITSU
MPG系列自檢聲正常卻不認(rèn)盤(pán),MAXTOR美鉆系列認(rèn)不出正確型號(hào)及自檢后停轉(zhuǎn),WD
BB
EB系列能正常認(rèn)盤(pán)卻拒絕讀寫(xiě)操作等。
不同牌子不同型號(hào)的硬盤(pán)有不同的初始化參數(shù)集,以較熟悉的Fujitsu硬盤(pán)為例,高朋簡(jiǎn)要地講解其中一部分參數(shù),以便讀者理解內(nèi)部初始化參數(shù)的原理。
通過(guò)專用的程序控制硬盤(pán)的CPU,根據(jù)BIOS程序的需要,依次讀出初始化參數(shù)集,按模塊分別存放為69個(gè)不同的文件,文件名也與BIOS程序中調(diào)用到的參數(shù)名稱一致。其中部分參數(shù)模塊的簡(jiǎn)要說(shuō)明如下:
DM硬盤(pán)內(nèi)部的基本管理程序
PL永久缺陷表
TS缺陷磁道表
HS實(shí)際物理磁頭數(shù)及排列順序
SM最高級(jí)加密狀態(tài)及密碼
SU用戶級(jí)加密狀態(tài)及密碼
CI
硬件信息,包括所用的CPU型號(hào),BIOS版本,磁頭種類,磁盤(pán)碟片種類等
FI生產(chǎn)廠家信息
WE寫(xiě)錯(cuò)誤記錄表
RE讀錯(cuò)誤記錄表
SI容量設(shè)定,指定允許用戶使用的最大容量(MAX
LBA),轉(zhuǎn)換為外部邏輯磁頭數(shù)(一般為16)和邏輯每磁道扇區(qū)數(shù)(一般為63)
ZP區(qū)域分配信息,將每面盤(pán)片劃分為十五個(gè)區(qū)域,各個(gè)區(qū)域上分配的不同的扇區(qū)數(shù)量,從而計(jì)算出最大的物理容量。
這些參數(shù)一般存放在普通用戶訪問(wèn)不到的位置,有些是在物理零磁道以前,可以認(rèn)為是在負(fù)磁道的位置。可能每個(gè)參數(shù)占用一個(gè)模塊,也可能幾個(gè)參數(shù)占用同一模塊。模塊大小不一樣,有些模塊才一個(gè)字節(jié),有些則達(dá)到64K字節(jié)。這些參數(shù)并不是連續(xù)存放的,而是各有各的固定位置。
讀出內(nèi)部初始化參數(shù)表后,就可以分析出每個(gè)模塊是否處于正常狀態(tài)。當(dāng)然,也可以修正這些參數(shù),重新寫(xiě)回盤(pán)片中指定的位置。這樣,就可以把一些因?yàn)閰?shù)錯(cuò)亂而無(wú)法正常使用的硬盤(pán)“修復(fù)”回正常狀態(tài)。
如果讀者有興趣進(jìn)一步研究,不妨將硬盤(pán)電路板上的ROM芯片取下,用寫(xiě)碼機(jī)讀出其中的BIOS程序,可以在程序段中找到以上所列出的參數(shù)名稱。
硬盤(pán)修復(fù)之低級(jí)格式化
熟悉硬盤(pán)的人都知道,在必要的時(shí)候需要對(duì)硬盤(pán)做“低級(jí)格式化”(下面簡(jiǎn)稱“低格”)。進(jìn)行低格所使用的工具也有多種:有用廠家專用設(shè)備做的低格,有用廠家提供的軟件工具做的低格,有用DM工具做的低格,有用主板BIOS中的工具做的低格,有用Debug工具做的低格,還有用專業(yè)軟件做低格……
不同的工具所做的低格對(duì)硬盤(pán)的作用各不一樣。有些人覺(jué)得低格可以修復(fù)一部分硬盤(pán),有些人則覺(jué)得低格十分危險(xiǎn),會(huì)嚴(yán)重?fù)p害硬盤(pán)。用過(guò)多種低格工具,認(rèn)為低格是修復(fù)硬盤(pán)的一個(gè)有效手段。下面總結(jié)一些關(guān)于低格的看法,與廣大網(wǎng)友交流。
大家關(guān)心的一個(gè)問(wèn)題:“低格過(guò)程到底對(duì)硬盤(pán)進(jìn)行了什么操作?”實(shí)踐表明低格過(guò)程有可能進(jìn)行下列幾項(xiàng)工作,不同的硬盤(pán)的低格過(guò)程相差很大,不同的軟件的低格過(guò)程也相差很大。
A.
對(duì)扇區(qū)清零和重寫(xiě)校驗(yàn)值
低格過(guò)程中將每個(gè)扇區(qū)的所有字節(jié)全部置零,并將每個(gè)扇區(qū)的校驗(yàn)值也寫(xiě)回初始值,這樣可以將部分缺陷糾正過(guò)來(lái)。譬如,由于扇區(qū)數(shù)據(jù)與該扇區(qū)的校驗(yàn)值不對(duì)應(yīng),通常就被報(bào)告為校驗(yàn)錯(cuò)誤(ECC
Error)。如果并非由于磁介質(zhì)損傷,清零后就很有可能將扇區(qū)數(shù)據(jù)與該扇區(qū)的校驗(yàn)值重新對(duì)應(yīng)起來(lái),而達(dá)到“修復(fù)”該扇區(qū)的功效。這是每種低格工具和每種硬盤(pán)的低格過(guò)程最基本的操作內(nèi)容,同時(shí)這也是為什么通過(guò)低格能“修復(fù)大量壞道”的基本原因。另外,DM中的Zero
Fill(清零)操作與IBM
DFT工具中的Erase操作,也有同樣的功效。
B.
對(duì)扇區(qū)的標(biāo)識(shí)信息重寫(xiě)
在多年以前使用的老式硬盤(pán)(如采用ST506接口的硬盤(pán)),需要在低格過(guò)程中重寫(xiě)每個(gè)扇區(qū)的標(biāo)識(shí)(ID)信息和某些保留磁道的其他一些信息,當(dāng)時(shí)低格工具都必須有這樣的功能。但現(xiàn)在的硬盤(pán)結(jié)構(gòu)已經(jīng)大不一樣,如果再使用多年前的工具來(lái)做低格會(huì)導(dǎo)致許多令人痛苦的意外。難怪經(jīng)常有人在痛苦地高呼:“危險(xiǎn)!切勿低格硬盤(pán)!我的硬盤(pán)已經(jīng)毀于低格!”
C.
對(duì)扇區(qū)進(jìn)行讀寫(xiě)檢查,并嘗試替換缺陷扇區(qū)
有些低格工具會(huì)對(duì)每個(gè)扇區(qū)進(jìn)行讀寫(xiě)檢查,如果發(fā)現(xiàn)在讀過(guò)程或?qū)戇^(guò)程出錯(cuò),就認(rèn)為該扇區(qū)為缺陷扇區(qū)。然后,調(diào)用通用的自動(dòng)替換扇區(qū)(Automatic
reallocation
sector)指令,嘗試對(duì)該扇區(qū)進(jìn)行替換,也可以達(dá)到“修復(fù)”的功效。
D.
對(duì)所有物理扇區(qū)進(jìn)行重新編號(hào)
編號(hào)的依據(jù)是P-list中的記錄及區(qū)段分配參數(shù)(該參數(shù)決定各個(gè)磁道劃分的扇區(qū)數(shù)),經(jīng)過(guò)編號(hào)后,每個(gè)扇區(qū)都分配到一個(gè)特定的標(biāo)識(shí)信息(ID)。編號(hào)時(shí),會(huì)自動(dòng)跳過(guò)P-list中所記錄的缺陷扇區(qū),使用戶無(wú)法訪問(wèn)到那些缺陷扇區(qū)(用戶不必在乎永遠(yuǎn)用不到的地方的好壞)。如果這個(gè)過(guò)程半途而廢,有可能導(dǎo)致部分甚至所有扇區(qū)被報(bào)告為標(biāo)識(shí)不對(duì)(Sector
ID
not
found,
IDNF)。要特別注意的是,這個(gè)編號(hào)過(guò)程是根據(jù)真正的物理參數(shù)來(lái)進(jìn)行的,如果某些低格工具按邏輯參數(shù)(以
16heads
63sector為最典型)來(lái)進(jìn)行低格,是不可能進(jìn)行這樣的操作。
E.
寫(xiě)磁道伺服信息,對(duì)所有磁道進(jìn)行重新編號(hào)
有些硬盤(pán)允許將每個(gè)磁道的伺服信息重寫(xiě),并給磁道重新賦予一個(gè)編號(hào)。編號(hào)依據(jù)P-list或TS記錄來(lái)跳過(guò)缺陷磁道(defect
track),使用戶無(wú)法訪問(wèn)(即永遠(yuǎn)不必使用)這些缺陷磁道。這個(gè)操作也是根據(jù)真正的物理參數(shù)來(lái)進(jìn)行。
F.
寫(xiě)狀態(tài)參數(shù),并修改特定參數(shù)
有些硬盤(pán)會(huì)有一個(gè)狀態(tài)參數(shù),記錄著低格過(guò)程是否正常結(jié)束,如果不是正常結(jié)束低格,會(huì)導(dǎo)致整個(gè)硬盤(pán)拒絕讀寫(xiě)操作,這個(gè)參數(shù)以富士通IDE硬盤(pán)和希捷SCSI硬盤(pán)為典型。有些硬盤(pán)還可能根據(jù)低格過(guò)程的記錄改寫(xiě)某些參數(shù)。
下面我們來(lái)看看一些低格工具做了些什么操作:
1.
DM中的Low
level
format
進(jìn)行了A和B操作。速度較快,極少損壞硬盤(pán),但修復(fù)效果不明顯。
2.
Lformat
進(jìn)行了A、B、C操作。由于同時(shí)進(jìn)行了讀寫(xiě)檢查,操作速度較慢,可以替換部分缺陷扇區(qū)。但其使用的是邏輯參數(shù),所以不可能進(jìn)行D、E和F的操作。遇到IDNF錯(cuò)誤或伺服錯(cuò)誤時(shí)很難通過(guò),半途會(huì)中斷。
3.
SCSI卡中的低格工具
由于大部SCSI硬盤(pán)指令集通用,該工具可以對(duì)部分SCSI硬盤(pán)進(jìn)行A、B、C、D、F操作,對(duì)一部分SCSI硬盤(pán)(如希捷)修復(fù)作用明顯。遇到缺陷磁道無(wú)法通過(guò)。同時(shí)也由于自動(dòng)替換功能,檢查到的缺陷數(shù)量超過(guò)G-list限度時(shí)將半途結(jié)束,硬盤(pán)進(jìn)入拒絕讀寫(xiě)狀態(tài)。
4.
專業(yè)的低格工具
一般進(jìn)行A、B、D、E、F操作。通常配合伺服測(cè)試功能(找出缺陷磁道記入TS),介質(zhì)測(cè)試功能(找出缺陷扇區(qū)記入P-list),使用的是廠家設(shè)定的低格程序(通常存放在BIOS或某一個(gè)特定參數(shù)模塊中),自動(dòng)調(diào)用相關(guān)參數(shù)進(jìn)行低格。一般不對(duì)缺陷扇區(qū)進(jìn)行替換操作。低格完成后會(huì)將許多性能參數(shù)設(shè)定為剛出廠的狀態(tài)。
問(wèn)1:低格能不能修復(fù)硬盤(pán)?
答1:合適的低格工具能在很大程度上修復(fù)硬盤(pán)缺陷。
問(wèn)2:低格會(huì)不會(huì)損傷硬盤(pán)?
答2:正確的低格過(guò)程絕不會(huì)在物理上損傷硬盤(pán)。用不正確的低格工具則可能嚴(yán)重破壞硬盤(pán)的信息,而導(dǎo)致硬盤(pán)不能正常使用。
問(wèn)3:什么時(shí)候需要對(duì)硬盤(pán)進(jìn)行低格?
答3:在修改硬盤(pán)的某些參數(shù)后必須進(jìn)行低格,如添加P-list記錄或TS記錄,調(diào)整區(qū)段參數(shù),調(diào)整磁頭排列等。另外,
每個(gè)用戶都可以用適當(dāng)?shù)透窆ぞ咝迯?fù)硬盤(pán)缺陷,注意:必須是適當(dāng)?shù)牡透窆ぞ摺?/p>
問(wèn)4:什么樣的低格工具才可以稱為專業(yè)低格工具?
答4:能調(diào)用特定型號(hào)的記錄在硬盤(pán)內(nèi)部的廠家低格程序,并能調(diào)用到正確參數(shù)集對(duì)硬盤(pán)進(jìn)行低格,這樣的低格工具均可稱為專業(yè)低格工具。
看圖認(rèn)識(shí)硬盤(pán)(菜鳥(niǎo)必讀)
看圖認(rèn)識(shí)硬盤(pán)(菜鳥(niǎo)必讀)
硬盤(pán)是系統(tǒng)中極為重要的設(shè)備,存儲(chǔ)著大量的用戶資料和信息。如今的硬盤(pán)容量動(dòng)輒就是10GB以上,型號(hào)更是五花八門(mén),因此我們有必要了解一些硬盤(pán)的基本知識(shí),才能在紛繁復(fù)雜的市場(chǎng)中認(rèn)清所需要的硬盤(pán)。
從接口上看,硬盤(pán)主要分為IDE接口和SCSI接口兩種。由于價(jià)格原因,普通用戶通常只能接觸到IDE接口的硬盤(pán),因此下面我們也以IDE硬盤(pán)為主進(jìn)行講解。
1.緩存
這就是我們經(jīng)常說(shuō)的緩存,其實(shí)就和內(nèi)存條上的內(nèi)存顆粒一樣,是一片SDRAM。緩存的作用主要是和硬盤(pán)內(nèi)部交換數(shù)據(jù),我們平時(shí)所說(shuō)的內(nèi)部傳輸率其實(shí)也就是緩存和硬盤(pán)內(nèi)部之間的數(shù)據(jù)傳輸速率。
2.電源接口
和光驅(qū)一樣,硬盤(pán)的電源接口也是由4針組成。其中,紅線所對(duì)應(yīng)的+5V電壓輸入,黃線對(duì)應(yīng)輸出的是+12V電壓,F(xiàn)在的硬盤(pán)電源接口都是梯形,不會(huì)因?yàn)椴宸捶较蚨褂脖P(pán)燒毀。
3.跳線
跳線的作用是使IDE設(shè)備在工作時(shí)能夠一致。當(dāng)一個(gè)IDE接口上接兩個(gè)設(shè)備時(shí),就需要設(shè)置跳線為“主盤(pán)”或者“從盤(pán)”,具體的設(shè)置可以參考硬盤(pán)上的說(shuō)明。
4.IDE接口
硬盤(pán)IDE接口是和主板IDE接口進(jìn)行數(shù)據(jù)交換的通道。我們通常說(shuō)的UDMA/33模式就是指的緩存和主板IDE接口之間的數(shù)據(jù)傳輸率(也就是外部數(shù)據(jù)傳輸率)為33.3MB/s,目前的接口規(guī)范已經(jīng)從UDMA/33發(fā)展到UDMA/66和UDMA/100。但是由于內(nèi)部傳輸率的限制,實(shí)際上外部傳輸率達(dá)不到理論上的那么高。
為了使數(shù)據(jù)傳輸更加可靠,UDMA/66模式要求使用80針的數(shù)據(jù)傳輸線,增加接地功能,使得高速傳輸?shù)臄?shù)據(jù)不致出錯(cuò)。在UDMA/66線的使用中還要注意,其蘭色的一端要接在主板IDE口上,而黑色的一端接在硬盤(pán)上。
5.電容
硬盤(pán)存儲(chǔ)了大量的數(shù)據(jù),為了保證數(shù)據(jù)傳輸時(shí)的安全,需要高質(zhì)量的電容使電路穩(wěn)定。這種黃色的鉭電容質(zhì)量穩(wěn)定,屬于優(yōu)質(zhì)元件,但價(jià)格較貴,所以一般用量都比較少,只是在最需要的地方才使用。
6.控制芯片
硬盤(pán)的主要控制芯片,負(fù)責(zé)數(shù)據(jù)的交換和處理,是硬盤(pán)的核心部件之一。硬盤(pán)的電路板可以互相換(當(dāng)然要同型號(hào)的),在硬盤(pán)不能讀出數(shù)據(jù)的時(shí)候,只要硬盤(pán)本身沒(méi)有物理?yè)p壞且能夠加電,我們就可以通過(guò)更換電路板的方式來(lái)使硬盤(pán)“起死回生”。
硬盤(pán)低級(jí)格式化知識(shí)介紹
硬盤(pán)低格格式化是對(duì)硬盤(pán)最徹底的初始化方式,經(jīng)過(guò)低格后的硬盤(pán),原來(lái)保護(hù)的數(shù)據(jù)將全部丟失,所以一般來(lái)說(shuō)低格硬盤(pán)是非常不可取的,只有非常必要的時(shí)候才能低格硬盤(pán)。而這個(gè)所謂的必要時(shí)候有兩種,一是硬盤(pán)出廠前,硬盤(pán)廠會(huì)對(duì)硬盤(pán)進(jìn)行一次低級(jí)格式化;另一個(gè)是當(dāng)硬盤(pán)出現(xiàn)某種類型的壞道時(shí),使用低級(jí)格式化能起到一定的緩解或者屏蔽作用。
對(duì)于第一種情況,這里不用多說(shuō)了,因?yàn)橛脖P(pán)出廠前的低格工作只有硬盤(pán)工程師們才會(huì)接觸到,對(duì)于普通用戶而言,根本無(wú)須考慮這方面的事情。至于第二種情況,是什么類型的壞道時(shí)才需要低格呢?在說(shuō)明這個(gè)關(guān)鍵性問(wèn)題前,先來(lái)看看硬盤(pán)壞道的類型。
總的來(lái)說(shuō),壞道可以分為物理壞道和邏輯壞道。其中邏輯壞道相對(duì)比較容易解決,它指硬盤(pán)在寫(xiě)入時(shí)受到意久干擾,造成有ECC錯(cuò)誤。從過(guò)程上講,它是指硬盤(pán)在寫(xiě)入數(shù)據(jù)的時(shí)候,會(huì)用ECC的邏輯重新組合數(shù)據(jù),一般操作系統(tǒng)要寫(xiě)入512個(gè)字節(jié),但實(shí)際上硬盤(pán)會(huì)多寫(xiě)幾十個(gè)字節(jié),而且所有的這些字節(jié)都要用ECC進(jìn)行校驗(yàn)編碼,如果原始字節(jié)算出的ECC校正碼和讀出字節(jié)算出的ECC不同,這樣就會(huì)產(chǎn)生ECC錯(cuò)誤,這就是所謂的物理壞道產(chǎn)生原因。
至于物理壞道,它對(duì)硬盤(pán)的損壞更具致命性,它也有軟性和硬性物理壞道的區(qū)別,磁盤(pán)表面物理?yè)p壞就是硬性的,這是無(wú)法修復(fù)的。而由于外界影響而造成數(shù)據(jù)的寫(xiě)入錯(cuò)誤時(shí),系統(tǒng)也會(huì)認(rèn)為是物理壞道,而這種物理壞道是可以使用一些硬盤(pán)工具(例如硬盤(pán)廠商提供的檢測(cè)修復(fù)軟件)來(lái)修復(fù),此外,對(duì)于微小的硬盤(pán)表面損傷,一些硬盤(pán)工具(例如西部數(shù)據(jù)的Data
Lifeguard
Tools)就可以重新定向到一個(gè)好的保留扇區(qū)來(lái)修正錯(cuò)誤。
對(duì)于這些壞道類型,硬性的物理壞道肯定是無(wú)法修復(fù)的,它是對(duì)硬盤(pán)表面的一種最直接的損壞,所以即使再低格或者使用硬盤(pán)工具也無(wú)法修復(fù)(除非是非常微小的損壞,部份工具可以將這部份壞道保留不用以此達(dá)到解決目的)。
對(duì)于硬盤(pán)上出現(xiàn)邏輯壞道或者軟性物理壞道,用戶可以試試使用低級(jí)格式化來(lái)達(dá)到屏蔽壞道的作用,但這里需要指出,屏蔽壞道并不等于消除壞道了,低格硬盤(pán)能把原來(lái)硬盤(pán)內(nèi)所有分區(qū)都刪除,但壞道卻依然存在,屏蔽只是將壞道隱藏起來(lái),不讓用戶在存儲(chǔ)數(shù)據(jù)時(shí)使用這些壞道,這樣能在一定程度上保證用戶數(shù)據(jù)的可靠性,但壞道卻會(huì)隨著硬盤(pán)分區(qū)、格式化次數(shù)的增長(zhǎng)而擴(kuò)散蔓延。
所以筆者并不推薦用戶對(duì)硬盤(pán)進(jìn)行低格,如何硬盤(pán)在保修期內(nèi)最好去保修或者找經(jīng)銷商換一塊,那可以說(shuō)是最佳解決方案,也是最徹底的解決方案了。如果硬盤(pán)過(guò)了保修期不讓換,那可以試試低格硬盤(pán),以防止將數(shù)據(jù)存儲(chǔ)到壞道導(dǎo)致數(shù)據(jù)損失。
對(duì)于如何進(jìn)行硬盤(pán)低格,一般來(lái)說(shuō)是使用低格工具來(lái)操作,這個(gè)將在下面的章節(jié)中詳細(xì)介紹,這里再說(shuō)一些相關(guān)話題。即低格工具跟硬盤(pán)檢測(cè)工具是有著本質(zhì)的區(qū)別,低格工具就是對(duì)硬盤(pán)進(jìn)行低格的作用,而硬盤(pán)檢測(cè)工具一般來(lái)說(shuō)是硬盤(pán)廠商推出的用來(lái)檢測(cè)硬盤(pán),及早發(fā)現(xiàn)硬盤(pán)錯(cuò)誤,以提醒用戶備份重要數(shù)據(jù)或者檢修硬盤(pán)用的,它不是用于低格硬盤(pán)。
用Debug匯編語(yǔ)言進(jìn)行低級(jí)格式化
低級(jí)格式化硬盤(pán)能完成銷毀硬盤(pán)內(nèi)的數(shù)據(jù),所以在操作前一定要謹(jǐn)慎。硬盤(pán)低格有許多方法,例如直接在CMOS中對(duì)硬盤(pán)進(jìn)行低格,或者使用匯編語(yǔ)言進(jìn)行硬盤(pán)低格,而最常見(jiàn)的莫過(guò)于使用一些工具軟件來(lái)對(duì)硬盤(pán)進(jìn)行低格,常見(jiàn)低格工具有l(wèi)format、DM及硬盤(pán)廠商們推出的各種硬盤(pán)工具等。
匯編是比較低級(jí)的一種編程語(yǔ)言,它能非常方便地直接操作硬件,而且運(yùn)行效率很高,如果軟件系統(tǒng)中需要直接操作硬件時(shí),經(jīng)常使用的就是匯編語(yǔ)言。使用匯編也可以對(duì)硬盤(pán)進(jìn)行低級(jí)格式化,它比DM等工具軟件顯得更為靈活,具體應(yīng)用時(shí)就是使用debug程序,而具體操作就是在debug環(huán)境下,調(diào)用存放在BIOS中的低級(jí)格式化程序(CMOS中直接低格硬盤(pán)調(diào)用的也是此段低格程序)。實(shí)現(xiàn)方法通常有如下三種:
(1)、直接調(diào)用BIOS
ROM中的低格程序
在很多計(jì)算機(jī)的BIOS
ROM中存放著低格程序,存放地址從C8005H地址開(kāi)始,具體操作如下:
A:\>Debug
-G
C800
:0005(//這時(shí)屏幕顯示信息(不同版本的BIOS顯示的信息可能不同),回車后提示:)
Current
Interleave
is
3
select
new
interleave
or
Return
for
current(//這是要求用戶選擇交叉因子,按回車表示取默認(rèn)值3,也可輸入新的交叉因子值,硬盤(pán)的交叉因子一般是3,所以直接回車即可。屏幕接著提示:)
Are
you
dynamically
configuring
the
drive-answer
Y/N
t
Press“Y”to
begin
formatting
the
drive
C:
with
interleave
03(//鍵入“Y”后開(kāi)始對(duì)硬盤(pán)進(jìn)行低格)
Formatting
……(//完成后詢問(wèn)是否處理壞磁道)
Do
you
want
to
format
bad
track-answer
Y/N?
若沒(méi)有則用“N”回答。屏幕顯示:
Format
Successful,system
will
new
restart,Insert
Dos
diskette
indrive
A:
插入系統(tǒng)盤(pán)到A驅(qū)動(dòng)器,即可進(jìn)行分區(qū),高級(jí)格式化等操作來(lái)安裝系統(tǒng)了。
(2)、通過(guò)調(diào)用INT
13H中斷的7號(hào)功能對(duì)硬盤(pán)進(jìn)行低格
操作如下:
A:\>DEBUG
-A
100
-XXXX:0100
MOV
AX,0703;(//交叉因子為3)
-XXXX:0103
MOV
CX,0001;(//0磁道0扇區(qū)起)
-XXXX:0106
MOV
DX,0080;(//C盤(pán)0磁道)
-XXXX:0109
INT
13
-XXXX:010B
INT
3
-XXXX:010D
-G
100
這樣硬盤(pán)就被低格了。
筆記本硬盤(pán)保養(yǎng)三原則
相信很多人都知道,作為精密機(jī)械產(chǎn)品,震動(dòng)可以說(shuō)是筆記本硬盤(pán)的一大死敵。因?yàn)楣P記本硬盤(pán)內(nèi)部構(gòu)造是相當(dāng)精密的,磁頭離每分鐘數(shù)千轉(zhuǎn)的盤(pán)片表面只有幾微米的高度,一旦震動(dòng)較強(qiáng)烈的話就會(huì)出現(xiàn)讀寫(xiě)異常甚至造成盤(pán)片或者磁頭物理性地?fù)p傷,導(dǎo)致數(shù)據(jù)丟失,硬盤(pán)損壞。
三星2.5寸金寶筆記本硬盤(pán)為了更好地防震,采用了兩項(xiàng)獨(dú)有技術(shù)——Shock
Skin
Bumper(震動(dòng)緩沖外殼)和ImpacGuard(防震衛(wèi)士)。Shock
Skin
Bumper,通過(guò)獨(dú)特的外殼設(shè)計(jì),更好降低周邊震動(dòng)對(duì)硬盤(pán)內(nèi)部器件的影響,使外殼可以承受很高的瞬間壓力,并通過(guò)彈性的設(shè)計(jì),迅速把震動(dòng)轉(zhuǎn)移。ImpacGuard,當(dāng)硬盤(pán)遇到外界很大的壓力(震動(dòng)產(chǎn)生)的時(shí)候,自動(dòng)讓磁頭歸位到宣停區(qū)(landing
zone),而這種磁頭移動(dòng)并不會(huì)對(duì)磁盤(pán)進(jìn)行任何的操作,因此可以更好的保護(hù)磁盤(pán)上的文件。
然而,盡管有技術(shù)做保證,但也只是最大限度地降低了震動(dòng)對(duì)筆記本硬盤(pán)的損害,如果用戶認(rèn)為僅憑技術(shù)就能完美防震,肯定是錯(cuò)誤的,關(guān)鍵還是要靠用戶自己注意。平時(shí)盡量做到在關(guān)機(jī)十幾秒硬盤(pán)完全停轉(zhuǎn)后再移動(dòng)主機(jī);在筆記本硬盤(pán)的安裝、拆卸過(guò)程中也要多加小心;移動(dòng)、運(yùn)輸硬盤(pán)時(shí)更應(yīng)嚴(yán)禁磕碰,最好用泡沫或海綿包裝保護(hù)一下,盡量減少震動(dòng)。
保養(yǎng)本本硬盤(pán)三原則之二
忌斷電
從硬盤(pán)工作角度來(lái)講,現(xiàn)時(shí)筆記本硬盤(pán)的轉(zhuǎn)速大都是5400轉(zhuǎn),在進(jìn)行讀寫(xiě)時(shí),整個(gè)盤(pán)片處于高速旋轉(zhuǎn)狀態(tài)中,如果忽然切斷電源,將使得磁頭與盤(pán)片猛烈磨擦,從而導(dǎo)致筆記本硬盤(pán)出現(xiàn)壞道甚至損壞。對(duì)此,三星2.5寸金寶筆記本硬盤(pán)采用了穩(wěn)定性更高的巨磁阻GMR磁頭,并針對(duì)斷電而采用配備斷電磁頭保護(hù)技術(shù),具備自動(dòng)回位和斷電保護(hù)功能,降低了斷電對(duì)筆記本硬盤(pán)的傷害,這對(duì)緩解那些因?yàn)榉侨藶橐蛩卦斐傻臄嚯姡ū热珉娏λy(tǒng)一停電等)而導(dǎo)致的硬盤(pán)傷害算是頗具“療效”。
但任何技術(shù)都敵不過(guò)人為破壞。尤其對(duì)于一些用戶而言,使用筆記本時(shí)不注意電池時(shí)長(zhǎng),造成強(qiáng)制斷電的事兒時(shí)有發(fā)生,甚至有些人因?yàn)樗罊C(jī)也會(huì)強(qiáng)行拔插電源,久而久之,必成大患。對(duì)此,需要提醒用戶的是,多留意,多小心,盡量避免強(qiáng)制斷電。關(guān)機(jī)時(shí),一定要在硬盤(pán)已經(jīng)完成讀寫(xiě)操作之后,按照正常的程序關(guān)閉電腦。
保養(yǎng)本本硬盤(pán)三原則之三
防高溫
溫度的高低也是筆記本硬盤(pán)的一大天敵。事實(shí)上,筆記本硬盤(pán)的工作狀況與使用壽命跟溫度有很大的聯(lián)系,硬盤(pán)使用中溫度以20~25℃為宜,溫度過(guò)高或過(guò)低都會(huì)使晶振的時(shí)鐘頻率發(fā)生變化,重者還會(huì)造成筆記本硬盤(pán)中電路元件失靈,存儲(chǔ)介質(zhì)也會(huì)因熱脹效應(yīng)而造成記錄錯(cuò)誤。而溫度過(guò)低,空氣中的水分會(huì)被凝結(jié)在集成電路元件上,造成非常嚴(yán)重的短路。
三星在散熱方面一向做得不錯(cuò),在行業(yè)內(nèi)也是有口皆碑。在三星2.5寸金寶筆記本硬盤(pán)的設(shè)計(jì)中,三星采用了低能耗設(shè)計(jì),同時(shí)利用了更加合理的空氣流設(shè)計(jì),充分的降低了硬盤(pán)的發(fā)熱量,保證了用戶更安全更穩(wěn)定更長(zhǎng)久的使用硬盤(pán)。
不過(guò),用戶還是要避免長(zhǎng)時(shí)間(超過(guò)12小時(shí))連續(xù)使用筆記本;也盡量別放在被子、腿上使用筆記本,以免堵住通風(fēng)道。
談完了三原則,還有其它注意事項(xiàng),諸如遠(yuǎn)離強(qiáng)磁場(chǎng),避免潮濕環(huán)境,避免頻繁操作,定期整理磁盤(pán)碎片等。但上述三項(xiàng),則最為重要,尤其是震動(dòng),稱其是“硬盤(pán)殺手”當(dāng)之無(wú)愧。誰(shuí)都不想讓自己的愛(ài)本出現(xiàn)問(wèn)題,因此日常生活工作還是要多多維護(hù)。畢竟“養(yǎng)本千日,用本一時(shí)”,筆記本硬盤(pán)是很嬌氣的,多加保養(yǎng)準(zhǔn)沒(méi)錯(cuò)。2007年6月,博科思代理的三星2.5英寸金寶硬盤(pán)將啟用第二代800防偽標(biāo)識(shí),消費(fèi)者一定要注意辨別,具體識(shí)別方法咨詢電話8008303156,也可以登陸www.bocous.com進(jìn)行查詢
硬盤(pán)常見(jiàn)故障及其處理方法
1.電源引起的硬盤(pán)不能正常起動(dòng)
計(jì)算機(jī)電源輸出的電壓分別是+5V和+12V。硬盤(pán)啟動(dòng)需要+12V電壓和4A的電流,硬盤(pán)工作時(shí)的電流為1.1A。軟盤(pán)的啟動(dòng)僅需+10V左右的電壓和1.3A電流,而工作電流為0.5A。計(jì)算機(jī)電源的輸出電壓不足+12V,則硬盤(pán)就不能啟動(dòng)和工作。處理這類故障,就要使電源輸出恢復(fù)到+12V電壓。
2.主板電池電壓不足引起的硬盤(pán)無(wú)法啟動(dòng)
這是主板上的充電電池失效引起主機(jī)參數(shù)紊亂而產(chǎn)生的故障。主板上的充電電池(一般是鋰電池)是當(dāng)主機(jī)關(guān)機(jī)時(shí)用來(lái)保存機(jī)器時(shí)鐘、日期,軟盤(pán)驅(qū)動(dòng)器的個(gè)數(shù)、類型,硬盤(pán)個(gè)數(shù)、類型,顯示器方式,內(nèi)存容量,擴(kuò)展容量等系統(tǒng)參數(shù)的。當(dāng)開(kāi)機(jī)上電自檢時(shí),BIOS自動(dòng)檢測(cè)CMOS中的參數(shù)表,如果不匹配,則出現(xiàn)死機(jī)。鋰電池的工作電壓為+3V~+6V。如果電池電壓不足+3V或電池失效,則硬盤(pán)無(wú)法被識(shí)別。
3.硬盤(pán)參數(shù)錯(cuò)誤導(dǎo)致的硬盤(pán)不能啟動(dòng)
硬盤(pán)參數(shù)有硬盤(pán)容量大小、磁頭數(shù)、磁道數(shù)、扇區(qū)數(shù)等多種。不同廠家生產(chǎn)的硬盤(pán),其參數(shù)值各不相同。如果硬盤(pán)參數(shù)值設(shè)置錯(cuò)誤,則硬盤(pán)就啟動(dòng)不了。這時(shí)需要重新設(shè)置硬盤(pán)的磁頭數(shù)、磁道數(shù)、扇區(qū)數(shù)等值。方法是:首先開(kāi)機(jī)后待自檢開(kāi)始,按下DEL鍵,即可進(jìn)入CMOS
SETUP設(shè)置狀態(tài)。然后,對(duì)COMS中的參數(shù)進(jìn)行設(shè)置:選擇STANDARD
CMOS
SETUP欄目中的TYPE項(xiàng),填入正確的TYPE值。一般的主板都有硬盤(pán)自檢測(cè)功能。進(jìn)入CMOS
SETUP設(shè)置菜單中,選擇“IDE
HDD
AUTO
DETECTION”即可。
4.硬盤(pán)0磁道被破壞引起的故障
DOS操作系統(tǒng)放在硬盤(pán)的0磁道上?如果硬盤(pán)的0磁道物理性損壞,硬盤(pán)便不工作。
一般采用的修復(fù)方法是:首先盡量把硬盤(pán)有用的文件、數(shù)據(jù)備份出來(lái)。由于硬盤(pán)0磁道的損壞,硬盤(pán)中的資料、文件已不能按正常備份方法備份,需用BIOS中斷方法按扇區(qū)逐一備份;然后對(duì)整個(gè)硬盤(pán)做格式化,再用FDISK對(duì)硬盤(pán)重新分區(qū),最后用FORMAT對(duì)硬盤(pán)作邏輯格式化,裝上DOS操作系統(tǒng)和有關(guān)文件、數(shù)據(jù)即可。
若用上述方法修復(fù)無(wú)效,則先用KV300殺毒盤(pán)啟動(dòng)、殺毒,再用A:系統(tǒng)盤(pán)啟動(dòng),運(yùn)行SCANDISK掃描C盤(pán),若在第一簇出現(xiàn)一個(gè)紅色的“B”,表明零磁道損壞。然后用PCTOOLS
9.0中的DE(該軟件能看到各個(gè)分區(qū)在硬盤(pán)的起始點(diǎn)),運(yùn)行PCT90目錄下的DE.EXE,報(bào)告現(xiàn)在運(yùn)行在只讀模式,選Op-tions菜單
→Configuration,按空格去掉Read
Only前面的√,保存后退出。選主菜單Select→Drive;進(jìn)入后在Drive
type→Physical,按空格選定,再按TTab鍵切換到Druves項(xiàng),選中harddisk,然后選OK回車。此后回到主菜單,打開(kāi)Select菜單,這時(shí)會(huì)出現(xiàn)Partiton
Table,選中之后出現(xiàn)硬盤(pán)分區(qū)表信息。該分區(qū)是從硬盤(pán)的0柱面開(kāi)始的,那么,將分區(qū)的Beginning
Cylinder的0改成1即可?保存后退出。重新啟動(dòng),按Delete鍵進(jìn)入CMOS設(shè)置,進(jìn)行“IDE
HDD
AUTO
DETECTIOND(也可以看到CYLS數(shù)變少)",保存后退出,此時(shí)再對(duì)硬盤(pán)重新分區(qū),格式化,裝上相應(yīng)的軟件即可。
硬盤(pán)邏輯鎖解決方法
一·序言
不知道你是否曾碰到過(guò)從軟盤(pán)和硬盤(pán)都啟動(dòng)不了計(jì)算機(jī)的情形?一般計(jì)算機(jī)的硬盤(pán)分區(qū)表被病毒感染后,若不能啟動(dòng)機(jī)子,通常從軟盤(pán)可以啟動(dòng)。但在嚴(yán)重的情形下,不但從硬盤(pán)不能啟動(dòng)機(jī)子,就是從軟盤(pán)也不能啟動(dòng)。有的惡毒的病毒就能使硬盤(pán)被死鎖。筆者一次在自己機(jī)子上玩弄硬盤(pán)鎖時(shí),就被鎖住過(guò)一次。結(jié)果在硬盤(pán)下選擇DOS或WIN95模式啟動(dòng)機(jī)子都死機(jī),在軟盤(pán)下用DOS啟動(dòng)也死機(jī);在COMS中將硬盤(pán)類型選擇None,雖然可以從軟盤(pán)啟動(dòng),但啟動(dòng)后沒(méi)有硬盤(pán),使用軟盤(pán)上的FDISK命令,想重新分區(qū)或格式化都沒(méi)門(mén)。弄得我一籌莫展。
本來(lái),硬盤(pán)被鎖住時(shí),可以采用3.0以下的DOS版本啟動(dòng)機(jī)子,機(jī)子啟動(dòng)后雖然也不認(rèn)硬盤(pán),但其不認(rèn)的原因在于其管理不了現(xiàn)在的大硬盤(pán),因此可以用Debug修改硬盤(pán)分區(qū)表,修改后可以啟動(dòng)。但在已進(jìn)入WINDOWS的年代,3.0以下的DOS實(shí)難找到,即使找到,你的機(jī)子上恐怕也因沒(méi)有5寸軟驅(qū)而不能使用。因此,最好的辦法是編制一個(gè)程序來(lái)解決這個(gè)問(wèn)題。筆者通過(guò)嘗試和思考,找到一種比較實(shí)用的方法,可以輕松解開(kāi)死鎖的硬盤(pán),當(dāng)然也把自己的硬盤(pán)解開(kāi)了。下面,我將這種方法介紹出來(lái)。
二·硬盤(pán)鎖住原理
硬盤(pán)鎖住通常是對(duì)硬盤(pán)的分區(qū)表做手腳,因此首先應(yīng)該了解硬盤(pán)的分區(qū)表。硬盤(pán)分區(qū)表位于0柱面0磁頭1區(qū),這個(gè)扇區(qū)的`前面200多個(gè)字節(jié)是主引導(dǎo)程序,后面從01BEH開(kāi)始的64個(gè)字節(jié)是分區(qū)表。分區(qū)表共64字節(jié),分為4欄,每欄16字節(jié),用來(lái)描述一個(gè)分區(qū)。如果是用DOS的FDISK程序分區(qū)后,最多只用兩欄,第一欄描述基本的DOS分區(qū),第二欄描述擴(kuò)展的DOS分區(qū)。
分區(qū)表一欄的結(jié)構(gòu)與各字節(jié)的含義如下:
00H-標(biāo)志活動(dòng)字節(jié),活動(dòng)DOS分區(qū)為80H,其它為00H。
01H-本分區(qū)邏輯0扇區(qū)所在的磁頭號(hào)。
02H-邏輯0扇區(qū)所在柱面中的扇區(qū)號(hào)。
03H-邏輯0扇區(qū)所在的柱面號(hào)。
04H-分區(qū)類型標(biāo)志。
05H-本分區(qū)最后一個(gè)扇區(qū)的磁頭號(hào)。
06H-最后一個(gè)扇區(qū)的扇區(qū)號(hào)。
07H-最后一個(gè)柱面的柱面號(hào)。
08H-硬盤(pán)上在本分區(qū)之前的扇區(qū)總數(shù),用雙字表示。
0CH-本分區(qū)的扇區(qū)總數(shù),從邏輯0扇區(qū)計(jì)數(shù),不含隱藏扇區(qū),用雙字表示。
在上面的介紹中給出的柱面號(hào)與扇區(qū)號(hào)雖然各占一個(gè)字節(jié),但實(shí)際上扇區(qū)號(hào)用6位表示,柱面號(hào)用10位表示,扇區(qū)號(hào)所在字節(jié)的最高兩位實(shí)際上是柱面號(hào)的最高兩位。
分區(qū)表的最后兩個(gè)字節(jié)是分區(qū)表的有效標(biāo)志,如果將其改變,將不能從硬盤(pán)啟動(dòng),這是一種簡(jiǎn)單的鎖住硬盤(pán)的方法。解決的辦法是從軟盤(pán)啟動(dòng),啟動(dòng)后硬盤(pán)仍然可以使用。用Debug或Noratn中的Diskedit軟件將硬盤(pán)該分區(qū)表中的標(biāo)志恢復(fù),則從硬盤(pán)啟動(dòng)也沒(méi)有問(wèn)題了。鎖住硬盤(pán)的另一種方法是對(duì)分區(qū)參數(shù)做手腳,如果將分區(qū)參數(shù)全部變?yōu)?,則啟動(dòng)時(shí)由于找不到分區(qū)參數(shù),從硬盤(pán)是沒(méi)法啟動(dòng),從軟盤(pán)啟動(dòng)后也不認(rèn)硬盤(pán),如果你敲入盤(pán)符C并回車,將出現(xiàn)提示Invalid
driver
specification。但所幸的是,畢竟可以啟動(dòng)機(jī)子,不認(rèn)硬盤(pán)沒(méi)關(guān)系,在A盤(pán)上用DOS的Debug仍然可以讀出硬盤(pán)0柱面0磁頭1扇區(qū)的內(nèi)容,修改后再寫(xiě)入0柱面0磁頭1扇區(qū),重新啟動(dòng)機(jī)子又沒(méi)問(wèn)題了。如果將分區(qū)表參數(shù)隨意改為其它參數(shù),則有可能不能用可以安裝DOS的DOS系統(tǒng)盤(pán)啟動(dòng),按F3退出后將出現(xiàn)內(nèi)存分配錯(cuò)誤,不能裝載DOS的命令解釋器COMMAND的提示,系統(tǒng)就死機(jī)了,筆者就曾碰見(jiàn)過(guò)這種情形。但用一張格式化成系統(tǒng)盤(pán)的軟盤(pán)則可以順利啟動(dòng),只要有Debug,你仍然可以將分區(qū)表參數(shù)修改回去?膳碌氖虑槭,如果你不幸將分區(qū)表參數(shù)改成一個(gè)循環(huán)鏈,即C盤(pán)的下一個(gè)分區(qū)指向D驅(qū),D驅(qū)的下一個(gè)分區(qū)又指向C區(qū),這樣循環(huán)下去,DOS啟動(dòng)或WIN95啟動(dòng)時(shí)由于無(wú)休止的讀取邏輯驅(qū)動(dòng)器,就只有死機(jī)的份了。這是只要有硬盤(pán)存在,不管你用軟盤(pán)還是硬盤(pán)都沒(méi)法啟動(dòng)機(jī)子了,由于不能啟動(dòng)是由于硬盤(pán)造成的,即使你將硬盤(pán)下到其它計(jì)算機(jī)上,也沒(méi)法使用,這樣硬盤(pán)就徹底被鎖死了,筆者所遭遇就是此情形。不信,你只需將硬盤(pán)0柱面0磁頭1扇區(qū)的1D0H處改為1(如果你的D驅(qū)開(kāi)始柱面號(hào)不夠大,此處本來(lái)就為1),將1D1H處改為0,表示D盤(pán)的開(kāi)始柱面號(hào)跟C盤(pán)一樣,看看你的計(jì)算機(jī)還能不能啟動(dòng),不過(guò)你在沒(méi)有充分的準(zhǔn)備前絕不要試。
一個(gè)完整的硬盤(pán)鎖程序,不過(guò)是重新改寫(xiě)0柱面0磁頭1扇區(qū)的引導(dǎo)程序,并將分區(qū)表破壞或故意制造一個(gè)循環(huán)分區(qū)表,而將真正的硬盤(pán)分區(qū)表參數(shù)和引導(dǎo)程序放在其它隱藏扇區(qū)并保護(hù)起來(lái),如果啟動(dòng)時(shí)口令不對(duì),則不能啟動(dòng)機(jī)子,口令對(duì)了則順利啟動(dòng)。這種硬盤(pán)鎖程序,情形好的還可以用軟盤(pán)啟動(dòng);情形嚴(yán)重的就是連軟盤(pán)也不能啟動(dòng),硬盤(pán)真被鎖住。
三·解開(kāi)硬盤(pán)鎖的程序法
如果硬盤(pán)被鎖死,是否真的就無(wú)法解開(kāi)呢?當(dāng)然不是。看看問(wèn)題的癥結(jié)所在,根源在于DOS中的IO.SYS文件,它包含LOADER、IO1、IO2、IO3四個(gè)模塊,其中IO1中包含有一個(gè)很關(guān)鍵的程序SysInt_I,它在啟動(dòng)中很固執(zhí),非要去讀分區(qū)表,而且不把分區(qū)表讀完誓不罷休。如果碰上分區(qū)表是循環(huán)的,它就只有死機(jī)了。這是DOS的脆弱性和不完備性。其實(shí)這也不能怪DOS,因?yàn)镈OS為了獲得硬盤(pán)使用權(quán),就必需讀分區(qū)表參數(shù),而且DOS還約定驅(qū)動(dòng)器號(hào)不能超過(guò)26,只不過(guò)沒(méi)有考慮到此等循環(huán)分區(qū)表情形。一句話,機(jī)子不能啟動(dòng)不過(guò)是DOS操作系統(tǒng)造成的,如果另寫(xiě)一個(gè)操作系統(tǒng),或許就能啟動(dòng)機(jī)子。當(dāng)然這只是說(shuō)個(gè)笑話。
明白了病因在于DOS,問(wèn)題就好辦了。DOS啟動(dòng)中不是要讀硬盤(pán)分區(qū)表嗎?我不讓你讀分區(qū)表甚至連硬盤(pán)都不讓你讀,不就可以順利啟動(dòng)了。的確是這樣的,開(kāi)硬盤(pán)鎖的程序?qū)崿F(xiàn)方法就是基于這個(gè)思想形成的。當(dāng)然,這只有從軟盤(pán)啟動(dòng)著手了。
看看計(jì)算機(jī)的啟動(dòng)過(guò)程,上電首先進(jìn)行的多項(xiàng)硬件自測(cè)跟我們沒(méi)有關(guān)系,我們關(guān)心的只是它最開(kāi)始和磁盤(pán)打交道時(shí)是干什么。如果選擇從硬盤(pán)啟動(dòng),則計(jì)算機(jī)和磁盤(pán)最開(kāi)始打交道是將硬盤(pán)0柱面0磁頭1扇區(qū)的內(nèi)容讀入內(nèi)存0000:7C00處并跳到0000:7C00處執(zhí)行;如果選擇從軟盤(pán)啟動(dòng),則計(jì)算機(jī)和磁盤(pán)最開(kāi)始打交道是將A盤(pán)0磁道0磁頭1扇區(qū)的內(nèi)容讀入內(nèi)存0000:7C00處并跳到0000:7C00處執(zhí)行,在執(zhí)行過(guò)程中,計(jì)算機(jī)并不檢查該扇區(qū)的內(nèi)容是什么,只機(jī)械地執(zhí)行讀命令,這使得許多系統(tǒng)型病毒得以生存。但利用這一點(diǎn),恰恰使我們的程序解鎖法有了用武之地。如果我們用DOS格式化一張可以啟動(dòng)機(jī)子的系統(tǒng)軟盤(pán),將該軟盤(pán)的0磁道0磁頭1扇區(qū)的內(nèi)容移到后面的空白扇區(qū)中,而重新寫(xiě)一段程序到該軟盤(pán)的0磁道0磁頭1扇區(qū),這樣用軟盤(pán)啟動(dòng)時(shí)首先執(zhí)行的是我們所寫(xiě)的程序了。在這段程序中,具備這樣一些功能:在DOS啟動(dòng)前搶先攔截INT
13H,駐留高端內(nèi)存并監(jiān)視INT
13H,判斷是否讀硬盤(pán),如果是讀硬盤(pán)就直接返回,這樣就禁止了讀硬盤(pán),也就避免了DOS讀硬盤(pán)循環(huán)分區(qū)表造成的死機(jī);同時(shí)攔截對(duì)軟盤(pán)的讀取,如果讀軟盤(pán)的0磁道0磁頭1扇區(qū),就改成讀真正有引導(dǎo)程序和磁盤(pán)參數(shù)表的扇區(qū),免得DOS在啟動(dòng)中找不到軟盤(pán)的磁盤(pán)參數(shù)表而死機(jī)。完成這些任務(wù)的同時(shí),還要讀取軟盤(pán)真正的引導(dǎo)程序并把控制權(quán)交給它。
該方法可以稱為萬(wàn)能的,因?yàn)樗谟密洷P(pán)啟動(dòng)中,始終不與硬盤(pán)打交道,這樣不管你硬盤(pán)用什么方法加鎖了,對(duì)DOS的啟動(dòng)都沒(méi)有影響。當(dāng)然,這樣啟動(dòng)的機(jī)子是不認(rèn)硬盤(pán)的,但這沒(méi)有關(guān)系。你可在機(jī)子啟動(dòng)后,用Debug調(diào)出駐留高端內(nèi)存的新INT
13H程序,將其改為只有一條直接執(zhí)行舊INT
13H的語(yǔ)句,這樣在Debug下可以用INT
13H讀取硬盤(pán)0柱面0磁頭1扇區(qū)的內(nèi)容,如果你有備份,將分區(qū)表參數(shù)恢復(fù)后再寫(xiě)入0柱面0磁頭1扇區(qū),重新啟動(dòng)計(jì)算機(jī)就可以了。如果實(shí)在沒(méi)有備份,去掉分區(qū)表中的循環(huán)鏈,用正常DOS啟動(dòng)盤(pán)重啟機(jī)子后至少也可以重新對(duì)硬盤(pán)分區(qū),不至于硬盤(pán)被鎖住打不開(kāi)了。
四·程序及說(shuō)明
1·下面是寫(xiě)入軟盤(pán)0磁道0頭1扇區(qū)的源程序key.com,程序用debug輸入。
C>debug
-a100
100
CLI
101
XOR
AX,AX
103
MOV
DS,AX
105
MOV
ES,AX
107
MOV
SS,AX
109
MOV
AX,7C00
10C
MOV
SP,AX
10E
STI
10F
MOV
SI,AX
111
MOV
DI,7E00
114
CLD
115
MOV
CX,0200
118
REPNZ
119
MOVSB
11A
JMP
0000:7E1F
11F
MOV
CX,0003
122
PUSH
CX
123
MOV
AX,0201;讀啟動(dòng)軟盤(pán)的引導(dǎo)扇區(qū)
126
MOV
BX,7C00
129
MOV
CX,4F01
12C
MOV
DX,0100
12F
INT
13
131
POP
CX
132
DEC
CX
133
JNZ
0122
135
MOV
AX,[004C];搶先獲取INT
13H的位置
138
MOV
[7E88],AX
13B
MOV
AX,[004E]
13E
MOV
[7E8A],AX
141
MOV
AX,[0413]
144
DEC
AX
145
MOV
[0413],AX
148
MOV
CL,06
14A
SHL
AX,CL
14C
MOV
ES,AX
14E
XOR
AX,AX
150
MOV
DS,AX
152
MOV
SI,7E6D;復(fù)制改寫(xiě)的INT
13H程序到高端內(nèi)存
155
MOV
DI,0000
158
MOV
CX,0030
15B
REPNZ
015C
MOVSB
015D
MOV
AX,0000;將新INT
13H位置寫(xiě)入中斷向量表
0160
MOV
[004C],AX
0163
MOV
AX,ES
0165
MOV
[004E],AX
0168
JMP
0000:7C00
016D
PUSHF;新INT
13H程序
016E
CMP
DX,0080;是否是硬盤(pán)
0172
JNZ
0176;不是硬盤(pán)則繼續(xù)
0174
POPF
0175
IRET;是硬盤(pán)則直接返回
0176
CMP
DX,+00;是否讀軟盤(pán)BOOT區(qū)?
0179
JNZ
0186
017B
CMP
CX,+01
017E
JNZ
0186
0180
MOV
CX,4F01;是則讀79磁道1磁頭1扇區(qū)
0183
MOV
DX,0100
0186
POPF
0187
JMP
0000:0000;此處跳轉(zhuǎn)去執(zhí)行舊INT
13,
;舊INT
13H的位置由前面程序獲得后寫(xiě)入。
N
key.com
RCX
200
W
Q
2·程序的裝載
在進(jìn)行下面工作前,先用DOS格式化一張啟動(dòng)的系統(tǒng)盤(pán),并保證沒(méi)有壞扇區(qū),最好進(jìn)行啟動(dòng)測(cè)試,確保其可以啟動(dòng)機(jī)子。由于現(xiàn)在機(jī)子上大多只有3寸軟驅(qū),因此選擇1.44M的3.5寸軟盤(pán)。然后用debug
key.com將程序key.com調(diào)入內(nèi)存偏移地址為100H,同時(shí)在400H處寫(xiě)入一段裝載程序。即:
C>debug
key.com
-a400
400
MOV
CX,0003
403
PUSH
CX
404
MOV
AX,0201;將A盤(pán)引導(dǎo)程序讀入內(nèi)存1000H處
407
MOV
BX,1000;為確保成功,首次采用重復(fù)讀3次
40A
MOV
CX,0001
40D
MOV
DX,0000
410
INT
13
412
POP
CX
413
DEC
CX
414
JNZ
0403
416
MOV
AX,0301;將已讀入內(nèi)存的軟盤(pán)引導(dǎo)程序?qū)懭胲洷P(pán)
419
MOV
BX,1000;最后一個(gè)磁道的首扇區(qū)
41C
MOV
CX,4F01
41F
MOV
DX,0100
422
INT
13
424
MOV
AX,0301;將key.com程序?qū)懭胲洷P(pán)0磁道0磁頭1扇區(qū)
427
MOV
BX,0100
42A
MOV
CX,0001
42D
MOV
DX,0000
430
INT
13
432
INT
3
為保證萬(wàn)無(wú)一失,最好將軟盤(pán)這兩個(gè)扇區(qū)的內(nèi)容重新讀出來(lái)看一看,以保證寫(xiě)成功了。做好這一切,保險(xiǎn)的還是進(jìn)行一次測(cè)試,即用該軟盤(pán)啟動(dòng)一次機(jī)子,看能否成功,若成功啟動(dòng),你就可以用循環(huán)分區(qū)表法鎖住硬盤(pán),看從正常DOS下能否啟動(dòng),然后再用此軟盤(pán)啟動(dòng)機(jī)子試試,看看功效如何?
從該軟盤(pán)啟動(dòng)后,不認(rèn)硬盤(pán),并且在高端內(nèi)存駐留了新INT
13H程序,該段程序?qū)嶋H上是key.com中從16D到187部分。由于有此段程序存在,在debug下也無(wú)法讀硬盤(pán),也就沒(méi)法恢復(fù)硬盤(pán)分區(qū)表,因此機(jī)子啟動(dòng)后首先應(yīng)修改這段程序,F(xiàn)在的機(jī)子基本內(nèi)存通常都為640K,這樣這段程序就位于內(nèi)存中9FC0:0000處,在debug下,用U9FC0:0顯示這段程序,可以看到位于9FC0:001A處是一條跳轉(zhuǎn)指令,該跳轉(zhuǎn)指令即轉(zhuǎn)去執(zhí)行最原始的INT
13H。由于BIOS版本不一樣,跳轉(zhuǎn)指令指向的位置可能不一樣,如筆者機(jī)子上是一條JMP
F000:A5D4語(yǔ)句。這時(shí)在在debug下編寫(xiě)這樣一語(yǔ)句:a9FC0:0
JMP
F000:A5D4。這樣,對(duì)硬盤(pán)的禁寫(xiě)與禁讀都不再起作用了,在debug下用INT
13H的2號(hào)子功能可以讀出硬盤(pán)分區(qū)表,修改恢復(fù)后再用3號(hào)子功能將數(shù)據(jù)寫(xiě)回分區(qū)表。退出debug,重新用正常DOS啟動(dòng)計(jì)算機(jī),就可以了。
附帶提一下,在正常DOS下,該軟盤(pán)由于沒(méi)有BOOT區(qū),也就沒(méi)有磁盤(pán)參數(shù)表,從而不能使用,用DIR
A:命令會(huì)出現(xiàn)General
failure
reading
drive
A提示。不要理睬它,這并不影響它作特殊啟動(dòng)盤(pán)。
五·建議
為更好的保護(hù)你的硬盤(pán),筆者建議你最好將你的硬盤(pán)分區(qū)表信息備份起來(lái)。備份有兩種方式,一種是以文件形式將硬盤(pán)每個(gè)邏輯盤(pán)的分區(qū)信息存儲(chǔ)起來(lái);另一種是將分區(qū)信息備份在硬盤(pán)隱藏扇區(qū)里。比如可以將0柱面0磁頭1扇區(qū)備份在0柱面0磁頭3扇區(qū),將D盤(pán)開(kāi)始柱面號(hào)0磁頭1扇區(qū)備份在該柱面0磁頭3扇區(qū),其它邏輯盤(pán)也如此。這種方法簡(jiǎn)單、方便,也很可靠。用NORTAN中的DISKEDI很容易操作和實(shí)現(xiàn)。有了備份分區(qū)表信息,就不怕破壞分區(qū)表的病毒了;再加上我給你的程序,即使有人真鎖住了你的硬盤(pán),你也可以輕而易舉解開(kāi)了。
【一分鐘教會(huì)菜鳥(niǎo)認(rèn)識(shí)硬盤(pán)】相關(guān)文章: