NTLDR
NTLDR(NT Loader)は過去のWindows NT系における標準のブートローダである。
概要
編集NTLDRはWindows NT系のブートローダであり、Windows NT/2000/XP/Server 2003に付属した。
それより新しいWindows Vistaおよびそれ以降はNTLDRの代わりにWindows Boot Managerが用いられている。
NTLDRはプライマリハードディスクドライブかブート可能[1]なリムーバブルメディア(CD-ROM/USBメモリ/FDDなど)から起動することができる。もちろん、NTLDRはWindows NT系のOSばかりではなく、Windows 9x系やPC-UNIX(Linux/FreeBSDなど)などのWindows NT以外のOSもパーティションなどを設定することにより起動することができる。NTLDRを使用するためには起動ドライブのルートディレクトリに最低でも、NTLDRとBoot.iniを必要とする。また、NT系OSはそれに加えて、ntdetect.comも必要である。さらに、日本語版を含む東アジア言語バージョンの Windows では Bootfont.bin が必要である[2]。
起動の順序
編集NTLDRは以下のようにOSを呼び出す。
- マイクロプロセッサを32Bitモードに切り替える
- ファイルシステムにアクセスする
- Boot.iniを読み込み、もし2種類以上OSが記述されていればブートメニューを出す。
- ブートメニューで選択されたOSがNT系以外のOSならば、NTLDRは記述されたファイルに起動を任せ、役割を終える。
- ファイル名が指定されていない場合、BOOTSECT.DOSという名前のファイルが使用される。
- /win95または/win95dosオプションが指定されている場合、Windows 9x系とDOS(MS-DOSまたはPC DOS)とのマルチブートのための処理が実行される[3]。
- ブートメニューで選択されたOSがNT系のOSならば、NTLDRはntdetect.comを実行し、ハードウェアの情報収集をする。
- Windows NT系のカーネルであるntoskrnl.exeを実行し、ntdetect.comで集めた情報を渡す。
Boot.ini
編集NTLDRは[operating systems]の項目に2つ以上記述されていた場合、OSの選択画面を提示する。それを記述するファイルがBoot.iniである。
Boot.iniの例
編集[boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional" /fastdetect C:\bootsect.dos="Microsoft Windows 98"
timeoutの値の単位は秒で、NTLDRのメニュー表示時間を設定できる。
NT系OSの制御機能
編集NTLDRはNT系のOSのセーフモード起動なども制御している。使用されるオプションは以下のとおりである。
- /3gb
- /basevideo
- /baudrate=nnn
- /bootlog
- /burnmemory
- /crashdebug
- /debug
- /debugport=comx
- /fastdetect
- /maxmem=nn
- /nodebug
- /noexecute=optin (DEP)
- /noguiboot
- /nopae
- /noserialmice:comx
- /numproc
- /onecpu
- /pae
- /pcilock
- /safeboot
- /safeboot:dsrepair
- /safeboot:minimal
- /safeboot:minimal(alternateshell)
- /safeboot:network
- /usepmtimer
- /sos
- /win95
- /win95dos
- /year
脚注
編集- ^ Basic Input/Output Systemの対応が必要
- ^ マイクロソフト サポート オンライン 2011年1月29日閲覧
- ^ Boswell, William (2003-04-14) (英語). Inside Windows Server 2003. Addison-Wesley Professional. p. 63. ISBN 978-0735711587 . "/win95dos and /win95. These switches emulate the dual-boot features in Windows 9x. They are used in conjunction with Bootsect.dos files that contain Windows 95 bootstrap."