@kamehl<<der Kernel ist eine spezielle Anwendung eines matehmatischenKerns für das
mathemathische Lernen oder auch eine andere Bezeichnung für den Kerneine
Gruppenhomomorphismus oder wie Koller es nennen würde, wenn man einen Kuchenaufteilt und<<<
Hää, jetzt ist bei mir Bah nhof angesagt. Ichmeinte eigentlich folgendes:
Aufgaben des Kernels [Bearbeiten]
DerKernel eines Betriebssystems bildet die hardwareabstrahierende Schicht (HardwareAbstraction Layer), d. h. er stellt der auf dieser Basis aufsetzenden Software eineeinheitliche Schnittstelle (API) zur Verfügung, die unabhängig von der Rechnerarchitekturist. Die Software kann so immer auf die Schnittstelle zugreifen, und braucht die Hardwareselbst, die sie nutzt, nicht genauer zu kennen. Linux ist dabei ein modularermonolithischer Betriebssystemkern und zuständig für Speicherverwaltung,Prozessverwaltung, Multitasking, Lastverteilung, Sicherheitserzwingung undEingabe/Ausgabe-Operationen auf verschiedenen Geräten.
Siehe auch:Betriebssystemkern
Funktionsweise [Bearbeiten]
Bei einem striktmonolithischen Kernel wird der gesamte Quellcode inklusive aller Treiber in dasKernel-Image (den ausführbaren Kernel) kompiliert. Linux kann Module benutzen, diewährend des Betriebs geladen und wieder entfernt werden können. Damit wird dieFlexibilität erreicht, um unterschiedlichste Hardware ansprechen zu können, ohnesämtliche (auch nicht benötigte) Treiber und andere Systemteile im Speicher halten zumüssen.
Sind Teile der Hardwarespezifikationen nicht genügend offengelegt, sostützt sich Linux notfalls über spezielle VM86-Modi auch auf das BIOS des Systems, u. a.auf die Erweiterungen gemäß den Standards APM, ACPI und VESA. Um unter diesenVoraussetzungen x86-kompatible Hardware z. B. auf der DEC-Alpha-Plattform zu betreiben,werden teilweise sogar Emulatoren zur Ausführung entsprechenden ROM-Codes verwendet.Linux selbst übernimmt das System beim Bootprozess typischerweise in dem Moment, wo derBIOS-Bootloader erfolgreich war und alle Systeminitialisierungen des BIOS abgeschlossensind.
Linux ist fast komplett in der Programmiersprache C geschrieben, wobeieinige GNU-C-Erweiterungen benutzt werden. Eine Ausnahme bilden die architekturabhängigenTeile des Codes (im Verzeichnis arch innerhalb der Linux-Sourcen), wie z. B. der Beginndes Bootvorganges, die in Assemblersprache geschrieben sind.
Der Kernel ist einBetriebssystemkern und darf nicht als das eigentliche Betriebssystem verstanden werden.Dieses setzt sich aus dem Kern und weiteren grundlegenden Programmen (die den Computererst bedienbar machen) zusammen.<<