NTLDR
来自维基百科,自由的百科全书
Remove ads
来自维基百科,自由的百科全书
NTLDR(NT loader的縮寫)是微軟的Windows NT系列作業系統(直至Windows XP和Windows Server 2003)的引導程式。NTLDR可以從硬碟以及CD-ROM、USB手指等移動記憶體執行並引導Windows NT系統的啟動。如果要用NTLDR啟動其他作業系統,則需要將該作業系統所使用的啟動磁區代碼儲存為一個檔案,NTLDR可以從這個檔案載入其它引導程式。
NTLDR主要由兩個檔案組成,這兩個檔案必須放在系統分區(根據微軟的定義,為在MBR中標識為活動分區的分區,一般為第一個分區/C分區):
boot.ini也是比較重要的檔案。它是引導程式的組態檔。當boot.ini遺失時,NTLDR會啟動第一塊硬碟第一個分區上的\Windows目錄中的系統。
在安裝、維護Windows NT系統時,可以使用fixmbr命令在硬碟中寫入啟動NTLDR引導程式的代碼。
Windows Vista、Windows Server 2008及以後版本的作業系統中,NTLDR被BOOTMGR替代。
NTLDR由兩個可執行檔案構成:
使用WinHex或者類似的二進制處理軟件,在NTLDR中搜尋「MZ」,並將其前的部分截去,即可以獲得OSLOADER.EXE。在Windows安裝檔案中也可以找到壓縮後的OSLOADER.EX_檔案。
Windows NT最初是為ARC(一類RISC系統架構)設計的,因此只有OSLOADER.EXE,即系統載入器,通過接受指定的系統檔案路徑和其他啟動參數引導對應目錄下的Windows NT系統,而指定這些參數的工作交給ARC內建的啟動管理器進行。x86架構缺乏啟動管理器:BIOS只會呼叫第一啟動裝置的MBR中列明的活動分區的卷引導記錄。因此啟動管理器的功能被包括在OSLOADER部分中,直至微軟在2003年引入了自己的啟動管理器。ARC的啟動管理器的保護模式切換和PE檔案辨識執行功能則交給STPBOOT完成。boot.ini中的列表項也被設計為類似於ARC的格式,以便直接傳給OSLOADER.EXE。
在確認系統為冷啟動,即非休眠模式後,NTLDR所做的第一件事為讀取boot.ini。[2]
以下是boot.ini的一個範例:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
C:\grldr="Ubuntu"
C:\="Previous Version of Windows"
NTLDR不支援多語言,如果中日韓版本的Windows NT 5.x NTLDR找不到BOOTFONT.BIN字型檔案,會自動顯示英語代替。Windows Boot Manager支援多語言。
NTLDR的問題常見於用戶不慎將該檔案刪除,這樣會導致Windows NT系列系統無法啟動,開機時將以黑畫面白字顯示錯誤資訊:"NTLDR is missing, Press CTRL+ALT+DEL to restart." 當用戶重新啟動後又將出現上述資訊,這樣就無法進入系統。
解決該問題需要向光驅內放入一張相應的Windows安裝光碟,開機時先將BIOS設置為從光碟啟動,進入系統安裝選單後再選擇進入故障恢復台,按螢幕相關說明進入命令列模式,然後將光碟根目錄下i386資料夾內的「ntldr」檔案和「ntdetect.com」拷貝至系統分區根目錄下,重新啟動後將BIOS設置回覆為硬碟啟動即可[5]。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.