NT-Loader

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
NTLDR
Ntldr.png
Basisdaten
Entwickler Microsoft
Betriebssystem Windows NT
Kategorie Bootmanager
Lizenz proprietär
Deutschsprachig ja

NT-Loader, kurz NTLDR, ist der Bootmanager von Microsoft für alle Windows-NT-Systeme bis einschließlich Windows Server 2003. Seine Konfiguration liest er aus der Textdatei „boot.ini“. Sie ist nötig, da die Windows-Registrierungsdatenbank erst nach dem Start des Betriebssystems zur Verfügung steht. Sie ermöglicht zudem das Editieren auch außerhalb von Windows. NTLDR wurde ab Windows Vista vom Bootmgr abgelöst.

Funktion und Verwendungszweck[Bearbeiten]

Die Konfigurationsdatei liegt neben den Dateien „ntldr“ und „ntdetect.com“ sowie ggf. „ntbootdd.sys“ und „bootsect.dos“ im Stammverzeichnis der aktiven Primärpartition (normalerweise „C:\“) und unterscheidet sich in den möglichen Parametern je nach Windowsversion. Dieser Bootmanager ist notwendig geworden, da Windows NT keinen DOS-Kern mehr besitzt und vor dem Start von Windows eine Möglichkeit geschaffen werden muss, das Startverhalten über Parameter zu beeinflussen. Da die DOS-basierenden und die NT-Windowssysteme funktional höchst unterschiedlich sind, sollte zudem auf diesem Weg die Möglichkeit geschaffen werden, verschiedene Windowsversionen parallel zu betreiben.

Ein früher sehr häufiges Dualbootszenario ist der klassische Parallelbetrieb von Windows 95 oder Windows 98 und Windows NT 4.0. Da dieses Betriebssystem wenig Multimediaunterstützung aufwies und kein Plug and Play unterstützt und deshalb auch USB und FireWire nie implementiert wurden, war es sinnvoll, für die tägliche Arbeit der Stabilität wegen Windows NT zu verwenden, zum Scannen oder für Multimediaanwendungen Windows 95 oder 98 zu starten.

Der NTLDR wird nur auf x86-basierten Computern verwendet. RISC-basierte Computer verfügen über eine Firmware, die ein Bootmenü implementiert und so das Starten mehrerer Betriebssysteme ermöglicht. Die Datei „osloader.exe“, die nur auf RISC-basierten Computern existiert, startet das Betriebssystem direkt mittels Parametern, die ihr von der Firmware übergeben werden.[1]

Aufbau der boot.ini[Bearbeiten]

Die „boot.ini“ ist die Konfigurationsdatei des Bootmanagers „ntldr“. Diese Datei ist nötig, da die Windows-Registrierungsdatenbank erst nach dem Start des Betriebssystems zur Verfügung steht. Die Pfadangaben in der boot.ini entsprechen den Konventionen von RISC-Computern, die im ARC-Standard festgelegt sind.[2]

Beispielkonfiguration[Bearbeiten]

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows NT Workstation, Version 4.0" 
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows NT Workstation, Version 4.0 [VGA-Modus]" /basevideo /sos
C:\="MS-DOS"
C:\bootsect.deb="Ubuntu"
[boot loader]
leitet die Konfigurationsdatei ein
timeout=xx
gibt die Zeit in Sekunden an, welche gewartet wird, bis das voreingestellte Betriebssystem gestartet wird, falls mehrere Einträge vorhanden sind (Standardwert: 30)
default=xx
gibt das Standard-Betriebssystem an, welches gestartet werden soll
[operating systems]
ab hier werden die einzelnen Einträge der Betriebssysteme aufgeführt, es können mehrere der folgenden Einträge aufgeführt werden; bei nur einem Eintrag wird das Bootmenü beim Computerstart nicht angezeigt; ab Windows 2000 wird bei einer Standardinstallation ohne weitere erkannte Betriebssysteme nur noch ein Systemeintrag angelegt.
multi(0)disk(0)rdisk(1)partition(1)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…]
startet eine Windows-Installation über das System-BIOS (INT 13)
scsi(c)disk(d)rdisk(l)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…]
startet eine Windows-Installation über einen expliziten Treiber
signature(c)disk(d)rdisk(l)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…]
startet eine Windows-Installation über einen expliziten Treiber
C:\="MS-DOS"
bietet einen Systemstart unabhängig vom „ntldr“ an (hier: Systemübergabe an die DOS-Startdateien über deren als „bootsect.dos“ neben der „boot.ini“ gespeicherten Bootsektor), was in der Regel nur für DOS, DOS-basierende Windowssysteme und nicht Microsoft-Systeme in Frage kommt
C:\bootsect.deb="Ubuntu"
bietet einen Systemstart unabhängig vom „ntldr“ an (hier: Systemübergabe an die Startdateien eines Linux über deren als „bootsect.deb“ neben der „boot.ini“ gespeicherten Bootsektor)

