Rechnerstart am Beispiel von MS-DOS

  • Das Starten des Computers hat zwei Gründe: Zum einen müssen die Baugruppen mit Strom versorgt und in einen definierten Nullzustand gebracht werden, zum anderen muss das Betriebssystem des PCs (z. B. MS-DOS) in den Hauptspeicher geladen werden. Es wird benötigt, um Applikationen zu betreiben, zu steuern und gegebenenfalls deren Befehle entgegenzunehmen und auszuführen. Das Starten des PCs bedeutet also den Hardwarestart und das Laden des Betriebssystems (Software). Im Moment des Einschaltens, beginnt im Rechner ein sich immer wiederholender Vorgang, das Booten. Man spricht hier auch von dem so genannten Boot Strap, jenen Files, die beim Startvorgang geladen werden. IO.SYS / MSDOS.SYS / CONFIG.SYS / COMMAND.COM / AUTOEXEC.BAT . Nachdem das Netzteil alle Baugruppen mit Strom versorgt hat, führt der Rechner einen Selbsttest durch, den so genannten Power On Self Test (POST). Dies ist daran zu erkennen, dass an den Disketten-Laufwerken die Betriebsanzeige-LED kurz aufleuchten und auf dem Bildschirm die Größe des Hauptspeichers angezeigt und hochgezählt wird. Während des Selbsttests werden die Rechner-Baugruppen, wie CPU, Grafikkarte, Speicher, Laufwerke, Tastatur usw. überprüft und Fehler mit Bildschirmmeldungen und/oder Piepstönen angezeigt oder ausgegeben. POST - Power On Self Test / Das ROM-Bios des Computers führt einen Selbsttest beginnend mit dem POST aus. Dieser Test überprüft, ob das Minimum der erforderlichen Hardware zum Systemstart vorhanden ist und funktioniert. Danach wird überprüft, ob die Setup-Informationen im CMOS in Ordnung sind. Der Systemspeicher wird getestet und sichergestellt, dass die im Setup angegebene Hardware vorhanden ist. Das ROM-BIOS sucht nun nach einem Bootsektor auf einem Laufwerk. Es schaut zuerst auf Laufwerk A: (je nach Einstellung im Setup), danach auf Laufwerk C: (HDD). Wird ein Bootsektor gefunden, so wird dieser in den Arbeitsspeicher (RAM) geladen und gestartet. Dieser Programm-Code startet die Datei IO.SYS - IO.SYS initialisiert die Device-Treiber, die nötig sind, um mit der Systemhardware zu kommunizieren. Danach wird von IO.SYS die interne SYSINIT-Routine aufgerufen. SYSINIT steuert den Rest des Boot-Prozesses und bringt MSDOS.SYS in den Speicher, um den Programmcode auf die volle MSDOS Spezifikation zu erweitern. SYSINIT arbeitet die Datei. CONFIG.SYS ab, wobei weitere Device-Treiber, die nicht in IO.SYS enthalten sind, dazu geladen werden. Diese sind für optionale Devices, welche nicht benötigt werden um MSDOS zu starten, aber dem Betriebssystem den Support für andere Devices erlauben. Nachdem SYSINIT die Datei CONFIG.SYS abgearbeitet hat, lädt es die Datei COMMAND.COM, den so genannten Command-Interpreter, in den Arbeitsspeicher. Ist das SHELL= - Statement in der Datei CONFIG.SYS vorhanden, wird stattdessen der angegebene Kommandointerpreter geladen und ausgeführt. Default- Kommandointerpreter ist COMMAND.COM, welcher bei der aktuellen MSDOS-Version mitgeliefert wird. COMMAND.COM startet die Datei AUTOEXEC.BAT und arbeitet die in ihr enthaltenen Kommandos ab. Ist die Datei abgearbeitet, erscheint das so genannte Kommandozeilen-Prompt des Bootlaufwerkes. In der Regel Laufwerk c:>. Alles alt? Nein, bestimmt nicht. Windows 98 und sogar Windows ME haben noch einen DOS-Unterbau. Man nehme nur die Startdiskette eines dieser Betriebssysteme und achte auf die Prozeduren, die abgearbeitet werden. Dies lässt sich sehr gut beobachten, da das Diskettenlaufwerk um einiges langsamer ist als eine Festplatte. Windows ME z. B. sucht nach allen möglichen Treibern für CD-ROM Laufwerke. Nach jedem nicht gefundenen wird eine Fehlermeldung ausgegeben.

    Hier einige Infos:

    http://help.fdos.org/de/hhstndrd/batch/autoexec.htm

    https://de.wikipedia.org/wiki/AUTOEXEC.BAT