NTFS硬盤完美啟動(dòng) - 讓W(xué)indows7支持BackTrack3(BT3)
2009/10/18 12:45:28 編輯:Windows7之家 - Mary Jane 字體:【 大 中 小】Win7之家( airtaxifl.com):NTFS硬盤完美啟動(dòng) - 讓W(xué)indows7支持BackTrack3(BT3)
Windows7 RTM 已經(jīng)發(fā)布了,很多人都已經(jīng)用上還沒正式上市的 Windows7,但是 Windows7 類似 Vista 的引導(dǎo)機(jī)制導(dǎo)致不能像 XP 時(shí)代那樣采用 GRLDR 直接啟動(dòng) BT3 并和 XP 共存了,至少我到現(xiàn)在還沒看到有解決辦法。
Window 7 的核心版本號(hào)是 NT6.1 ,和 Vista NT6.0 還是屬于一個(gè)系列的,因此采用了一樣的啟動(dòng)管理機(jī)制。對(duì)于雙系統(tǒng)來說,正如 98 和 XP 共存的雙系統(tǒng)一樣, XP 和 Win7 共存的算系統(tǒng)安裝也是要有先后順序的。因?yàn)?Windows 的啟動(dòng)管理屬于向下兼容, Win7 的可以兼容 XP ,而 XP 不可以兼容 Win7. 所以要先裝 XP 再裝 Win7 才不會(huì)出問題。
先解釋一下一些 Windows 7 中跟引導(dǎo)有關(guān)系的文件和關(guān)鍵位置
* Mbr&dpt : 硬盤主引導(dǎo)記錄和分區(qū)表(分區(qū)表中包括四部分用來記載四個(gè)主分區(qū)的物理位置),位于硬盤的第一個(gè)扇區(qū),不屬于任何系統(tǒng)分區(qū)。
* Bootmgr : windows nt6 系列的引導(dǎo)管理器,位于主激活分區(qū)內(nèi),屬于系統(tǒng)隱藏文件
* Boot.bak : boot.ini 的備份,雙系統(tǒng)的時(shí)候會(huì)存在。
* Bootsect.bak: bootsect.bak 是該活動(dòng)分區(qū)的前 16 個(gè)扇區(qū)的備份文件,所以它的大小是 8KB, 就是 pbr 的備份。
* PBR : 分區(qū)引導(dǎo)代碼
* /boot/[ 語言 ]/bootmgr.exe.mui: 在主分區(qū) boot 目錄下包括 24 個(gè)語言的 BOOTMGR.EXE.MUI ,用來和 bootmgr 組合形成啟動(dòng)菜單
* /boot/bcd: 相當(dāng)于 xp 時(shí)代的 boot.ini ,不過 bcd 是基于數(shù)據(jù)庫的,不是基于文本的,也是為了安全性考慮吧。微軟專門提供了一個(gè)修改 bcd 的程序 bcdeit 來修改相應(yīng)的參數(shù)
* /boot/bcd.log&bcd.log1&bcd.log2 : log 文件,具體干嘛的未知。
* /boot/bootstat.dat : 引導(dǎo)時(shí)候用來記錄引導(dǎo)狀態(tài)的數(shù)據(jù)文件
* /boot/ memtest.exe :內(nèi)存測(cè)試工具
下面來解釋一下 Window 7 的啟動(dòng)原理。(正常流程 , 因?yàn)檫有很多非正常的情況啟動(dòng)過程有些區(qū)別,就不再這里贅述了)
首先加電之后是 bios 程序啟動(dòng), bios 自檢完成之后,將 mbr 的代碼讀入內(nèi)存,管理權(quán)交給 mbr , mbr 再讀取 dpt ,從 dpt 找出硬盤的所有分區(qū)哪一個(gè)是激活的主分區(qū)。到這里為止,所以系統(tǒng)都是一樣的。下面就有區(qū)別了。 Dpt 讀完找到主分區(qū)之后然后找到這個(gè)主分區(qū)的 pbr , pbr 位于激活主分區(qū)的第一個(gè)扇區(qū)。安裝不同操作系統(tǒng)的時(shí)候 pbr 是會(huì)被改變的, XP 的 pbr 寫死的代碼是去找 ntldr 。而 vista 和 Win7 的 pbr 里寫進(jìn)的就是去找 bootmgr 。
這個(gè)時(shí)候顯示器上還沒有顯示引導(dǎo)管理器的界面。 Bootmgr 被找到之后管理權(quán)就交到了 bootmgr 。 Boot Manager 首先從 BCD 中讀取 Boot Manager 菜單的語言版本信息,然后再調(diào)用 BOOTMGR 與相應(yīng)語言的 BOOTMGR.EXE.MUI 組成相應(yīng)語言的啟動(dòng)菜單,之后才會(huì)在顯示器上顯示引導(dǎo)管理器,也就是選擇多操作系統(tǒng)的那個(gè)文字界面。最后,當(dāng)你選擇了相應(yīng)的操作系統(tǒng),這里當(dāng)然是 7 (如果選擇 xp, 會(huì)轉(zhuǎn)入 xp 的啟動(dòng)流程,找到 xp 的 ntldr 然后啟動(dòng)), bootmgr 就去尋找系統(tǒng)分區(qū)(系統(tǒng)分區(qū)和主分區(qū)的概念不是一樣的哦) windows/system32 下的 winload.exe 加載操作系統(tǒng)內(nèi)核。剩下的事就是啟動(dòng) Windows7 了。
雖然不能利用 GRLDR 直接啟動(dòng) BT3 ,但是還是可以利用 mbr 來引導(dǎo)的,也就是把 mbr 文件和 boot.ini 文件放到 C 盤,再讀取 menu.lst 去啟動(dòng) bt3 ,但是此方法不支持中文菜單。不過基本上沒影響。
請(qǐng)下載以下附件,請(qǐng)注意目錄里面的 boot.ini 文件,此文件是帶隱藏屬性的。
安裝方法:解壓縮附件
boot.ini:引導(dǎo)文件
bt3.xpm:背景圖片
FONTS:字體文件
GRLDR:跨平臺(tái)引導(dǎo)文件
grldr.mbr:寫入硬盤 mbr 或者 NT 引導(dǎo)系統(tǒng)中 boot.ini 來調(diào)用
menu.lst:GRUB的配置文件,啟動(dòng)菜單
以上文件全部復(fù)制到 C 盤,當(dāng)然你可以修改 boot.ini 和 menu.lst 文件來個(gè)性化你的 BT3 啟動(dòng)菜單。
menu.lst 文件默認(rèn) BT3 的啟動(dòng)盤符是 hd0,7 ,也就是 G 盤,這個(gè)看個(gè)人喜好來決定,C 盤式 hd0,3 ,D 盤是 hd0,4 ,依此類推。菜單的停留時(shí)間是 4 秒!
重啟之后你就會(huì)發(fā)現(xiàn)多了一個(gè)菜單出來。。
文/穿越
評(píng)論列表
查看所有 條評(píng)論