Linux-Kernel: Unterschied zwischen den Versionen
Michi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Michi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
Der <b>Linux-Kernel</b> besteht grundsätzlich aus zwei Teilen: | Der <b>Linux-Kernel</b> wird seit 1991 von Linux Torvalds entwickelt und unter der freien [[GNU General Public License]] veröffentlicht. Die inzwischen von Torvalds herausgegebene Fassung enthält allerdings proprietäre BLOBs und ist daher nicht mehr frei; Richard Stallman bezweifelt sogar, dass sie legal kopiert werden darf, da diese BLOBs im Widerspruch zur GPL stehen und die Rechte aus der GPL daher erlöschen. Die Free Software Foundation rät deshalb dazu, nur BLOB-freie Versionen von des Linux-Kernels einzusetzen, bei der diese Bestandteile entfernt wurden. Der Linux-Kernel findet in einer Vielzahl von [[Linux-Distributionen]] seine Anwendung. | ||
Ursprünglich bezeichnete der Begriff [[Linux]] lediglich den von Linus Torvalds veröffentlichten Kernel, mittlerweile sind damit umgangssprachlich oft sowohl der Linux-Kernel, Linux-Distributionen wie auch Linux-Kernel-basierte Systeme gemeint. Im Mikiwiki wird der Begriff "[[Linux]]" aus Unterscheidungsgründen im letzteren Sinne verwendet. | |||
== Konzept == | |||
Der Linux-Kernel besteht grundsätzlich aus zwei Teilen: | |||
* der [[Kernel]] selbst (eine etwa 1 MB grosse Datei). | * der [[Kernel]] selbst (eine etwa 1 MB grosse Datei). | ||
* die [[Kernelmodule]], welche die Funktionalität des Kernels bei Bedarf erweitern. | * die [[Kernelmodule]], welche die Funktionalität des Kernels bei Bedarf erweitern. | ||
== | Kernel und Kernelmodule müssen zusammenpassen, deshalb werden sie mit einer Versionsnummer gekennzeichnet, die aus vier durch Punkte getrennten Elementen besteht: Version, Patchlevel, Sublevel und Extraversion. Die Bezeichnung "2.6.24-24" besagt also Linux-Kernel-Version 2, Patchlevel 6, Sublevel 24 und Extraversion 24. Beim Patchlevel werden stabile Versionen (engl. stable) durch gerade, Entwickler-Kernel durch ungerade Zahlen bezeichnet. Die Extraversion kennzeichnet Änderungen zum offiziellen Linux-Kernel, beispielsweise hängen an den Linux-Kernel-Varianten des Programmierers Alan Cox seine Initialen "ac". | ||
Die Quelldateien des Linux-Kernels befinden sich nach dem Entpacken im Verzeichnis "/usr/src". Ausgehend von diesem Verzeichnis gibt es mehrere Möglichkeiten: | |||
* "linux" | |||
* "linux-2.6" (alternativ "linux-2.4") | |||
* "linux-2.x.x" (mit symbolischem Link "linux" auf dieses Verzeichnis) | |||
* "linux-headers-2.6.x-x" (bei Ubuntu) | |||
Der fertige Linux-Kernel liegt als Datei im Verzeichnis "/boot" oder direkt unter "/". Typische Dateinamen sind "vmlinux", "vmlinuz", "vmlinuz-x.x.x-x" oder "bzImage-x.x.x". Das "z" im Namen steht dafür, dass die Datei komprimiert ist. Ohne eine solche Datenkompression liessen sich grosse Linux-Kernel auf älteren Rechnern gar nicht booten, da es dort häufig Grössenbeschränkungen gibt. | |||
Die zum jeweiligen Linux-Kernel gehörenden Kernelmodule finden sich im Verzeichnis "/lib/modules", wo jede Linux-Kernel-Version ein eigenes Unterverzeichnis besitzt. Auf diese Weise können mehrere Versionen des Linux-Kernels gleichzeitig vorhanden sein. | |||
== Kernelmodule == | |||
Module erweitern die Funktionalität des Linux-Kernels (z. B. Hardware-Unterstützung) und können bei Bedarf auch im Betrieb nachgeladen werden. Alle gängigen Linux-Distributionen starten Module automatisch (z. B. isofs-Modul beim Mounten einer CD-ROM, um das [[ISO 9660]]-Dateisystem zu lesen). | Module erweitern die Funktionalität des Linux-Kernels (z. B. Hardware-Unterstützung) und können bei Bedarf auch im Betrieb nachgeladen werden. Alle gängigen Linux-Distributionen starten Module automatisch (z. B. isofs-Modul beim Mounten einer CD-ROM, um das [[ISO 9660]]-Dateisystem zu lesen). |
Version vom 30. Juli 2009, 21:56 Uhr
Der Linux-Kernel wird seit 1991 von Linux Torvalds entwickelt und unter der freien GNU General Public License veröffentlicht. Die inzwischen von Torvalds herausgegebene Fassung enthält allerdings proprietäre BLOBs und ist daher nicht mehr frei; Richard Stallman bezweifelt sogar, dass sie legal kopiert werden darf, da diese BLOBs im Widerspruch zur GPL stehen und die Rechte aus der GPL daher erlöschen. Die Free Software Foundation rät deshalb dazu, nur BLOB-freie Versionen von des Linux-Kernels einzusetzen, bei der diese Bestandteile entfernt wurden. Der Linux-Kernel findet in einer Vielzahl von Linux-Distributionen seine Anwendung.
Ursprünglich bezeichnete der Begriff Linux lediglich den von Linus Torvalds veröffentlichten Kernel, mittlerweile sind damit umgangssprachlich oft sowohl der Linux-Kernel, Linux-Distributionen wie auch Linux-Kernel-basierte Systeme gemeint. Im Mikiwiki wird der Begriff "Linux" aus Unterscheidungsgründen im letzteren Sinne verwendet.
Konzept
Der Linux-Kernel besteht grundsätzlich aus zwei Teilen:
- der Kernel selbst (eine etwa 1 MB grosse Datei).
- die Kernelmodule, welche die Funktionalität des Kernels bei Bedarf erweitern.
Kernel und Kernelmodule müssen zusammenpassen, deshalb werden sie mit einer Versionsnummer gekennzeichnet, die aus vier durch Punkte getrennten Elementen besteht: Version, Patchlevel, Sublevel und Extraversion. Die Bezeichnung "2.6.24-24" besagt also Linux-Kernel-Version 2, Patchlevel 6, Sublevel 24 und Extraversion 24. Beim Patchlevel werden stabile Versionen (engl. stable) durch gerade, Entwickler-Kernel durch ungerade Zahlen bezeichnet. Die Extraversion kennzeichnet Änderungen zum offiziellen Linux-Kernel, beispielsweise hängen an den Linux-Kernel-Varianten des Programmierers Alan Cox seine Initialen "ac".
Die Quelldateien des Linux-Kernels befinden sich nach dem Entpacken im Verzeichnis "/usr/src". Ausgehend von diesem Verzeichnis gibt es mehrere Möglichkeiten:
- "linux"
- "linux-2.6" (alternativ "linux-2.4")
- "linux-2.x.x" (mit symbolischem Link "linux" auf dieses Verzeichnis)
- "linux-headers-2.6.x-x" (bei Ubuntu)
Der fertige Linux-Kernel liegt als Datei im Verzeichnis "/boot" oder direkt unter "/". Typische Dateinamen sind "vmlinux", "vmlinuz", "vmlinuz-x.x.x-x" oder "bzImage-x.x.x". Das "z" im Namen steht dafür, dass die Datei komprimiert ist. Ohne eine solche Datenkompression liessen sich grosse Linux-Kernel auf älteren Rechnern gar nicht booten, da es dort häufig Grössenbeschränkungen gibt.
Die zum jeweiligen Linux-Kernel gehörenden Kernelmodule finden sich im Verzeichnis "/lib/modules", wo jede Linux-Kernel-Version ein eigenes Unterverzeichnis besitzt. Auf diese Weise können mehrere Versionen des Linux-Kernels gleichzeitig vorhanden sein.
Kernelmodule
Module erweitern die Funktionalität des Linux-Kernels (z. B. Hardware-Unterstützung) und können bei Bedarf auch im Betrieb nachgeladen werden. Alle gängigen Linux-Distributionen starten Module automatisch (z. B. isofs-Modul beim Mounten einer CD-ROM, um das ISO 9660-Dateisystem zu lesen).
Alle Module stehen unter "/lib/modules/<Kernelversionsnummer>".
Anzeige aller aktuell im Linux-Kernel integrierten Module.
$ lsmod
Weblinks
Herausgeber | Sprache | Webseitentitel | Anmerkungen |
---|---|---|---|