Erläuterung zum Beispiel: Den Start von Windows NT (Startverzeichnis hinter den Partitionsangaben) übernimmt der Bootloader bis zum Laden der Startdateien und Treiber direkt, für ein DOS oder DOS-basierendes Windows übergibt der Bootloader diese Arbeit an die DOS-Startdateien, auf die der folgende Eintrag verweist. Je Partition lassen sich aber jeweils nur ein DOS- und ein NT-System starten, fremde Betriebssysteme wie Linux oder Netware werden offiziell nicht unterstützt. Ebenso erfordert das Installieren mehrerer NT-Systeme oder mehrerer Windows 3.x/9x-Versionen auf demselben Rechner ein tieferes Fachwissen über das Verhalten und die technischen Anforderungen der verschiedenen Windowsversionen und ist nicht ohne manuelle Eingriffe möglich.

NTLDR startet von Festplatte oder Diskette ohne den Master Boot Record zu ändern, im Gegensatz zu einigen anderen Bootloadern z. B. unter Linux. Anspruchsvollere Konfigurationen lassen sich besser und bequemer (oder überhaupt erst) mit Bootmanagern anderer Hersteller und Partitionierungsprogrammen erledigen. Ein völliger Ersatz für NTLDR sind sie aber nicht, da er zum Laden der Startdateien fest ins NT-System eingebunden ist. Es ist mit den meisten Bootmanagern (z. B. GRUB und LILO für Linux) meist problemlos ein Parallelbetrieb möglich.

Lokalisieren der Bootpartition[Bearbeiten]

Starten über das System-BIOS (INT 13)[Bearbeiten]

multi(0)disk(0)rdisk(d)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…]

d ist logische Nummer der Disk aus BIOS-Sicht. 0 für die erste Platte (0x80), 1 für die zweite Platte (0x81) etc.. Das hat nichts mit Master, Slave oder SCSI-ID zu tun. Bei 3 ist üblicherweise Schluss.

p ist die Nummer der Partition auf der Platte. Die erste primäre Partition ist 1. Danach folgen alle weiteren primären Partitionen gefolgt von den erweiterten. Die Erweiterungspartitionen selbst (Typ 0x05 und 0x0F) zählen nicht mit.

Windows-Verzeichnis ist das %SystemRoot% der betreffenden Installation ohne Laufwerksbuchstabe.

Optionen siehe unten.

Starten über einen expliziten Treiber[Bearbeiten]

scsi(c)disk(d)rdisk(l)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…]

Für diese Variante muss sich die Datei „ntbootdd.sys“ im Hauptverzeichnis der Startpartition befinden - also da, wo auch die „boot.ini“ ist. Diese Datei muss eine (umbenannte) Kopie des zum Ansprechen der gewünschten Festplatte erforderlichen Treibers aus %SystemRoot%\System32\Drivers\ sein. Bei IDE-Platten ist das üblicherweise „atapi.sys“, es sei denn, der verwendete Controller bedarf eines herstellerspezifischen Treibers (bei SCSI immer).

c
ist die Nummer des zu verwendenden Controllers, beginnend mit 0. Also z. B. 0 für den ersten IDE-Kanal. Es zählen dabei nur die Controller, die von dem jeweiligen Treiber unterstützt werden.
d
ist die ID der Festplatte. Bei IDE: 0 = Master, 1 = Slave, bei SCSI: SCSI-ID.
l
ist die LUN (Logical Unit Number) - normalerweise 0
p
und alles weitere ist identisch mit der multi()-Syntax oben.

Die wichtigsten Optionen[Bearbeiten]

/FastDetect
schaltet die Hardwareerkennung von NTDETECT.COM aus, welche noch in Windows NT 4.0 gebraucht wurde.
/NoGUIBoot
startet Windows ohne grafische Ausgabe. Während des Bootvorgangs werden keine Meldungen angezeigt.
/BootLogo
in Verbindung mit /NoGUIBoot kann man den Bootscreen ohne spezielle Tools ändern; dieser muss dazu in folgender Form im Windows-Verzeichnis vorhanden sein: BOOT.BMP; 640x480 Pixel; 16 Farben.
/SOS
zeigt alle Treiber während des Ladevorgangs an; danach erscheint ein Startbildschirm analog zu Windows NT; Das bedeutet nicht, dass diese Treiber auch unbedingt von Windows gestartet werden. Dies kann zur Fehleranalyse nützlich sein.

Siehe auch[Bearbeiten]

Einzelnachweise und Quellen[Bearbeiten]

  1. Windows NT Resource Kit - Chapter 19 - What Happens When You Start Your Computer. Abgerufen am 8. Juni 2012.
  2. Microsoft Knowledge Base - BOOT.INI and ARC Path Naming Conventions and Usage. Abgerufen am 4. März 2013.

Weblinks[Bearbeiten]