硬盤“隱藏保護區(qū)域”HPA技術(shù)介紹
關(guān)于"host protected area"資料
HPA是ATA之標(biāo)準(zhǔn),ATA-4就含了HPA,通俗之理解就是設(shè)置讀取之硬盤 大之扇區(qū)號,從而把高端之內(nèi)容隱藏起來,這個 大之扇區(qū)號能夠?qū)懺谟脖P之某個地方,因此即使你把這個硬盤掛到其它機器上,好情況下你也看不到隱藏之內(nèi)容,fdisk,pqmaigc之類之工具也把這個硬盤當(dāng)做一個稍小容量之硬盤。現(xiàn)在HPA已經(jīng)是用ATA-5之標(biāo)準(zhǔn)了,這個標(biāo)準(zhǔn)需要在HDD之 Firmware支持之。
phoenix(生產(chǎn)BIOS之公司)開發(fā)之Core Managed Environment (cME),聯(lián)想主板上之recovery easy II,IBM之系統(tǒng)恢復(fù)都是利用HPA之例子。
由于資料有限,我只能推測IBM是這樣使用HPA之:硬盤隱藏部分事實上是個好之分區(qū)(比如FAT32、NTFS),這樣就不需要開發(fā)大量之針對隱藏空間之應(yīng)用程序。
附件: 406198-FWTOOLS.RAR
這個是psa驅(qū)動,在config.sys文件中加入它之后,才能在DOS下面查看HPA里面之內(nèi)容。
附件: 406203-PSADISK.SYS
按AccessIBM之后出來之界面,就是這個程序,IBM叫它sight.exe。
附件: 406208-SIGHT.EXE
這個程序需要minidos.sys來支持。
附件: 406212-MINIDOS.SYS
這個DOS命令,和DOS之dir相類似,即查看HPA里面之列表,括相應(yīng)之ID,名字,第一扇區(qū),容量大小等相關(guān)信息。如果已經(jīng)有HPA了,在DOS下面運行fwdir,會看到如下類似之信息:
FWDIR version 1.00 - Copyright (c) 2002 Phoenix Technologies Ltd.
Detecting drives...
BEER Structure on Drive 2
Signature: 0xBEEF (Committed)
Capabilities: 0x0029
Native Max Sect: 117210239
Current Max Sect: 117210239
First HPA Sector: 112017857
Last Part sector: 112008960
Service Areas: 8
# ID Name 1st Sector Megabytes Sec Icon Flag
-- ---- ------------------------------ ---------- --------- --- ---- ----
0 000h FirstWare Reserved Area 117005431 100.000 0 00h 03h
1 100h SIGHT 117002548 1.408 3 FCh 21h
2 8104h Restore from backup 116999665 1.408 0 22h 21h
3 8105h Rec Boot 116983660 7.815 0 21h 21h
4 8800h BIOSWORKAREA 116979564 2.000 0 21h 06h
5 8888h Rec Data 112047980 2408.000 0 21h 06h
6 8101h Create Diagnostic Diskettes 112032920 7.354 0 24h 21h
7 8100h Run Diagnostics 112017857 7.355 0 23h 21h
可以看到HPA之結(jié)構(gòu),左邊之ID部分相當(dāng)重要,運行所有命令都幾乎要涉及這個參數(shù)。
第一部分是保留區(qū),由于沒有法查看里面之?dāng)?shù)據(jù)(如何查看,稍后之fwmount命令中講述),站長沒有法確定這個保留區(qū)之真正作用,這個區(qū)之大小正好是100MB;
第二部分是叫sight,里面只有兩個文件,即minidos.sys和sight.exe,這個程序只有200多K,是一個標(biāo)準(zhǔn)之DOS程序,可以在DOS下面直接運行,即會看到啟動時候按AccessIBM那樣之界面,這部分只有一張軟盤大小,運行chkdsk查看它之大小和一張標(biāo)準(zhǔn)軟盤是一樣之;
第三部分也是一張軟盤大小,叫Restore from backup,即從備份中恢復(fù)之時候啟動;
第四部分是Rec boot,即紀(jì)錄引導(dǎo)區(qū),大小是8MB,在AccessIBM中運行Recover to factory contents時從這部分引導(dǎo);
第五部分是BIOSWORKAREA,用fwmount沒有法打開查看,站長只能從其它區(qū)域之情況和它之名字來推測它是相當(dāng)于電腦之BIOS這樣一個區(qū)域;
第六部分是Rec Data,就是四張恢復(fù)光盤之?dāng)?shù)據(jù)了,有2.4G大;
第七和第八部分就分別是制作檢測工具盤和運行檢測工具。
fwdir命令和其它相關(guān)命令之使用參數(shù)通常會涉及一個drv=0這樣之,缺省時是使用drv=0,這個設(shè)備是硬盤插槽里面之硬盤,drv=1通常使用不了,它是指第一通道之從設(shè)備(主設(shè)備通常就是硬盤插槽之硬盤了);drv=2則是第二通道之主設(shè)備(通常就是光驅(qū)位置之設(shè)備),drv=3則是第二通道之從設(shè)備了。如果使用了UltraBay Slim硬盤托架,那么這個就是drv=2了。運行格式是:
fwdir drv=2
使用很簡單,如果要刪除硬盤插槽里面之硬盤之HPA,輸入:
fwdelete drv=0 all
然后按Y確認,即可刪除。
如果是要刪除UltraBay Slim硬盤托架里面之硬盤之HPA,輸入:
fwdelete drv=2 all
然后按Y確認,即可刪除。
執(zhí)行此命令之時候,BIOS中之IBM PreDesktop Area設(shè)置不用改為Disable。但刪除HPA后如果要利用這部分之硬盤空間(2.5G左右),還得改為Disable才行。預(yù)先設(shè)置為Disable再執(zhí)行fwdelete也可以之。
這個命令可以先用fwdir查看HPA結(jié)構(gòu)之后,再用fwdelete逐個刪除,在后面加上id=xxx這樣就可以了。
fwdelete能夠以 快捷、 直接之方式來刪除HPA。對于一些網(wǎng)友在使用或研究HPA過程中非常有用。
站長在用東芝MK5024GAY硬盤研究HPA之時候,曾發(fā)生過HPA損壞,改為Disable后用DM、PQ或Windows來刪除那塊區(qū)域(HPA)都沒有效果,表面上是刪掉了,但一改回Normal,啟動系統(tǒng)時馬上就報1850錯,或者是檢驗錯,后來用XP安裝光盤來刪,也不行,象幽靈似之纏著不放。到后來發(fā)覺fwdelete命令時,一下子就干掉了,走了這么多彎路。
fwbackup是備份HPA之工具,重要參數(shù)有file,size,drv,其中file是指備份出來之文件,比如file=t40hpa,那么它會備份出來t40hpa.001,002,003這樣之文件;size參數(shù)是指備份出來之文件之大小,比如size=650,那么備份出來之文件自動按每個650MB一個分割,drv參數(shù)和之前介紹之相同。
FWBACKUP Version 1.00
(C) Copyright 2002 Phoenix Technologies Ltd. All Rights Reserved.
USAGE: FWBACKUP file=<filename> size=<spansize> [drv=drive_no] [ver] [/?]
Optional parameters:
drv=n Specify drive to use. 0=pm,1=ps,2=sm,3=ss
ver Display version and build information.
/? Show this help message.
Note: If is specified the program will run in unattended mode
fwbackup可以在本機硬盤DOS下直接運行,通常可以用U盤或軟盤或光盤啟動到DOS下面,在硬盤上有FAT32格式之分區(qū)下面來操作,就可以備份。
和fwbackup對應(yīng),fwrestor就是恢復(fù)HPA之工具了。fwrestor參數(shù)相對簡單一些,不用size來指定大小,它會自動尋找當(dāng)前目錄下面file=指定之文件名,然后恢復(fù)。運行fwrestor命令時,要求恢復(fù)之硬盤必須是沒有任何分區(qū)之,否則恢復(fù)完成之后,會出錯。
FWRESTOR Version 1.00
(C) Copyright 2002 Phoenix Technologies Ltd. All Rights Reserved.
USAGE: FWRESTOR file=<filename> [drv=drive_no] [verify] [ver] [/?]
Optional parameters:
drv=n Specify drive to use. 0=pm,1=ps,2=sm,3=ss
verify Compare data written to disk with data read from file
ver Display version and build information.
/? Show this help message.
運行fwbackup和fwrestor命令時,BIOS中IBM PreDesktop Area可以設(shè)置為Disable或Normal。但恢復(fù)完之后,必須要用恢復(fù)好之硬盤來放在硬盤插槽里面,并且在BIOS中IBM PreDesktop Area設(shè)置為Normal或Secure,才能按AccessIBM來恢復(fù)系統(tǒng);放在UltraBay Slim插槽里面之話,即使用這塊硬盤來啟動,按AccessIBM進入只有一個Enter Setup Utilies一個選項,沒有法恢復(fù)系統(tǒng)。
HPA是ATA之標(biāo)準(zhǔn),ATA-4就含了HPA,通俗之理解就是設(shè)置讀取之硬盤 大之扇區(qū)號,從而把高端之內(nèi)容隱藏起來,這個 大之扇區(qū)號能夠?qū)懺谟脖P之某個地方,因此即使你把這個硬盤掛到其它機器上,好情況下你也看不到隱藏之內(nèi)容,fdisk,pqmaigc之類之工具也把這個硬盤當(dāng)做一個稍小容量之硬盤。現(xiàn)在HPA已經(jīng)是用ATA-5之標(biāo)準(zhǔn)了,這個標(biāo)準(zhǔn)需要在HDD之 Firmware支持之。
phoenix(生產(chǎn)BIOS之公司)開發(fā)之Core Managed Environment (cME),聯(lián)想主板上之recovery easy II,IBM之系統(tǒng)恢復(fù)都是利用HPA之例子。
由于資料有限,我只能推測IBM是這樣使用HPA之:硬盤隱藏部分事實上是個好之分區(qū)(比如FAT32、NTFS),這樣就不需要開發(fā)大量之針對隱藏空間之應(yīng)用程序。
二、相關(guān)工具
所有相關(guān)之FW工具,在第一張恢復(fù)光盤之recovery目錄下面,是對fw開頭之那些文件,這里打了一個工具上來。具體在后面逐個介紹。附件: 406198-FWTOOLS.RAR
這個是psa驅(qū)動,在config.sys文件中加入它之后,才能在DOS下面查看HPA里面之內(nèi)容。
附件: 406203-PSADISK.SYS
按AccessIBM之后出來之界面,就是這個程序,IBM叫它sight.exe。
附件: 406208-SIGHT.EXE
這個程序需要minidos.sys來支持。
附件: 406212-MINIDOS.SYS
三、HPA結(jié)構(gòu)
先講FW工具集中之fwdir命令。這個DOS命令,和DOS之dir相類似,即查看HPA里面之列表,括相應(yīng)之ID,名字,第一扇區(qū),容量大小等相關(guān)信息。如果已經(jīng)有HPA了,在DOS下面運行fwdir,會看到如下類似之信息:
FWDIR version 1.00 - Copyright (c) 2002 Phoenix Technologies Ltd.
Detecting drives...
BEER Structure on Drive 2
Signature: 0xBEEF (Committed)
Capabilities: 0x0029
Native Max Sect: 117210239
Current Max Sect: 117210239
First HPA Sector: 112017857
Last Part sector: 112008960
Service Areas: 8
# ID Name 1st Sector Megabytes Sec Icon Flag
-- ---- ------------------------------ ---------- --------- --- ---- ----
0 000h FirstWare Reserved Area 117005431 100.000 0 00h 03h
1 100h SIGHT 117002548 1.408 3 FCh 21h
2 8104h Restore from backup 116999665 1.408 0 22h 21h
3 8105h Rec Boot 116983660 7.815 0 21h 21h
4 8800h BIOSWORKAREA 116979564 2.000 0 21h 06h
5 8888h Rec Data 112047980 2408.000 0 21h 06h
6 8101h Create Diagnostic Diskettes 112032920 7.354 0 24h 21h
7 8100h Run Diagnostics 112017857 7.355 0 23h 21h
可以看到HPA之結(jié)構(gòu),左邊之ID部分相當(dāng)重要,運行所有命令都幾乎要涉及這個參數(shù)。
第一部分是保留區(qū),由于沒有法查看里面之?dāng)?shù)據(jù)(如何查看,稍后之fwmount命令中講述),站長沒有法確定這個保留區(qū)之真正作用,這個區(qū)之大小正好是100MB;
第二部分是叫sight,里面只有兩個文件,即minidos.sys和sight.exe,這個程序只有200多K,是一個標(biāo)準(zhǔn)之DOS程序,可以在DOS下面直接運行,即會看到啟動時候按AccessIBM那樣之界面,這部分只有一張軟盤大小,運行chkdsk查看它之大小和一張標(biāo)準(zhǔn)軟盤是一樣之;
第三部分也是一張軟盤大小,叫Restore from backup,即從備份中恢復(fù)之時候啟動;
第四部分是Rec boot,即紀(jì)錄引導(dǎo)區(qū),大小是8MB,在AccessIBM中運行Recover to factory contents時從這部分引導(dǎo);
第五部分是BIOSWORKAREA,用fwmount沒有法打開查看,站長只能從其它區(qū)域之情況和它之名字來推測它是相當(dāng)于電腦之BIOS這樣一個區(qū)域;
第六部分是Rec Data,就是四張恢復(fù)光盤之?dāng)?shù)據(jù)了,有2.4G大;
第七和第八部分就分別是制作檢測工具盤和運行檢測工具。
fwdir命令和其它相關(guān)命令之使用參數(shù)通常會涉及一個drv=0這樣之,缺省時是使用drv=0,這個設(shè)備是硬盤插槽里面之硬盤,drv=1通常使用不了,它是指第一通道之從設(shè)備(主設(shè)備通常就是硬盤插槽之硬盤了);drv=2則是第二通道之主設(shè)備(通常就是光驅(qū)位置之設(shè)備),drv=3則是第二通道之從設(shè)備了。如果使用了UltraBay Slim硬盤托架,那么這個就是drv=2了。運行格式是:
fwdir drv=2
四、HPA之刪除
刪除HPA之工具:fwdelete使用很簡單,如果要刪除硬盤插槽里面之硬盤之HPA,輸入:
fwdelete drv=0 all
然后按Y確認,即可刪除。
如果是要刪除UltraBay Slim硬盤托架里面之硬盤之HPA,輸入:
fwdelete drv=2 all
然后按Y確認,即可刪除。
執(zhí)行此命令之時候,BIOS中之IBM PreDesktop Area設(shè)置不用改為Disable。但刪除HPA后如果要利用這部分之硬盤空間(2.5G左右),還得改為Disable才行。預(yù)先設(shè)置為Disable再執(zhí)行fwdelete也可以之。
這個命令可以先用fwdir查看HPA結(jié)構(gòu)之后,再用fwdelete逐個刪除,在后面加上id=xxx這樣就可以了。
fwdelete能夠以 快捷、 直接之方式來刪除HPA。對于一些網(wǎng)友在使用或研究HPA過程中非常有用。
站長在用東芝MK5024GAY硬盤研究HPA之時候,曾發(fā)生過HPA損壞,改為Disable后用DM、PQ或Windows來刪除那塊區(qū)域(HPA)都沒有效果,表面上是刪掉了,但一改回Normal,啟動系統(tǒng)時馬上就報1850錯,或者是檢驗錯,后來用XP安裝光盤來刪,也不行,象幽靈似之纏著不放。到后來發(fā)覺fwdelete命令時,一下子就干掉了,走了這么多彎路。
五、HPA之備份與恢復(fù)
HPA之備份與恢復(fù):fwbackup和fwrestorfwbackup是備份HPA之工具,重要參數(shù)有file,size,drv,其中file是指備份出來之文件,比如file=t40hpa,那么它會備份出來t40hpa.001,002,003這樣之文件;size參數(shù)是指備份出來之文件之大小,比如size=650,那么備份出來之文件自動按每個650MB一個分割,drv參數(shù)和之前介紹之相同。
FWBACKUP Version 1.00
(C) Copyright 2002 Phoenix Technologies Ltd. All Rights Reserved.
USAGE: FWBACKUP file=<filename> size=<spansize> [drv=drive_no] [ver] [/?]
Optional parameters:
drv=n Specify drive to use. 0=pm,1=ps,2=sm,3=ss
ver Display version and build information.
/? Show this help message.
Note: If is specified the program will run in unattended mode
fwbackup可以在本機硬盤DOS下直接運行,通常可以用U盤或軟盤或光盤啟動到DOS下面,在硬盤上有FAT32格式之分區(qū)下面來操作,就可以備份。
和fwbackup對應(yīng),fwrestor就是恢復(fù)HPA之工具了。fwrestor參數(shù)相對簡單一些,不用size來指定大小,它會自動尋找當(dāng)前目錄下面file=指定之文件名,然后恢復(fù)。運行fwrestor命令時,要求恢復(fù)之硬盤必須是沒有任何分區(qū)之,否則恢復(fù)完成之后,會出錯。
FWRESTOR Version 1.00
(C) Copyright 2002 Phoenix Technologies Ltd. All Rights Reserved.
USAGE: FWRESTOR file=<filename> [drv=drive_no] [verify] [ver] [/?]
Optional parameters:
drv=n Specify drive to use. 0=pm,1=ps,2=sm,3=ss
verify Compare data written to disk with data read from file
ver Display version and build information.
/? Show this help message.
運行fwbackup和fwrestor命令時,BIOS中IBM PreDesktop Area可以設(shè)置為Disable或Normal。但恢復(fù)完之后,必須要用恢復(fù)好之硬盤來放在硬盤插槽里面,并且在BIOS中IBM PreDesktop Area設(shè)置為Normal或Secure,才能按AccessIBM來恢復(fù)系統(tǒng);放在UltraBay Slim插槽里面之話,即使用這塊硬盤來啟動,按AccessIBM進入只有一個Enter Setup Utilies一個選項,沒有法恢復(fù)系統(tǒng)。