Windows開機管理程式

Windows開機管理程式(英語:Windows Boot Manager)是由Microsoft開發於Windows NT平台從Windows VistaWindows Server 2008開始引進的新一代開機管理程式,用以取代NTLDR。當電腦執行完POST後,傳統型BIOS會根據啟動磁區尋找開機硬碟中標記"啟動"分割區下的BOOTMGR檔案;UEFI則是ESP分割區中的Bootmgfw.efi檔案(即UEFI中的「Windows Boot Manager」開機裝置,檔案名係「Boot Manager Firmware」的缩写)或bootx64.efi檔案,接著Windows Boot Manager會讀取開機組態資料庫(Boot Configuration DatabaseBCD)下的啟動資料,接著根據其中的資料載入與預設或使用者所選擇的作業系統。如果選擇啟動Windows NT 5.x系列作業系統(Windows 2000/XP/2003),則BOOTMGR會先啟動NTLDR檔案,再由NTLDR啟動Windows NT 5.x。

開機組態資料庫(BCD

開機組態資料庫(Boot Configuration Data)是一個儲存啟動組態且獨立於硬體的資料庫。它替代了由舊版Windows使用的NTLDR之開機組態檔案boot.ini

開機組態資料庫的檔案結構是與Windows登錄資料庫完全相同的。 [1]在使用了統一可延伸韌體介面UEFI)開機方式的電腦上,BCD檔案儲存在EFI系统分區(ESP);在使用Legacy BIOS開機方式的電腦上,有可能儲存在系统分割區下的"\Boot"目錄下的bcd檔案中,如果是Windows 7與後續版本,也有可能儲存在一個隱藏的開機分割區(200MB左右)中(尤其是在沒有任何磁碟分割的硬碟中安裝Windows 7/8/10的情況下)。

內建於Windows,用於設定BCD的公用程式為"bcdedit.exe"[2];若要快速設定系統分割區或是修復錯誤的開機選項則使用"bcdboot.exe"[3]公用程式;其他用於管理BCD的工具還有EasyBCDVisual BCDBootice或是WMI等工具修改BCD

開機組態資料庫包含Windows開機管理程式的選單及控制管理程式的行為,就像包含NTLDR所使用boot.ini。這些選單的內容是:

  • 透過呼叫winload.exewinload.efi启动Windows的選項。
  • 透過呼叫winresume.exewinresume.efi使Windows從休眠中啟動的選項。
  • 透過呼叫NTLDR来启动Windows先前版本的選項。
  • 載入和執行一個分割區啟動紀錄的選項。

OS Loader

winload.exe

Windows開機管理程式通过呼叫winload.exe程式(在UEFI系統下則是winload.efi程式),作業系统的啟動程式来載入作業系統的核心(ntoskrnl.exe)和基本系統應用程式。winload.exe是用來替代先前WindowsNTLDR程式。

winresume.exe

当电脑从休眠模式恢复至正常模式时,bootmgr則调用winresume.exe。并使用与以往有别的启动模式和页面(Windows 7 系统则显示「正在恢复Windows」)以快速恢复系统先前並的工作进度。在UEFI系统中,應用程序套件名为winresume.efi,通常位于\windows\system32

进阶启动

Windows Vista作业系统開始,微软公司引進的新一代開機管理程式,其内部囊括了众多进阶工具,以便用以除错和解决系统无法正常启动问题[4]

Windows 8開始,由於Windows預設採用快速啟動(Fast Startup)技術,進階啟動選項預設被隱藏(但用户仍然可以手动开启進階啟動選項,效果和Windows 7完全相同[註 1])。

工具

  • 修復您的電腦

啟動系統內建的Windows RE進階復原選項(Windows 8或更新則出現選擇選項),系統會呼叫winre.wim內的Windows PE,並顯示所有進階修復工具。

  • 安全模式

安全模式啟動系統,並加载系统必需组件和驱动程序。

  • 安全模式 (含網路功能)

以安全模式啟動系統,並加載存取網際網路或網路上其他電腦所需的網路驅動程式和服務。

  • 安全模式 (含命令提示字元)

以安全模式啟動系統,並運行於以往有別的命令提示字元

  • 啟用開機記錄。

对系統进行测试并记录相关日志,日志文件名称为ntbtlog.txt

  • 啟用低解析度視訊 (640×480)

使用當前的視訊驅動程式及低分辨率和低刷新率來啟動系統。

  • 上次的正確設定(進階)

使用上次正常登錄驅動程式設定來啟動系統。

  • 目錄服務還原模式

啟動執行Active Directory的Windows網域控制站,以便還原目錄服務。

  • 偵錯模式

以進階疑難排解模式來啟動系統。

  • 停用系統失敗時自動重新啟動

禁止系統在遇到錯誤(包括蓝屏死机)時自動重啓動作。

  • 停用驅動程式強制簽章。

允許用户使用並安裝具有不受信任或無簽章的驅動程式

  • 正常啟動 Windows

以正常模式啟動系統。

注释

  1. ^ 只有在系统完全关闭的情况下,才能在下次开机时显示進階啟動選項。

引用

  1. ^ Russinovich, Mark. Fixing Disk Signature Collisions. Mark's Blog (Microsoft Corporation). Microsoft TechNet. 8 November 2011 [9 November 2011]. (原始内容存档于2017-08-24). 
  2. ^ BCDedit 命令列選項. [2016-02-15]. (原始内容存档于2017-06-21). 
  3. ^ BCDboot 命令列選項. [2016-02-15]. (原始内容存档于2017-06-21). 
  4. ^ 進階啟動選項 (包括安全模式) - Windows 說明. 微軟. [2019-03-15]. (原始内容存档于2020-04-06). 

参见