Init startet den gesamten erforderlichen Benutzerprozess, um das System in den gewünschten Zustand zu versetzen. Diese Routine hängt stark von der Verteilung und dem aufgerufenen Runlevel ab.
Geben Sie runlevelin die Konsole ein, um den aktuellen Runlevel Ihres Systems anzuzeigen.
Schauen Sie sich /etc/rcX.d/(oder /etc/rc.d/rcX.d/) an und ersetzen Sie das X durch Ihr Runlevel.
Dies sind Symlinks, die nach Ausführungspriorität geordnet sind. S01....Dies bedeutet, dass dieses Skript sehr früh gestartet wird und S99....am Ende des Startvorgangs ausgeführt wird. Die KXX....Symlinks machen dasselbe, nur für die Shutdown-Sequenz.
Im Allgemeinen verarbeiten diese Skripte Festplatten, Netzwerke, Protokollierung, Gerätesteuerung, spezielle Treiber, Umgebung und viele andere erforderliche Sequenzen.
LXR ist eine schöne Schnittstelle zum Lesen der Linux- Kernelquelle . Schöne Liste, aber Vorsicht, viele davon sind sehr architekturabhängig (dies ist die PC-Version).
Gilles 'SO - hör auf böse zu sein'
1
Der Kernel übernimmt die Steuerung des System-H / W, sobald Sie "Linux dekomprimieren .." sehen.
Der Kernel überprüft und legt die BIOS-Register der Grafikkarten und das Bildschirmausgabeformat fest.
Der Kernel liest dann die BIOS-Einstellungen und initialisiert grundlegende Hardwareschnittstellen.
Als nächstes initialisieren die Treiber im Kernel die Hardware.
Dann prüft der Kernel die Partitonen
Anschließend wird das Root-Dateisystem bereitgestellt
Dann startet der Kernel init, das das Hauptsystem mit all seinen Programmen und Konfigurationen startet.
Antworten:
Ab Linux 2.6:
Kernel
Nach dem Laden in den RAM führt der Kernel die folgenden Funktionen aus.
setup()
::startup_32()
::eflags
Register.decompress_kernel()
auf, um das Kernel-Image zu dekomprimieren.startup_32()
(gleicher Name, andere Funktion):bss
Segment mit Nullen.eflags
Register.start_kernel()
: Nahezu jede Kernelkomponente wird von dieser Funktion initialisiert, dies sind nur einige wenige./sbin/init
)Die vollständige "Liste" finden Sie in den Quellen unter linux / init / main.c.
Drin
Init startet den gesamten erforderlichen Benutzerprozess, um das System in den gewünschten Zustand zu versetzen. Diese Routine hängt stark von der Verteilung und dem aufgerufenen Runlevel ab.
Geben Sie
runlevel
in die Konsole ein, um den aktuellen Runlevel Ihres Systems anzuzeigen.Schauen Sie sich
/etc/rcX.d/
(oder/etc/rc.d/rcX.d/
) an und ersetzen Sie das X durch Ihr Runlevel.Dies sind Symlinks, die nach Ausführungspriorität geordnet sind.
S01....
Dies bedeutet, dass dieses Skript sehr früh gestartet wird undS99....
am Ende des Startvorgangs ausgeführt wird. DieKXX....
Symlinks machen dasselbe, nur für die Shutdown-Sequenz.Im Allgemeinen verarbeiten diese Skripte Festplatten, Netzwerke, Protokollierung, Gerätesteuerung, spezielle Treiber, Umgebung und viele andere erforderliche Sequenzen.
quelle
quelle
Der Bootloader springt über die Kernel-Befehlszeile (falls vorhanden) zum Image-Einstiegspunkt, und der Kernel erledigt den Rest.
quelle