ubuntuusers.de » Wiki » Kernel

Kernel

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Ein Betriebssystemkern oder Systemkern (engl. "kernel") ist der zentrale Bestandteil eines Betriebssystems. In ihm ist die Prozess- und Datenorganisation festgelegt, auf der alle weiteren Softwarebestandteile des Betriebssystems aufbauen. Gängige Anforderungen an einen Systemkern sind Parallelverarbeitung verschiedener Aufgaben (Multitasking), Einhaltung zeitkritischer Grenzen, Offenheit für unterschiedlichste Anwendungen und Erweiterungen. (aus der Wikipedia)

Den Linux-Kernel gibt es in verschiedenen Varianten. Hauptsächlich sind dies:

Kernel installieren

Bei der Installation von Ubuntu wird selbstverständlich automatisch ein Kernel installiert, ohne diesen wäre das ganze System nicht lauffähig. Unter Ubuntu werden Kernel wie normale Software auch über die Paketverwaltung installiert [1]. Die entsprechenden Paketnamen heißen immer

  • linux-image-VERSION-ABINUMMER-VARIANTE

bzw. als konkretes Beispiel

  • linux-image-2.6.15-25-generic

Aber Achtung. Einen Kernel sollte man immer über die Metapakete wie

  • linux-generic

installieren, so wird gewährleistet, dass bei einem Update immer die passenden Module und Kernel Header Dateien installiert werden. Bei der Installation eines Kernels wird dieser auch automatisch in den Bootmanager GRUB bzw. GRUB 2 eingetragen, so dass beim nächsten Start automatisch die neuste Kernel-Version gebootet wird. Weitere Informationen zu den Metapaketen und Infos zu den unterschiedlichen Architekturen findet man im Artikel Metapakete.

Mainline-Kernel

Seit März 2009 gibt es weiterhin die Möglichkeit, sogenannte "Mainline-Kernel" zu installieren. Mehr Informationen findet man in Artikel Mainline-Kernel.

Kernel deinstallieren

Durch automatische Updates werden neue Versionen des Kernels auf dem System installiert. Dies erkennt man, wenn man beim Booten des System in GRUB / GRUB 2 mehrere Einträge zum Booten des Systems sieht, also z.B.

kernelauswahl_beim_booten.png

Hier erkennt man, dass zwei Kernel im System vorhanden sind. Einmal ein Kernel 2.6.27-9-generic und einmal ein Kernel mit der Versionsnummer 2.6.27-7-generic. Nach einem Update des Kernels über die automatischen Updates wird der alte Kernel nie gelöscht. Falls es zu Problemen mit dem neuen Kernel kommen sollte, ist es dadurch möglich noch den alten Kernel zu booten.

Betreibt man ein Ubuntu-System über einen längeren Zeitraum, so häufen sich die verschiedenen Kernel-Versionen an. Da ein Kernel zusammen mit Header-Dateien und Modulen einiges an Platz auf der Festplatte belegen kann, sollte man bei Gelegenheit ältere Kernelversionen, die man nicht mehr nutzt, von Hand deinstallieren. Ganz besonders gilt dies, wenn man für /boot eine eigene Partition erstellt hat.

Will man also im obigen Beispiel den älteren Kernel 2.6.27-7-generic deinstallieren, so sucht man in der Paketverwaltung nach dem Paket

  • linux-image-2.6.27-7-generic

und deinstalliert [1] es. Dabei werden auch automatisch alle dazugehörigen Kernelmodule und Header entfernt. Ebenso der Eintrag in Grub, um diesen Kernel zu booten.

Echtzeitkernel

Für manche Spezialanwendungen wird eine zuverlässig niedrige Reaktionszeit des Systems benötigt. Unter Umständen kann der normale Kernel eines Ubuntu-Systems diese Anforderung nicht hinreichend erfüllen. Für solche Fälle gibt es von die von Ubuntu Studio bereitgestellten, auf Echtzeitverhalten optimierten Kernel, die das komplette "Realtime-Patchset" {en} von Ingo Molnár enthalten. Eine mögliche Anwendung sind Audioworkstations mit extrem niedrigen Latenzen.

Für reine Desktopsysteme bringt ein Echtzeitkernel keinen Vorteil. Unter Umständen kann der Durchsatz sinken und der Stromverbrauch steigen. Weitere Informationen zur Konfiguration eines Tonstudio-PCs findet man unter Tonstudio/Konfiguration.

Die benötigten Pakete sind über die Ubuntu-Paketquellen verfügbar. Zu installieren [1] sind folgende Pakete.

  • linux-rt (multiverse)

  • linux-restricted-modules-rt (multiverse, optional, bis Ubuntu 9.04 Jaunty Jackalope)

Wiki/Vorlagen/Installbutton/button.png

Experten-Info:

Der Hauptunterschied zum Lowlatency-Kernel, der mit bereits in Vanilla integrierten Teilen des Molnár-Patchsets auskommt, besteht in der Möglichkeit, Interrupts unterbrechbar(!) zu machen: sie werden von eigenen, mittels chrt priorisierbaren Threads behandelt.

Hyper-Threading aktivieren

Hyper-Threading (HT) wird bei der Installation von Ubuntu Linux nicht immer aktiviert. Dies kann man jedoch mit ein paar Handgriffen schnell ändern. Zuerst muss sichergestellt sein, dass ein passender Kernel mit SMP-Unterstützung installiert ist. Ab Ubuntu Edgy Eft 6.10 ist das der generic-Kernel, unter Dapper Drake 6.06 die 686-, k7- oder amd64-k8-Kernel.

Um zu prüfen, ob die Installation den Prozessor doch erkannt hat, gibt man im Terminal [3] folgenden Befehl ein:

cat /proc/cpuinfo 

Werden hier zwei Prozessoren angezeigt, ist der nächste Schritt nicht nötig.

Um die Funktion manuell zu aktivieren, muss man ht=on oder acpi=ht als Boot-Parameter für den Kernel hinzufügen. Wie das geht, ist im Artikel Booten beschrieben. Nachdem man die Änderungen gespeichert hat, ist Hyper-Threading nach einem Neustart des Rechners aktiv.

Hinweis:

Nicht jeder Prozessor, bei dem mittels cat /proc/cpuinfo das Flag ht angezeigt wird, ist auch tatsächlich HT-fähig.

Diese Revision wurde am 29. April 2010 um 04:35 Uhr von barcc erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet: System, Tonstudio

Passwort vergessen?