|
|
| Zeile 1: |
Zeile 1: |
| =Kerneldatei in den Speicher laden=
| |
| *Nachdem der zu ladende Kernel ausgewählt und evtl. weitere Bootparameter eingegeben wurden
| |
| *Lädtdas Ladeprogramm den Kernel in den Hauptspeicher.
| |
| *Hier sind bei Linux grundsätzlich zwei Varianten zu unterscheiden.
| |
| *Zum einen kann der Kernel unkomprimiert vorliegen.
| |
| *Der Einstiegspunkt für die Ausführung ist dann mit dem Beginn des Kernelcodes identisch.
| |
| *Zum anderen kann der Kernel komprimiert sein.
| |
| *In diesem Fall wurde dem Kernel beim Übersetzen ein kleines Programmstück vorangestellt
| |
| *Dies ist für das Entpacken des Kernels und das Finden des richtigen Einstiegspunktes zuständig.
| |
| *Eine unkomprimierte Kerneldatei erkennt man nach dem Übersetzen an ihrem Namen vmlinux.
| |
| *Eine komprimierte Kerneldatei heißt vmlinuz, zImage oder bzImage.
| |
| *Diese Dateien können später freilich umbenannt werden.
| |
| *Gehen wir also nun davon aus, dass der Kernel geladen und der korrekte Einstiegspunkt gefunden wurde.
| |
|
| |
|
| =Übergang vom Kernelspace zum Userspace=
| | *[[Kernel Initialisierung]] |
| *Als vorletzte Aktion mountet der Kernel das Dateisystem welches in der Kernelvariable ''root'' übergeben wurde, readonly. | |
| *Als letztes wird das Programm das in der Kernelvariable ''init'' steht ausgeführt.
| |
| *Dies ist der Prozess mit der Nummer EINS und dieser startet nun alle Userspace Programme.
| |
| | |
| =Bootparameter übergeben=
| |
| *Der Linux-Kernel kann mit einer Vielzahl unterschiedlicher Parameter geladen werden
| |
| *Dies beieinflusst zumeist das Vorhandensein oder Nichtvorhandensein bestimmter Leistungseigenschaften
| |
| *Dies ist insbesondere im Fehlerfall von Interesse:
| |
| *Kommt es etwa zu Problemen beim Betrieb einer Festplatte im DMA-Modus
| |
| *So kann dem Kernel ein Parameter übergeben werden, der verhindert, dass die Festplatte im DMA-Modus angesteuert wird.
| |
| *Bestünde diese Möglichkeit nicht, so wäre es u.U. garnicht mehr möglich, das betreffende System hochzufahren.
| |
| *Die Übergabe solcher Parameter wird von den meisten Ladeprogrammen auf zweierlei Weise ermöglicht.
| |
| *Zum einen können Standardparameter, die man bei jedem Systemstart übergeben möchte, in einer Konfigurationsdatei festgehalten werden.
| |
| *Zum Anderen kann man beim Systemstart die Parameter über eine Eingabezeile variieren.
| |
| | |
| =Links=
| |
| *[https://help.ubuntu.com/community/BootOptions#Common%20Boot%20Options Liste wichtiger Bootoptionen (EN)]
| |