bootmgr:啟動管理器,BootMgr是Boot Manager的縮寫,在微軟的Windows Vista,Windows 7,和Windows Server 2008操作系統(tǒng)中,其啟動過程與從前的以NT為內(nèi)核的windows版本略有不同。bootmgr就相當于win nt/win2000/WinXP時代的NTLDR。 電腦加電后,首先是啟動BIOS程序,BIOS自檢完畢后,找到硬盤上的主引導記錄MBR,MBR讀取DPT(分區(qū)表),從中找出活動的主分區(qū),然后讀取活動主分區(qū)的PBR(分區(qū)引導記錄,也叫dbr,究竟該叫什么,網(wǎng)絡上爭論未休,我們姑且叫它pbr吧),PBR再搜尋分區(qū)內(nèi)的啟動管理器文件 BOOTMGR,在BOOTMGR被找到后,控制權(quán)就交給了BOOTMGR。BOOTMGR讀取\boot\bcd文(BCD=Boot Configuration Data ,也就是“啟動配置數(shù)據(jù)”,簡單地說,windwows7下的bcd文件就相當于xp下的boot.ini文件),如果存在著多個操作系統(tǒng)并且選擇操作系 統(tǒng)的等待時間不為0的話,這時就會在顯示器上顯示操作系統(tǒng)的選擇界面。在我們選擇啟動WINDOWS7后,BOOTMGR就會去啟動盤尋找 WINDOWS\system32\winload.exe,然后通過winload.exe加載windows7內(nèi)核,從而啟動整個windows7系 統(tǒng)??梢园堰@個過程簡單地概括為:BIOS-->MBR-->DPT-->pbr--> Bootmgr-->bcd-->Winload.exe-->內(nèi)核加載 -->整個windows7系統(tǒng)
可以說,bootmgr就相當于win NT/win2000/WinXP時代的NTLDR。NTLDR是win nt/win2000/WinXP中的引導文件,是一個隱藏的,只讀的系統(tǒng)文件,位置在系統(tǒng)盤的根目錄,它的主要職責是解析Boot.ini文件,用來裝載操作系統(tǒng)。一個值得注意的變化是,Windows 7啟動管理器是按空格鍵而不是按F8功能鍵調(diào)用。 F8鍵依然具有調(diào)取高級啟動選項菜單的功能。 為了保持一個可擴展固件接口系統(tǒng),也為了使版本最高的啟動管理器負責管理所有的操作系統(tǒng),使啟動管理器具備向下兼容性、而不是向上兼容,Windows啟動管理器對已安裝的所有操作系統(tǒng)統(tǒng)一列為一個可供選擇的菜單,在配置 Windows Vista/Server 2008 與 Windows 2000/XP/Server 2003 的多系統(tǒng)共存時,BOOTMGR 將全面負責計算機的啟動管理工作,NTLDR 將淪為 BOOTMGR 的替補。舉個例子,假設我們配置了 Windows Vista、Windows XP、Windows Server 2008、Windows Server 2003 四個操作系統(tǒng)的共存,BOOTMGR 啟動菜單并不會把 Windows XP 與 Windows Server 2003 分別列在啟動菜單里,而是將它們統(tǒng)一顯示為“早期版本的 Windows”。 啟動配置數(shù)據(jù)(BCD)是一種用于啟動時的配置數(shù)據(jù)固件獨立數(shù)據(jù)庫。它取代了NTLDR中的boot.ini,是由微軟的新Windows啟動管理器使用。啟動配置數(shù)據(jù) (BCD) 存儲包含啟動配置參數(shù),并在 Microsoft(R) Windows Vista 和 Microsoft(R) Windows Server 2008 操作系統(tǒng)中控制操作系統(tǒng)的啟動方式。這些參數(shù)以前位于 Boot.ini 文件中(在基于 BIOS 的操作系統(tǒng)中)或穩(wěn)定 RAM (NVRAM) 項中(在基于可擴展固件接口的操作系統(tǒng)中)。通過在 BCD 存儲中添加、刪除、編輯和附加項,可以使用 Bcdedit.exe 命令行工具來影響在預操作系統(tǒng)環(huán)境中運行的 Windows(R) 代碼。Bcdedit.exe 位于 Windows Vista 分區(qū)的 \Windows\System32 目錄中。創(chuàng)建 BCD 旨在為描述啟動配置數(shù)據(jù)提供一種改進的機制。隨著新固件模型 [例如,可擴展固件接口 (EFI)] 的發(fā)展,用戶需要一個可擴展且可互操作的接口以提取底層固件。這一全新的設計為 Windows Vista 中的多種新功能(例如,啟動修復工具和多用戶安裝快捷方式)提供了支持。
微軟的新一代操作系統(tǒng)Windows 7,然而,這個 7 并不是代表 Windows 7 的核心版本已經(jīng)從 Windows Vista 的 NT 6 升級至 NT 7,而只是代表 Windows 7 是微軟正式發(fā)行的桌面 Windows 第七代產(chǎn)品而已。Windows 7 真正的核心版本號僅僅是 NT 6.1,Windows 7 與 Windows Vista 的關系好比是 Windows XP(NT 5.1)與 Windows 2000(NT 5.0)。時隔多年,Windows 又一次與我們玩起了文字游戲,以至于有人將 Windows 7 戲稱為“NT 6.1 = Windows 非常 6+1 = Windows 7”。 為了更為直觀地理解 Windows 7 = NT 6+1,不妨從 Windows 啟動管理器的層面看待這個問題。與容易混淆的 Windows 正式產(chǎn)品名稱相比,啟動管理器一直是嚴格按照 Windows 系統(tǒng)的核心版本加以區(qū)分的。這是由于在配置多重操作系統(tǒng)共存時,必須由版本最高的啟動管理器負責管理所有的操作系統(tǒng),啟動管理器只具備向下兼容性、不具備向上兼容性。因此,啟動管理器的版本必須嚴格按照高低先后的順序正確排列,而不能像Windows 的正式名稱一樣胡亂設置,否則便有可能無法正確配置多重操作系統(tǒng)共存。 例如,Windows 2000/XP/Server 2003 之所以都叫做 NT 5.X,是因為它們的啟動管理器全部都是 NTLDR 與 BOOT.INI。在配置 Windows 2000/XP/Server 2003 彼此之間的多系統(tǒng)共存時,每一個操作系統(tǒng)都是由 NTLDR 與 BOOT.INI 統(tǒng)一管理的,大家是平起平坐的關系。而做為 NT 6.X 的 Windows Vista/Server 2008 則采用了 BOOTMGR 與 BCD 的新式啟動管理器,在配置 Windows Vista/Server 2008 與 Windows 2000/XP/Server 2003 的多系統(tǒng)共存時,BOOTMGR 將全面負責計算機的啟動管理工作,NTLDR 將淪為 BOOTMGR 的替補。舉個例子,假設我們配置了 Windows Vista、Windows XP、Windows Server 2008、Windows Server 2003 四個操作系統(tǒng)的共存,BOOTMGR 啟動菜單并不會把 Windows XP 與 Windows Server 2003 分別列在啟動菜單里,而是將它們統(tǒng)一顯示為“早期版本的 Windows”。只有做為 NT 6.X 的 Windows Vista 與 Windows Server 2008 才有資格在 BOOTMGR 啟動菜單中以獨立選項的姿態(tài)出現(xiàn)。我們只有選擇了“早期版本的 Windows”選項,由 BOOTMGR 將啟動控制權(quán)移交給 NTLDR 并自動切換為 NTLDR 菜單,這時才可以繼續(xù)選擇需要啟動 Windows XP 還是 Windows Server 2003。換言之,NTLDR 啟動菜單就像是 BOOTMGR 啟動菜單的子菜單一樣。 現(xiàn)在我們再來看一下 Windows 7,當我們在安裝有 Windows Vista/Server 2008 的計算機中安裝了 Windows 7 后,Windows 7 會將自己添加在 BCD 里,與原有的 Windows Vista/Server 2008 實現(xiàn)共存,BOOTMGR 啟動菜單將顯示 Windows 7、Windows Vista/Server 2008 及早期版本的 Windows(如果有的話)三個選項。換言之,Windows 7 采用的啟動管理器依然是 BOOTMGR 與 BCD,它與 Windows Vista/Server 2008 是一個平起平坐的關系。 假如 Windows 7 的核心版本叫做 NT 7 的話,那么它應該拿出一個版本比 BOOTMGR 與 BCD 更高的新啟動管理器才對,由這個新的啟動管理器接管 BOOTMGR 與 BCD 的工作。當然,目前在現(xiàn)實中是不存在這樣一個啟動管理器的,我們不妨將其假設為 Loader v7。那么,當我們安裝了 Windows NT 7 系統(tǒng)后,Loader v7 將自動取代 BOOTMGR 與 BCD 負責計算機的啟動管理,到時候只有符合 NT 7.X 版本的 Windows 系統(tǒng)才有資格以獨立選項的姿態(tài)出現(xiàn)在 Loader v7 菜單中,Windows Vista/Server 2008 將被統(tǒng)一顯示為“早期版本的 Windows”、Windows XP/Server 2003 則將被顯示為“更早期版本的 Windows”(當然,如果幾年以后真的有 Loader v7,到時它究竟還能否向下兼容 Windows XP/Server 2003 恐怕很難說了)。 現(xiàn)在,Windows 7 雖然正式名稱叫做 7,但是它卻并沒有拿出這樣一款更高級的 Loader v7 啟動管理器,依然只能依靠 BOOTMGR 與 BCD、同 Windows Vista/Server 2008 平起平坐,因此 Windows 7 的核心版本號還沒有資格提升到 NT 7 的高度,最多只能叫做 NT 6.1 了。雖然現(xiàn)在 Windows 7 僅僅放出了一個預覽版,在正式發(fā)行前會有什么變化還不好說,但從目前核心版本號已經(jīng)確定為 NT 6.1 的情況來看,筆者認為 Windows 7 的啟動管理器不會有什么大變了??梢灶A見在今后的三五年內(nèi),我們的計算機都將長期使用 BOOTMGR 與 BCD。就像 Windows 2000/XP/Server 2003 可以并列在一起成為 NT 5.X 系列一樣、Windows Vista/Server 2008(包括將來的 R2)/Windows 7 也可以并列在一起組成一個相對完整的 NT 6.X 家族了。 其實,在 Windows 7 核心版本號確定之前,筆者個人還是非常希望 Windows 7 能夠設計新的啟動管理器取代 BOOTMGR 與 BCD,真正成為 NT 7 的?,F(xiàn)有的 BOOTMGR 與 BCD 雖然已經(jīng)很好用,但有一個最大的缺陷就是它始終還是基于純字符界面的、不是一個支持鼠標操作的 GUI 界面,叫做 Windows 未免有些名不副實。其它操作系統(tǒng)可是早就實現(xiàn)圖形方式的啟動管理器了,這不得不說是一個遺憾。試想如果開機自檢后可以出現(xiàn)一個圖形化的啟動界面,通過鼠標點擊按鈕選擇操作系統(tǒng)以及安全模式等選項該有多好,期待 NT 7 將來可以實現(xiàn)。目前只有使用 ERD Commander 等第三方啟動管理器軟件才可以實現(xiàn)這個目的了 編輯本段bootmgr出現(xiàn)以下兩個問題之后的解決辦法 bootmgr出現(xiàn)以下兩個問題之后的解決辦法: 1,出現(xiàn)“bootmgr is missing, please press ctrl+alt+del to restart”錯誤提示時的解決辦法 bootmgr丟失,按Ctrl + Alt + DEL 重新啟動。錯誤往往在以下情況:您意外或者故意刪除了一些重要Vista系統(tǒng)文件,或者文件被病毒或惡意軟件損壞或摧毀,還可能您采取了不適當?shù)腂IOS模擬等Vista激活方式,讓你不能訪問Vista的桌面環(huán)境。所以這是系統(tǒng)的問題, 想要修復bootmgr丟失的錯誤,而您又不想重新安裝Windows Vista時,大部分人選擇了使用Vista的DVD安裝光盤來開機,這兒有個永久性的根除這個錯誤的辦法,很簡單,只要按照中概述的步驟指南來操作就可以了。 一、插入Windows Vista的DVD安裝光盤,用它來啟動電腦,如果沒有正常啟動,請確定在BIOS里面設置下開機啟動順序,先由DVD驅(qū)動器啟動電腦。 二、在安裝Winows那個窗口,選擇適合您的系統(tǒng)語言、時區(qū)、鍵盤模式,然后點擊下一步按鈕。 三、在下一步驟的屏幕左下角,點擊“修復您的電腦”鏈接。 四、如果您有很多Windows硬盤分區(qū)的話,請先選擇您要修復的那個分區(qū), 如果您只有一個Windows安裝,那么選擇就是顯而易見的。 五、在“系統(tǒng)恢復選項”窗口,點擊“啟動修復”,這樣,就可以防止Windows無法啟動,也解決丟失bootmgr錯誤提示的問題。我的本本也是那樣,后來我發(fā)現(xiàn)VISTA系統(tǒng)就都是那樣,后來我就不用了,我現(xiàn)在還用的是XP SP3的,這穩(wěn)定 2,出現(xiàn)“BOOTMGR is compressed Press Ctrl+Alt+Del to restart”錯誤提示時的解決辦法 方法一,最簡單的方法是:找一張winpe光盤,用他引導進入winpe系統(tǒng),打開我的電腦,右擊C盤,選擇屬性,把那個“壓縮此驅(qū)動器以節(jié)約磁盤空間”的勾去掉,然后確定,會出現(xiàn)bootmgr是只讀文件,是否忽略,全部忽略即可,好了,大功告成,重啟后一切正常 方法二,windows7對C盤進行了壓縮后,惡夢開始了。重啟后顯示:“BOOTMGR is compressed Press Ctrl+Alt+Del to restart”。我使用的方法是: 1、用vista啟動,選擇修復; 2、運行“Bootrec.exe /fixmbr、Bootrec /fixboot"然后重啟。。然后華麗又出現(xiàn)在了面前,原來 成功就是這么簡單。 當然在運行這個命令之前,網(wǎng)上的兩種方法我都試過了,C盤也解壓縮了。網(wǎng)上通用的方法如下:1、Boot the vista dvd to get to the command line. expand bootmgr temp attrib bootmgr -s -r -h del bootmgr ren temp bootmgr attrib bootmgr -a +s +r +h 2、Vista安裝盤啟動,打開命令提示符,轉(zhuǎn)到你Vista的system32(如c:\windows\system32),之后“compact /u c:\bootmgr“最好運行"compact /u /a /f /s:C:\",把c:整個分區(qū)解壓縮。
啟動管理器丟失故障解決方案
如果C盤根目錄下的啟動管理器 bootmgr 破壞或者丟失,則啟動計算機時,系統(tǒng)會提示找不到操作系統(tǒng),這類似于 Win2000/WinXP的ntldr 文件丟失。
在 Win2000/WinXP 下,解決這類故障首先需要知道該故障原因是啟動管理器丟失,然后進入故障恢復控制臺,在命令提示符下利用 expand命令 把安裝光盤里的 ntldr 文件副本解壓縮到C盤根目錄。
在 Windows win7 / Vista 則非常簡單,我們根本無需知道到底是什么原因?qū)е孪到y(tǒng)無法啟動,只需按照以下方法進行操作即可:
1、首先利用Windows win7/ Vista安裝光盤引導系統(tǒng)進入“系統(tǒng)恢復選項”,并單擊其上的“啟動修復”。
2、系統(tǒng)按照設定的順序,依次查找可能導致啟動故障的原因。在系統(tǒng)后臺,啟動恢復檢查程序會自動對Windows更新(如果安裝補丁失敗,也可能導致啟動故障)、系統(tǒng)磁盤、磁盤錯誤、磁盤元數(shù)據(jù)、目標操作系統(tǒng)、啟動日志等多項內(nèi)容進行測試分析。
3、如果系統(tǒng)找到該啟動故障的原因,并修復后,會進入對話框,提示已經(jīng)找到并嘗試修復問題。
4、Windows win7/ Vista默認不會顯示所找到的故障原因,直接單擊“完成”按鈕即可重新啟動計算機,以完成恢復操作。
如果需要查看故障原因,可以單擊該對話框上的“單擊此處以獲得診斷和修復的詳細信息”。在打開的對話框上,我們可以看到找到的根本原因是“啟動管理器”丟失,而且所需的文件修復工具已經(jīng)成功完成。
|