www.wikidata.de-de.nina.az
Linux deutsch ˈliːnʊks ist ein Betriebssystem Kernel der im Jahr 1991 von Linus Torvalds ursprunglich fur die 32 Bit x86 Architektur IA 32 entwickelt und ab Version 0 12 unter der freien GNU General Public License GPL veroffentlicht wird 5 Er ist heute Teil einer Vielzahl von Betriebssystemen LinuxStartender Systemkern Version 3 0 0 in DebianEntwickler Linus Torvalds u v m Lizenz en GPLv2 only 1 2 enthalt verschiedene Closed Source Binarblobs 3 Erstveroff 17 September 1991Akt Version 6 6 2 4 vom 20 November 2023Architektur en IA 32 inkl x64 Alpha AXP SPARC Motorola 68k PowerPC POWER Arm Hitachi SuperH z Systems MIPS PA RISC IA 64 AVR32 Renesas H8 300 und weitereSprache n Englischwww kernel orgDer Name Linux setzt sich zusammen aus dem Namen Linus und einem X fur das als Vorbild dienende Unix Er bezeichnet im weiteren Sinne mittlerweile nicht mehr nur den Kernel selbst sondern ubertragen davon ganze Linux basierte Systeme und Distributionen Dies fuhrte zum GNU Linux Namensstreit Inhaltsverzeichnis 1 Grundlegende Technologie 1 1 Aufgaben des Kernels 1 2 Programmiersprache 1 3 Funktionsweise 1 4 Schnittstellen 1 5 Architektur 1 6 Portierbarkeit 1 6 1 Binarschnittstellen der Arm Architektur 1 6 2 User Mode Linux 1 6 3 µClinux 2 Entwicklungsprozess 2 1 Anderungen der Herkunftskontrolle 2 2 Das Versionskontrollsystem Git 2 3 Kernel Versionen 2 4 Versionsnummern Schema 2 5 Entwicklerversion 2 6 Pflege der Kernel Versionen 2 7 Versionen mit Langzeitunterstutzung 3 Versionsgeschichte 3 1 Zeittafeln 3 2 Versionsgeschichte bis Version 2 6 3 3 Versionsgeschichte ab Version 2 6 3 4 Neuerungen im Kernel 2 6 3 4 1 Neue Prozess Scheduler 3 4 2 Praemptiver Kernel 3 4 3 Zugriffskontrolllisten 3 4 4 Inotify 3 4 5 Weitere wichtige Anderungen 4 Lizenzbesonderheiten 4 1 Proprietarer Code und Freiheitsbegriff 4 2 Der Kernel unter der GPL 2 5 Literatur 6 Weblinks 7 EinzelnachweiseGrundlegende Technologie Bearbeiten nbsp Grob Struktur des Linux KernelsAufgaben des Kernels Bearbeiten Hauptartikel Kernel Betriebssystem Der Kernel eines Betriebssystems bildet die hardwareabstrahierende Schicht das heisst er stellt der auf dieser Basis aufsetzenden Software eine einheitliche Schnittstelle API zur Verfugung die unabhangig von der Rechnerarchitektur ist Die Software kann so immer auf die Schnittstelle zugreifen und braucht die Hardware selbst die sie nutzt nicht genauer zu kennen Linux ist dabei ein modularer monolithischer Kernel und zustandig fur Speicherverwaltung Prozessverwaltung Multitasking Lastverteilung Sicherheitserzwingung und Eingabe Ausgabe Operationen auf verschiedenen Geraten Programmiersprache Bearbeiten Linux ist fast ausschliesslich in der Programmiersprache C geschrieben wobei einige GNU C Erweiterungen benutzt werden Eine Ausnahme bilden die architekturabhangigen Teile des Codes im Verzeichnis arch innerhalb der Linux Sourcen wie zum Beispiel der Beginn des Systemstarts Bootvorgang der in Assemblersprache geschrieben ist Die Aufnahme von Rust als weitere Programmiersprache ist fur die Mainline Kernel ab Version 6 1 vorgesehen insbesondere fur Geratetreiber 6 Funktionsweise Bearbeiten Bei einem strikt monolithischen Kernel wird der gesamte Quellcode inklusive aller Treiber in das Kernel Image den ausfuhrbaren Kernel kompiliert Im Gegensatz dazu kann Linux Module benutzen die wahrend des Betriebs geladen und wieder entfernt werden konnen Damit wird die Flexibilitat erreicht um unterschiedlichste Hardware ansprechen zu konnen ohne samtliche auch nicht benotigte Treiber und andere Systemteile im Arbeitsspeicher halten zu mussen Sind Teile der Hardwarespezifikationen nicht genugend offengelegt so stutzt sich Linux notfalls uber spezielle VM86 Modi auch auf das BIOS des Systems u a auf die Erweiterungen gemass den Standards APM ACPI und VESA Um unter diesen Voraussetzungen x86 kompatible Hardware z B auf der DEC Alpha Plattform zu betreiben werden teilweise sogar Emulatoren zur Ausfuhrung entsprechenden ROM Codes verwendet Linux selbst ubernimmt das System beim Bootprozess typischerweise in dem Moment in dem der BIOS Bootloader erfolgreich war und alle Systeminitialisierungen des BIOS abgeschlossen sind Der Kernel ist ein Betriebssystemkern und darf nicht als das eigentliche Betriebssystem verstanden werden Dieses setzt sich aus dem Kernel und weiteren grundlegenden Bibliotheken und Programmen die den Computer erst bedienbar machen zusammen Siehe auch Geratedatei Network Block Device Netfilter Netzwerk Scheduler Prozess Scheduler Linux Betriebssystem Schnittstellen Bearbeiten nbsp Linux Standard BaseMan kann zwischen vier Schnittstellen unterscheiden die das Zusammenwirken von entweder kernelinternen Komponenten untereinander oder von Kernel und externer Software ermoglichen Die Stabilitat der externen Programmierschnittstelle wird garantiert das heisst dass Quellcode grundsatzlich ohne jegliche Veranderungen portierbar ist Die Stabilitat der internen Programmierschnittstellen wird nicht garantiert diese konnen zehn Jahre oder wenige Monate stabil bleiben Da der Linux Kernel von einigen tausend Entwicklern vorangetrieben wird ist der eventuell entstehende Aufwand zu verschmerzen Die Binarschnittstelle des Kernels ist unerheblich auf das komplette Betriebssystem kommt es an Die Linux Standard Base LSB soll es ermoglichen kommerzielle Programme unverandert zwischen Linux Betriebssystemen zu portieren Die interne Binarschnittstelle ist nicht stabil und es gibt keinerlei Bestrebungen dies zu andern dies hat zur Folge dass ein internes Modul welches z B fur Linux 3 0 kompiliert worden ist hochstwahrscheinlich nicht mit Linux Kernel 3 1 zusammenarbeiten wird Dies ist eine ganz bewusste Entscheidung 7 Architektur Bearbeiten Anwenderprogramme z B Textverarbeitung Tabellenkalkulation oder Browser User ModeComplex Libraries GLib GTK Qt SDL EFL AnwenderprogrammeComplex Libraries GLib kde Simple Libraries sin opendbm AnwenderprogrammeC Standard Bibliothek glibc open exec sbrk socket fopen callocSystemaufrufe TRAP CALL BRK INT je nach Hardware Kernel ModeKernel Geratetreiber Prozesse Netzwerk Dateisystem Hardware Prozessor en Speicher Gerate Linux ist ein monolithischer Kernel Die Treiber im Kernel und die Kernel Module laufen im privilegierten Modus x86 Ring 0 haben also unbeschrankten Zugriff auf die Hardware Einige wenige Module des Kernels laufen im eingeschrankten Benutzermodus x86 Ring 3 Die Level 1 und 2 der x86 Architektur werden von Linux nicht genutzt da sie auf vielen anderen Architekturen nicht existieren und der Kernel auf allen unterstutzten Architekturen im Wesentlichen gleich funktionieren soll Nahezu jeder Treiber kann auch als Modul zur Verfugung stehen und vom System dann dynamisch nachgeladen werden Ausgenommen davon sind Treiber die fur das Starten des Systems verantwortlich sind bevor auf das Dateisystem zugegriffen werden kann Man kann allerdings den Kernel so konfigurieren dass ein CramFS oder Initramfs Dateisystem vor dem tatsachlichen Root Dateisystem geladen wird welches die weiteren fur den Startprozess notwendigen Module enthalt Dadurch kann die Kernelgrosse verringert und die Flexibilitat drastisch erhoht werden Im System laufende Programme bekommen wiederum vom Kernel Prozessorzeit zugewiesen Jeder dieser Prozesse erhalt einen eigenen geschutzten Speicherbereich und kann nur uber Systemaufrufe auf die Geratetreiber und das Betriebssystem zugreifen Die Prozesse laufen dabei im Benutzermodus user mode wahrend der Kernel im Kernel Modus kernel mode arbeitet Die Privilegien im Benutzermodus sind sehr eingeschrankt Abstraktion und Speicherschutz sind nahezu vollkommen ein direkter Zugriff wird nur sehr selten und unter genau kontrollierten Bedingungen gestattet Dies hat den Vorteil dass kein Programm z B durch einen Fehler das System zum Absturz bringen kann Linux stellt wie sein Vorbild Unix eine vollstandige Abstraktion und Virtualisierung fur nahezu alle Betriebsmittel bereit z B virtueller Speicher Illusion eines eigenen Prozessors usw Die Tatsache dass Linux nicht auf einem Microkernel basiert war Thema eines beruhmten Flame Wars zwischen Linus Torvalds und Andrew S Tanenbaum Anfang der 1990er Jahre als Linux entwickelt wurde galten monolithische Kernels als obsolet Linux war zu diesem Zeitpunkt noch rein monolithisch Die Diskussion und Zusammenfassungen sind im Artikel Geschichte von Linux naher beschrieben Durch Erweiterungen wie FUSE und durch die zunehmende Verwendung von Kernel Prozessen fliessen mittlerweile auch zahlreiche Microkernel Konzepte in Linux ein Portierbarkeit Bearbeiten Obwohl Linus Torvalds eigentlich nicht beabsichtigt hatte einen portierbaren Kernel zu schreiben hat sich Linux dank des GNU Compilers GCC weitreichend in diese Richtung entwickelt Es ist inzwischen eines der am haufigsten portierten Systeme nur noch NetBSD lauft auf etwa gleich vielen Architekturen Das Repertoire reicht dabei von eher selten anzutreffenden Betriebsumgebungen wie dem iPAQ Handheld Computer Digitalkameras oder Grossrechnern wie IBMs System z bis hin zu normalen PCs Obwohl die Portierung auf die S 390 ursprunglich ein vom IBM Management nicht genehmigtes Unterfangen war siehe auch Skunk works plante IBM auch die IBM Supercomputergeneration Blue Gene mit einem eigenen Linux Port auszustatten Ursprunglich hatte Torvalds eine ganz andere Art von Portierbarkeit fur sein System angestrebt namlich die Moglichkeit freie GPL und andere quelloffene Software leicht unter Linux kompilieren zu konnen Dieses Ziel wurde bereits sehr fruh erreicht und macht sicherlich einen guten Teil des Erfolges von Linux aus da es jedem eine einfache Moglichkeit bietet auf einem freien System freie Software laufen zu lassen Die ersten Architekturen auf denen Linux lief waren die von Linus Torvalds verwendeten Computer 8 IA 32 x86 ab dem i386 Linus hatte ab 1991 einen PC mit Intel 386DX 33 MHz Prozessor 4 MB RAM und 40 MB Festplatte Alpha Linus arbeitete von 1994 bis 1995 an der Portierung auf die 64 Bit Alpha Architektur auf einem DEC Alpha Rechner den er als Leihgabe erhalten hatte Damit war Linux sehr fruh 64 Bit fahig Linux 1 2 erschien 1995 und durch die Portierung auf Alpha war der Weg fur weitere Portierungen frei Zeitgleich arbeitete der Student Dave Miller ab 1993 an der Portierung auf SPARC von Sun Microsystems einer damals weit verbreiteten Architektur Doch lief Linux 2 0 von Mitte 1996 offiziell auf IA 32 und Alpha konnte aber bereits SMP Mit Linux 2 2 vom Januar 1999 kamen folgende Ports hinzu 8 SPARC UltraSPARC von Oracle ursprunglich von Sun 68000 m68k von Motorola PowerPC ppc von Apple IBM und Motorola AIM Allianz Mit Linux 2 4 vom Januar 2001 kamen schliesslich folgende Architekturen hinzu 8 Itanium IA 64 von Intel und HP S 390 von IBM SuperH von Hitachi MIPSTrotz der unterstutzten Befehlssatzarchitekturen englisch Instruction Set Architecture kurz ISA ist fur die Lauffahigkeit mehr notig sodass Linux gegenwartig auf u a folgenden Plattformen und Architekturen lauft Acorn Archimedes A5000 und Risc PC Serie Arm StrongARM Intel XScale usw Alpha von Compaq Atmel AVR32 Axis Communications CRIS Blackfin Hitachi H8 300 Hewlett Packard PA RISC Itanium bzw IA 64 Computer der nach 2017 eingestellten Itanium Prozessorarchitektur von Intel und HP von Intel IA 64 bezeichnet IBM S 390 und z Systems MIPS Maschinen von Silicon Graphics Motorola 68020 und neuer spatere Amigas einige Atari und viele Apple Computer ab 1987 Macintosh II bis 1995 siehe Linux68k NEC v850e PowerPC die meisten Apple Computer zwischen 1994 und 2006 alle PCI basierten Power Macintosh der Nintendo GameCube begrenzte Unterstutzung fur NuBus Power Macs bis Kernel 2 4 x die weitere Entwicklung wurde in das Projekt PPC Linux for NuBus Power Macs ausgelagert 9 Clones der Power Macs von Power Computing UMAX und Motorola mit einer Power UP Karte verbesserte Amigas z B Blizzard oder CyberStorm bzw dessen Nachfolger AmigaOne sowohl IBM Power als auch PowerPC basierte IBM RS 6000 Systeme verschiedene eingebettete PowerPC Plattformen Sun Oracle SPARC und UltraSparc Workstations von Sun bzw Oracle SuperH von Hitachi Sega Dreamcast OpenRISC RISC V x86 Architektur x86 16 Bit im Rahmen des ELKS Projektes werden IBM PC kompatible Computer mit den 16 Bit Prozessoren 8086 8088 80186 80188 80286 und dazu kompatiblen unterstutzt Die Abkurzung ELKS steht fur Embeddable Linux Kernel Subset und stellt eine Untermenge des Linux 2 0 2 1 Kernels dar Das angestrebte Ziel ist Kompatibilitat zu Unix V7 auf 16 Bit x86 Systemen IA 32 32 Bit IBM PCs und kompatible mit Intel 80386 bis Kernel 3 7 Anfang 2013 10 bzw Intel 80486 und dazu kompatiblen x86 Prozessor Architekturen nachfolgender Generationen IA 32 64 Bit Unter der Bezeichnung amd64 oder x64 werden Prozessoren der IA 32 Architektur verstanden die einen 64 Bit Modus bieten implementiert als AMD64 oder Intel 64 Dabei handelt es sich um die Nachfolger der ursprunglichen IBM PC kompatiblen Computer die einen x86 Prozessor mit AMD Opteron und dazu kompatible nachfolgende Generationen nutzen beispielsweise ab AMDs Athlon 64 Turion Phenom Phenom II Bulldozer sowie Intels Core 2 Core i XeonBinarschnittstellen der Arm Architektur Bearbeiten Linux unterstutzt zwei verschiedene Binarschnittstellen fur Arm Prozessoren Die altere Binarschnittstelle wird mit dem Akronym OABI old application binary interface bezeichnet und unterstutzt die Prozessorarchitekturen bis einschliesslich ARMv4 wahrend die neuere Binarschnittstelle die mit EABI embedded application binary interface bezeichnet wird die Prozessorarchitekturen ab einschliesslich ARMv4 unterstutzt Der bedeutendste Unterschied der Binarschnittstellen in Bezug auf Systemleistung ist die sehr viel bessere Unterstutzung von Software emulierten Gleitkommarechnungen durch EABI 11 User Mode Linux Bearbeiten Ein besonderer Port ist das User Mode Linux Prinzipiell handelt es sich dabei um einen Port von Linux auf sein eigenes Systemcall Interface Dies ermoglicht es einen Linux Kernel als normalen Prozess auf einem laufenden Linux System zu starten Der User Mode Kernel greift dann nicht selbst auf die Hardware zu sondern reicht entsprechende Anforderungen an den echten Kernel durch Durch diese Konstellation werden Sandkasten ahnlich den virtuellen Maschinen von Java oder den jails von FreeBSD moglich in denen ein normaler Benutzer Root Rechte haben kann ohne dem tatsachlichen System schaden zu konnen µClinux Bearbeiten µClinux ist eine Linux Variante fur Computer ohne Memory Management Unit MMU und kommt vorwiegend auf Mikrocontrollern und eingebetteten Systemen zum Einsatz Seit Linux Version 2 6 ist µClinux Teil des Linux Projektes Entwicklungsprozess Bearbeiten nbsp Linus Torvalds 2014 Die Entwicklung von Linux liegt durch die GNU General Public License und durch ein sehr offenes Entwicklungsmodell nicht in der Hand von Einzelpersonen Konzernen oder Landern sondern in der Hand einer weltweiten Gemeinschaft vieler Programmierer die sich hauptsachlich uber das Internet austauschen Bei der Entwicklung kommunizieren die Entwickler fast ausschliesslich uber E Mail da Linus Torvalds behauptet dass so die Meinungen nicht direkt aufeinander prallen In vielen Mailinglisten aber auch in Foren und im Usenet besteht fur jedermann die Moglichkeit die Diskussionen uber den Kernel zu verfolgen sich daran zu beteiligen und auch aktive Beitrage zur Entwicklung zu leisten Durch diese unkomplizierte Vorgehensweise ist eine schnelle und stetige Entwicklung gewahrleistet die auch die Moglichkeit mit sich bringt dass jeder dem Kernel Fahigkeiten zukommen lassen kann die er benotigt Eingegrenzt wird dies nur durch die Kontrolle von Linus Torvalds und einigen besonders verdienten Programmierern die das letzte Wort uber die Aufnahme von Verbesserungen und Patches in die offizielle Version haben Manche Linux Distributoren bauen auch eigene Funktionen in den Kernel ein die im offiziellen Kernel noch nicht vorhanden sind Anderungen der Herkunftskontrolle Bearbeiten Der Entwicklungsprozess des Kernels ist wie der Kernel selbst ebenfalls immer weiterentwickelt worden So fuhrte der Rechtsprozess der SCO Group um angeblich illegal ubertragenen Code in Linux zur Einfuhrung eines Linux Developer s Certificate of Origin das von Linus Torvalds und Andrew Morton bekanntgegeben wurde 12 Diese Anderung griff das Problem auf dass nach dem bis dahin gultigen Modell des Linux Entwicklungsprozesses die Herkunft einer Erweiterung oder Verbesserung des Kernels nicht nachvollzogen werden konnte These days most of the patches in the kernel don t actually get sent directly to me That not just wouldn t scale but the fact is there s a lot of subsystems I have no clue about and thus no way of judging how good the patch is So I end up seeing mostly the maintainers of the subsystem and when a bug happens what I want to see is the maintainer name not a random developer who I don t even know if he is active any more So at least for me the chain is actually mostly more important than the actual originator There is also another issue namely the fact than when I or anybody else for that matter get an emailed patch the only thing I can see directly is the sender information and that s the part I trust When Andrew sends me a patch I trust it because it comes from him even if the original author may be somebody I don t know So the path the patch came in through actually documents that chain of trust we all tend to know the next hop but we do not necessarily have direct knowledge of the full chain So what I m suggesting is that we start signing off on patches to show the path it has come through and to document that chain of trust It also allows middle parties to edit the patch without somehow losing their names quite often the patch that reaches the final kernel is not exactly the same as the original one as it has gone through a few layers of people Zurzeit werden die meisten Patches fur den Kernel nicht direkt an mich gesandt Das ware einfach nicht machbar Tatsache ist dass es eine Menge Untersysteme gibt mit denen ich uberhaupt nicht vertraut bin und ich somit keine Moglichkeit habe zu entscheiden wie gut der Patch ist Deshalb lauft es meist darauf hinaus die Pfleger Maintainer des Untersystemes zu treffen Falls ein Fehler auftritt will ich den Namen eines Pflegers und nicht irgendeines Entwicklers sehen von dem ich nicht einmal weiss ob er noch aktiv ist Daher ist fur mich auf jeden Fall die Kette wichtiger als der tatsachliche Urheber Auch gibt es ein anderes Problem namlich dass ich falls man mir oder irgendjemand anderem einen Patch uber E Mail schickt einzig die Senderinformation direkt sehen kann und das ist der Teil dem ich traue Wenn Andrew mir einen Patch schickt vertraue ich dem Patch weil er von Andrew kommt auch wenn der eigentliche Urheber jemand ist den ich nicht kenne Also belegt tatsachlich der Weg den der Patch zu mir nahm diese Kette des Vertrauens wir alle neigen dazu das jeweils nachste Glied zu kennen aber nicht unbedingt unmittelbares Wissen uber die gesamte Kette zu haben Was ich also vorschlage ist dass wir anfangen Patches abzuzeichnen um den Weg den sie genommen haben aufzuzeigen und diese Kette des Vertrauens zu dokumentieren Das erlaubt es daruber hinaus vermittelnden Gruppen den Patch zu verandern ohne dass dabei der Name von jemanden auf der Strecke bleibt ziemlich oft ist die Patchversion die letztendlich in den Kernel aufgenommen wird nicht genau die ursprungliche ist sie doch durch einige Entwicklerschichten gegangen Linus Torvalds Linux Kernel Archive 23 Mai 2004 13 Das Versionskontrollsystem Git Bearbeiten Die Versionskontrolle des Kernels unterliegt dem Programm Git Dies wurde speziell fur den Kernel entwickelt und auf dessen Bedurfnisse hin optimiert Es wurde im April 2005 eingefuhrt nachdem sich abgezeichnet hatte dass das alte Versionskontrollsystem BitKeeper nicht mehr lange fur die Kernelentwicklung genutzt werden konnte Kernel Versionen Bearbeiten Auf der Website kernel org werden alle alten und neuen Kernel Versionen archiviert Die dort befindlichen Referenzkernel werden auch als Vanilla Kernel bezeichnet von umgangssprachlich engl vanilla fur Standard bzw ohne Extras im Vergleich zu Distributionskernels Auf diesem bauen die Distributionskernel auf die von den einzelnen Linux Distributionen um weitere Funktionen erganzt werden Die Kernel Version des geladenen Betriebssystems kann mit dem Syscall uname abgefragt werden Versionsnummern Schema Bearbeiten Die fruhen Kernelversionen 0 01 bis 0 99 hatten noch kein klares Nummerierungsschema Version 1 0 sollte die erste stabile Linux Version werden Beginnend mit Version 1 0 folgen die Versionsnummern von Linux einem bestimmten Schema Die erste Ziffer wird nur bei grundlegenden Anderungen in der Systemarchitektur angehoben Wahrend der Entwicklung des 2 5er Kernels kam wegen der relativ grundlegenden Anderungen verglichen mit dem 2 4er Kernel die Diskussion unter den Kernel Programmierern auf den nachsten Produktionskernel als 3 0 zu deklarieren Torvalds war aber aus verschiedenen Grunden dagegen sodass der resultierende Kernel als 2 6 bezeichnet wurde Die zweite Ziffer gibt das jeweilige Majorrelease an Bisher wurden stabile Versionen Produktivkernel von den Entwicklern stets durch gerade Ziffern wie 2 2 2 4 und 2 6 gekennzeichnet wahrend die Testversionen Entwicklerkernel immer ungerade Ziffern trugen wie zum Beispiel 2 3 und 2 5 diese Trennung ist aber seit Juli 2004 ausgesetzt es gab keinen Entwicklerkernel mit der Nummer 2 7 stattdessen wurden die Anderungen laufend in die 2 6er Serie eingearbeitet Zusatzlich bezeichnet eine dritte Zahl das Minorrelease das die eigentliche Version kennzeichnet Werden neue Funktionen hinzugefugt steigt die dritte Zahl an Der Kernel wird damit zum Beispiel mit einer Versionsnummer wie 2 6 7 bestimmt Um die Korrektur eines schwerwiegenden NFS Fehlers schneller verbreiten zu konnen wurde mit der Version 2 6 8 1 erstmals eine vierte Ziffer eingefuhrt Seit Marz 2005 Kernel 2 6 11 wird diese Nummerierung offiziell verwendet 14 So ist es moglich die Stabilitat des Kernels trotz teilweise sehr kurzer Veroffentlichungszyklen zu gewahrleisten und Korrekturen von kritischen Fehlern innerhalb weniger Stunden in den offiziellen Kernel zu ubernehmen wobei sich die vierte Ziffer erhoht z B von 2 6 11 1 auf 2 6 11 2 Die Minorreleasenummer also die dritte Ziffer wird hingegen nur bei Einfuhrung neuer Funktionen hochgezahlt Im Mai 2011 erklarte Linus Torvalds die nach der Version 2 6 39 kommende Version nicht 2 6 40 sondern 3 0 zu benennen 15 Als Grund dafur fuhrte er an dass die Versionsnummern seiner Meinung nach zu hoch wurden Die Versionsnummer 3 stehe gleichzeitig fur das dritte Jahrzehnt welches fur den Linux Kernel mit seinem 20 Geburtstag anfange Bei neuen Versionen wird seitdem die zweite Ziffer erhoht und die dritte steht anstelle der vierten fur Bugfixreleases Im Februar 2015 erhohte Torvalds auf Version 4 0 statt Version 3 20 16 nachdem er auf Google Meinungen hierzu eingeholt hatte 17 Seit Marz 2019 ist Linux 5 0 freigegeben Dabei hat der Sprung von der letzten Versionsnummer 4 20 auf 5 0 keine tiefergehende Bedeutung Auch den Sprung von 5 19 auf 6 0 begrundete Linus lediglich lakonisch damit dass er sich wieder vor grossen Nummern zu furchten beginne 18 Entwicklerversion Bearbeiten Neue Funktionen finden sich im mm Kernel des Kernelentwicklers Andrew Morton und werden anschliessend in den Hauptzweig von Torvalds ubernommen Somit werden grosse Unterschiede zwischen Entwicklungs und Produktionskernel und damit verbundene Portierungsprobleme zwischen den beiden Serien vermieden Durch dieses Verfahren gibt es auch weniger Differenzen zwischen dem offiziellen Kernel und den Distributionskernel fruher wurden Features des Entwicklungszweiges von den Distributoren haufig in ihre eigenen Kernels ruckintegriert Allerdings litt 2004 2005 die Stabilitat des 2 6er Kernels unter den haufig zu schnell ubernommenen Anderungen Ende Juli 2005 wurde deshalb ein neues Entwicklungsmodell beschlossen das nach dem Erscheinen der Version 2 6 13 erstmals zur Anwendung kam Neuerungen werden nur noch in den ersten zwei Wochen der Kernelentwicklung angenommen wobei anschliessend eine Qualitatssicherung bis zum endgultigen Erscheinen der neuen Version erfolgt Pflege der Kernel Versionen Bearbeiten Wahrend Torvalds die neuesten Entwicklungsversionen veroffentlicht wurde die Pflege der alteren stabilen Versionen an andere Programmierer abgegeben Gegenwartig ist dafur Greg Kroah Hartman verantwortlich mit Ausnahme des von Ben Hutchings betreuten 3 16 Zweigs Zusatzlich zu diesen offiziellen und uber Kernel org oder einen seiner Mirrors zu beziehenden Kernel Quellcodes kann man auch alternative Kernel Trees aus anderen Quellen benutzen Distributoren von Linux basierten Betriebssystemen pflegen meistens ihre eigenen Versionen des Kernels und beschaftigen zu diesem Zwecke fest angestellte Kernel Hacker die ihre Anderungen meist auch in die offiziellen Kernels einfliessen lassen Distributions Kernel sind haufig intensiv gepatcht um auch Treiber zu enthalten die noch nicht im offiziellen Kernel enthalten sind von denen der Distributor aber glaubt dass seine Kundschaft sie benotigen konnte und die notwendige Stabilitat respektive Fehlerfreiheit dennoch gewahrleistet ist Versionen mit Langzeitunterstutzung Bearbeiten Folgende Versionen werden besonders lange mit Support Long Term Support versorgt 19 Version Veroffentlichung Support Ende EOL 4 14 12 Nov 2017 Januar 20244 19 22 Okt 2018 Dezember 20245 4 24 Nov 2019 Dezember 20255 10 13 Dez 2020 Dezember 20265 15 31 Okt 2021 Dezember 20266 1 11 Dez 2022 Dezember 20266 6 29 Okt 2023 Dezember 2026Versionsgeschichte BearbeitenZeittafeln Bearbeiten nbsp Entwicklung der Anzahl QuelltextzeilenDas folgende Schaubild stellt einzelne Versionen des Linux Kernels anhand der Erscheinungsdaten auf einer Zeittafel angeordnet dar und soll dem Uberblick dienen Versionsgeschichte bis Version 2 6 Bearbeiten Zweig Version Veroffentlichung 20 Dateien a Quellcode zeilen b Grossein kB c BemerkungenAltere Version nicht mehr unterstutzt 0 01 17 September 1991 88 8 413 230 erste Veroffentlichung startete auf Systemen mit Floppy Diskettenlaufwerk und 386er Prozessor lud dabei die Treiber fur das Minix Dateisystem und eine finnische Tastatur sowie als einziges Anwendungsprogramm den Kommandozeileninterpreter bash 21 1 0 Altere Version nicht mehr unterstutzt 1 0 0 13 Marz 1994 563 170 581 1 259 erste kommerziell verwendbare Version Tatsachlich sind jedoch die Buchstaben der letzten Version 0 99z ausgegangen so fuhrte man verfruht die Version 1 0 ein 1 1 Altere Version nicht mehr unterstutzt 1 1 0 6 April 1994 561 170 320 1 256 EntwicklungsversionAltere Version nicht mehr unterstutzt 1 1 95 2 Marz 1995 2 3011 2 Altere Version nicht mehr unterstutzt 1 2 0 7 Marz 1995 909 294 623 2 301 erste Portierungen auf weitere Prozessorarchitekturen mit Alpha MIPS und SPARC 22 Altere Version nicht mehr unterstutzt 1 2 13 2 August 1995 2 3551 3 Altere Version nicht mehr unterstutzt 1 3 0 12 Juni 1995 992 323 581 2 558 Entwicklungsversion mit erster Unterstutzung fur Mehrprozessorsysteme 22 Altere Version nicht mehr unterstutzt 1 3 100 10 Mai 1996 5 6152 0 Altere Version nicht mehr unterstutzt 2 0 0 9 Juni 1996 2 015 716 119 5 844 erste Unterstutzung fur symmetrische Mehrprozessorsysteme 22 Einfuhrung von Kernel Modulen Altere Version nicht mehr unterstutzt 2 0 40 8 Februar 2004 7 5512 1 Altere Version nicht mehr unterstutzt 2 1 0 30 September 1996 1 727 735 736 6 030 EntwicklungsversionAltere Version nicht mehr unterstutzt 2 2 0 pre9 21 Januar 1999 13 0772 2 Altere Version nicht mehr unterstutzt 2 2 0 26 Januar 1999 4 599 1 676 182 13 080 erste Unterstutzung fur das Netzwerkprotokoll IPv6 sowie Portierung auf die Plattformen UltraSPARC und PA RISC 22 Altere Version nicht mehr unterstutzt 2 2 26 24 Februar 2004 19 5302 3 Altere Version nicht mehr unterstutzt 2 3 0 11 Mai 1999 4 721 1 763 358 13 804 EntwicklungsversionAltere Version nicht mehr unterstutzt 2 3 99 pre9 23 Mai 2000 20 8822 4 Altere Version nicht mehr unterstutzt 2 4 0 4 Januar 2001 8 187 3 158 560 24 379 erste Unterstutzung fur den Energieverwaltungsstandard ACPI und fur den Datenbus USB 22 Large File Support 23 Einfuhrung des Netfilter und der iptables 24 letzter gepflegter Zweig vor 2 6 25 Altere Version nicht mehr unterstutzt 2 4 37 2 Dezember 2008 38 735 Letzte Version war 2 4 37 11 am 18 Dezember 20102 5 Altere Version nicht mehr unterstutzt 2 5 0 23 November 2001 9 893 3 833 603 29 405 EntwicklungsversionAltere Version nicht mehr unterstutzt 2 5 75 10 Juli 2003 40 9692 6 Altere Version nicht mehr unterstutzt 2 6 0 18 Dezember 2003 21 279 8 102 486 41 614 neues Versionsschema dabei wurden die bisherigen Entwicklerzweige durch einen stetigen Entwicklungsprozess ersetzt 22 fur alle nachfolgenden Versionen siehe Abschnitt Versionsgeschichte ab Version 2 6 Legende Alte VersionAltere Version noch unterstutztAktuelle VersionAktuelle VorabversionZukunftige VersionVersionsgeschichte ab Version 2 6 Bearbeiten Bei Betrachtung der zuletzt erschienenen Versionen siehe Tabelle erfolgt die Entwicklung einer neuen Kernel Version in durchschnittlich 82 Tagen Der Kernel wird hierbei im Durchschnitt um 768 Dateien und 325 892 Quelltextzeilen englisch Lines of Code erweitert Das mit dem Datenkompressionsprogramm gzip komprimierte tar Archiv tar gz wachst im Mittel um rund 2 Megabyte mit jeder veroffentlichten Hauptversion Version Veroffentlichung 20 Anzahl der Dateien a Quelltext zeilen b Grossein kB c Zeitraumin Tagen d BemerkungenAltere Version nicht mehr unterstutzt 2 6 13 28 Aug 2005 u a wurde Inotify aufgenommen 26 Altere Version nicht mehr unterstutzt 2 6 20 4 Feb 2007 21 280 8 102 486 54 548 66 erste Unterstutzung fur die Virtualisierungstechnik KVM 27 Altere Version nicht mehr unterstutzt 2 6 21 26 Apr 2007 21 614 8 246 470 55 329 80Altere Version nicht mehr unterstutzt 2 6 22 8 Juli 2007 22 411 8 499 363 56 914 74Altere Version nicht mehr unterstutzt 2 6 23 9 Okt 2007 22 530 8 566 554 57 404 93Altere Version nicht mehr unterstutzt 2 6 24 24 Jan 2008 23 062 8 859 629 59 079 107Altere Version nicht mehr unterstutzt 2 6 25 17 Apr 2008 23 810 9 232 484 61 518 83Altere Version nicht mehr unterstutzt 2 6 26 13 Juli 2008 24 270 9 411 724 62 550 88Altere Version nicht mehr unterstutzt 2 6 27 9 Okt 2008 24 354 9 709 868 63 721 88 wurde nachtraglich mit Unterstutzung fur neue Hardware wie SAS erweitert 28 Dieser Zweig hatte Long Term Support die letzte Version war 2 6 27 62 am 17 Marz 2012Altere Version nicht mehr unterstutzt 2 6 28 24 Dez 2008 25 255 10 195 507 66 766 76Altere Version nicht mehr unterstutzt 2 6 29 23 Marz 2009 26 668 11 010 647 71 977 89 Aufnahme des Btrfs 29 30 Altere Version nicht mehr unterstutzt 2 6 30 10 Juni 2009 27 879 11 637 173 75 768 78 USB 3 0 UnterstutzungAltere Version nicht mehr unterstutzt 2 6 31 9 Sep 2009 29 111 12 046 317 78 279 92 Unterstutzung fur Festplatten mit nativen 4K Sektoren auch bekannt als Advanced Format Altere Version nicht mehr unterstutzt 2 6 32 3 Dez 2009 30 485 12 610 030 81 901 84 Dieser LTS Zweig wurde von Willy Tarreau betreut die letzte Version war 2 6 32 71 am 12 Marz 2016Altere Version nicht mehr unterstutzt 2 6 33 24 Feb 2010 31 565 12 990 041 84 533 83 bildet die Grundlage fur einen Echtzeit Zweig 31 Letzte Version war 2 6 33 20 am 7 November 2011 32 Altere Version nicht mehr unterstutzt 2 6 34 16 Mai 2010 32 297 13 320 934 86 520 82 Grafiktreiber fur neuere AMD Radeon GPUs und die Grafikkerne von einigen erst Anfang nachsten Jahres erwarteten Intel Prozessoren neue Dateisysteme LogFS und Ceph 33 viele Anderungen an den Dateisystemen Btrfs ext4 NILFS2 SquashFS und XFS 34 dem SCSI Subsystem und dem Architektur Code fur Arm Blackfin und MicroBlaze CPUs 35 bessere Unterstutzung fur neue und altere AMD und Intel Chips grossere Umbaumassnahmen am Nouveau Treiber fur Nvidia Grafik 36 Dieser LTS Zweig wurde von Paul Gortmaker betreut die letzte Version war 2 6 34 15 am 10 Februar 2014Altere Version nicht mehr unterstutzt 2 6 35 1 Aug 2010 33 316 13 545 604 88 301 77 neu sind unter anderem ein verbesserter Netzwerkdurchsatz defragmentierbarer Arbeitsspeicher und die Unterstutzung fur die Turbo Core Funktion moderner AMD Prozessoren 37 die Unterstutzung fur die Stromsparfunktionen von Radeon Grafikchips wurde verbessert sowie die neuen H 264 Dekodierfunktionen fur den Grafikkern in Intels Core i5 Prozessoren auch Ironlake genannt 38 Letzte Version war 2 6 35 14 am 13 Marz 2012 39 Altere Version nicht mehr unterstutzt 2 6 36 20 Okt 2010 34 301 13 499 457 88 707 80 neu sind im auch Flesh Eating Bats with Fangs englisch fur Fleischfressende Fledermause mit Reisszahnen genannten 36er Zweig 40 unter anderem das Sicherheits Framework AppArmor die Schnittstelle LIRC fur das in Version 2 6 35 eingefuhrte System zur Nutzung von Infrarot Fernbedienungen und eine verbesserte Energieverwaltung fur Grafikprozessoren 41 Unterstutzung fur Echtzeit Virenscanner 42 Letzte Version war 2 6 36 4 am 17 Februar 2011Altere Version nicht mehr unterstutzt 2 6 37 5 Jan 2011 35 186 13 916 632 92 474 76 neu sind neben den ublichen zusatzlichen Treibern u a fur USB 3 0 eine verbesserte Skalierung und Virtualisierung fur Mehrkernprozessoren 43 Letzte Version war 2 6 37 6 am 27 Marz 2011Altere Version nicht mehr unterstutzt 2 6 38 15 Marz 2011 35 864 14 208 866 94 144 69 Unterstutzung fur die AMD Radeon HD 6000 Serie und fur AMDs APUs 44 sowie Verbesserungen fur Audio und Video Verarbeitung als auch fur beruhrungsempfindliche Bildschirme 45 Letzte Version war 2 6 38 8 am 3 Juni 2011Altere Version nicht mehr unterstutzt 2 6 39 19 Mai 2011 36 705 14 533 582 95 994 65 Unterstutzung fur Firewall IP sets 46 47 der Big Kernel Lock wird entfernt 48 Letzte Version war 2 6 39 4 am 3 August 2011Altere Version nicht mehr unterstutzt 3 0 22 Juli 2011 36 781 14 646 952 96 676 64 neues Versionsnummernschema 49 zudem neue Treiber u a fur virtuelle Netzwerkgerate und den Fernseh Standard DVB T2 sowie allgemein verbesserte Virtualisierung u a durch abschliessende Arbeiten an dem Hypervisor Xen und viele kleine Verbesserungen wie z B Schreib und Losch Optimierungen fur Dateisysteme 50 51 Dieser LTS Zweig wurde von Greg Kroah Hartman betreut die letzte Version war 3 0 101 am 22 Oktober 2013Altere Version nicht mehr unterstutzt 3 1 24 Okt 2011 37 084 14 770 469 97 334 94 neu ist u a die Unterstutzung der Prozessor Plattform OpenRISC 52 Letzte Version war 3 1 10 am 18 Januar 2012Altere Version nicht mehr unterstutzt 3 2 4 Jan 2012 37 617 14 998 651 62 600 73 neu ist u a die Unterstutzung fur die Prozessor Architektur Hexagon des Unternehmens Qualcomm zudem wurden u a einige Netzwerktreiber in das zugehorige Subsystem ausgelagert 32 Dieser LTS Zweig wurde von Ben Hutchings betreut die letzte Version war 3 2 102 am 31 Mai 2018Altere Version nicht mehr unterstutzt 3 3 18 Marz 2012 38 082 15 166 074 75 300 74 neu ist u a die Unterstutzung fur die Android Plattform 53 Letzte Version war 3 3 8 am 1 Juni 2012Altere Version nicht mehr unterstutzt 3 4 20 Mai 2012 38 566 15 383 860 64 100 63 neunte LTS Freigabe neu ist u a die Unterstutzung des Ruhezustand Modus RC6 54 55 56 Dieser LTS Zweig wurde zuletzt von Li Zefan betreut die letzte Version war 3 4 113 am 26 Oktober 2016Altere Version nicht mehr unterstutzt 3 5 21 Juli 2012 39 096 15 596 378 77 200 62 die Unterstutzung fur die veralteten Netzwerk Standards Token Ring und Econet wurde entfernt 57 Letzte Version war 3 5 7 am 12 Oktober 2012Altere Version nicht mehr unterstutzt 3 6 30 Sep 2012 39 733 15 868 036 78 500 71 u a wurde die Energiespar oder Schlaffunktion fur den Bereitschaftsbetrieb und Ruhezustand des gesamten Systems weiterentwickelt 58 Letzte Version war 3 6 11 am 17 Dezember 2012Altere Version nicht mehr unterstutzt 3 7 11 Dez 2012 40 905 16 191 690 79 800 71 u a NAT fur IPv6 Unterstutzung fur den Arm 64 Bit Befehlssatz und Ext4 Grossenanderungen fur Laufwerke die grosser sind als 16 Terabyte grossere Veranderungen an den Grafiktreibern fur Nvidia Intel und AMD Grafik und verbesserte Hardware Unterstutzung fur Helligkeitsregelung und Stromsparfunktionen von Soundkarten 59 Letzte Version war 3 7 10 am 27 Februar 2013Altere Version nicht mehr unterstutzt 3 8 18 Feb 2013 41 520 16 416 874 84 623 70 u a wurde die Unterstutzung fur das Dateisystem F2FS eingefugt 60 und die Unterstutzung fur Intel 80386 Prozessoren entfernt 61 soll als Basis fur die nachste Android Version dienen 62 Letzte Version war 3 8 13 am 11 Mai 2013Altere Version nicht mehr unterstutzt 3 9 29 Apr 2013 42 423 16 686 879 82 000 69 u a wurde die Unterstutzung fur 32 Bit Prozessoren der Baureihe HTP von Meta 63 sowie ARC 700 von Synopsys 64 hinzugefugt und die Treiber fur das Dateisystem Btrfs um eine erste Unterstutzung fur Raid 5 und 6 erweitert 62 65 Letzte Version war 3 9 11 am 21 Juli 2013Altere Version nicht mehr unterstutzt 3 10 30 Juni 2013 43 016 16 955 489 69 900 63 unter anderem bessere Unterstutzung fur den Unified Video Decoder UVD von AMD Radeon GPUs und bessere Unterstutzung von Nvidia Tegra Zudem wurden die Echtzeitfahigkeiten verbessert sowie die Nutzung von SSDs als Cache fur Festplatten ermoglicht 66 Neu ist auch der Treiber fur die Hochgeschwindigkeitsubertragungstechnologie InfiniBand 67 Dieser LTS Zweig wurde zuletzt von Willy Tarreau betreut die letzte Version war 3 10 108 am 4 November 2017Altere Version nicht mehr unterstutzt 3 11 2 Sep 2013 44 002 17 403 279 71 600 63 neben Optimierungen an den Grafik Treibern ist die Aufnahme von verschiedenen neuen WLAN und LAN Treibern sowie die Verbesserung der KVM und Xen Unterstutzung auf ARM64 vorgesehen 68 wird der Arbeitsspeicher knapp kann dieser mit einem Zswap siehe auch Zip und Swap komprimiert werden 69 Letzte Version war 3 11 10 am 29 November 2013 Wegen ihrer Versionsnummer auch Linux for Workgroups genannt angelehnt an Microsoft s Windows 3 11 for Workgroups 70 Altere Version nicht mehr unterstutzt 3 12 3 Nov 2013 44 586 17 726 872 73 000 62 neben Optimierungen an den Optimus Treibern ist die Unterstutzung eines SYN Proxy hinzugekommen 71 der SYN Flooding Angriffe verhindern soll 72 Multithreading bei mit Mdadm angelegten Raid 5 Arrays und Btrfs beherrscht Deduplikation 73 Dieser LTS Zweig wurde von Jiri Slaby betreut die letzte Version war 3 12 74 am 9 Mai 2017Altere Version nicht mehr unterstutzt 3 13 20 Jan 2014 44 970 17 930 916 73 600 77 enthalt die neue Firewall Infrastruktur Nftables welche die mit dem 2 4er eingefuhrten Iptables ablosen soll bessere 3D Leistung und Aktivierung des Dynamic Power Management DPM bei AMD Radeon Grafikkarten 74 75 Moderneres Multiqueue Storage Interface 76 Letzte Version war 3 13 11 am 22 April 2014Altere Version nicht mehr unterstutzt 3 14 31 Marz 2014 45 935 18 271 989 74 900 70 ein Scheduler der fur Echtzeitsysteme geeignet ist 77 hinzugefugt und u a ist nun Xen 4 4 enthalten 78 Unterstutzung von neuen Grafikkernen und korrekte Funktion des Unified Video Decoder UVD fur AMD Grafikchips ab HD 7000 77 Dieser LTS Zweig wurde von Greg Kroah Hartman betreut die letzte Version war 3 14 79 am 11 September 2016Altere Version nicht mehr unterstutzt 3 15 8 Juni 2014 46 780 18 632 574 76 000 53 das Aufwachen aus dem Suspend to RAM Modus wurde beschleunigt und Open File Description Locks eingefuhrt Z B Videosoftware soll nun einfacher Teile einer Datei auslesen konnen und atomares Austauschen von Dateien wird moglich Die Unterstutzung von FUSE XFS und Flash Speichern mit einem Dateisystem darauf wurde ausgebaut 79 Letzte Version war 3 15 10 am 14 August 2014Altere Version nicht mehr unterstutzt 3 16 3 Aug 2014 47 425 18 879 129 76 900 56 eingeflossen sind u a Robustheitsmassnahmen beim Dateisystem Btrfs die Grafiktreiber Radeon und Nouveau wurden optimiert 80 Dieser LTS Zweig wurde von Ben Hutchings betreut die letzte Version war 3 16 85 am 11 Juni 2020Altere Version nicht mehr unterstutzt 3 17 5 Okt 2014 47 490 18 864 388 76 600 63 Die Funktion getrandom und Vorgaben zur Mindest Entropie sorgen fur sicherere Zufallszahlen Neu sind Grundlagen fur Kdbus Fences in Dma Buf MST Multi Stream Transport Teil von DisplayPort 1 2 fur 4K Monitore sowie die Unterstutzung fur den Xbox One Controller und ForcePad Touchpads Optimierungen fur Thunderbolt bei Apple Geraten 81 Letzte Version war 3 17 8 am 8 Januar 2015Altere Version nicht mehr unterstutzt 3 18 7 Dez 2014 47 971 18 994 096 77 300 64 Aufnahme des OverlayFS Verbesserungen bei Btrfs und F2FS Tunnelung beliebiger Protokolle ist uber UDP ermoglicht Audio Ausgabe mit dem Nouveau Treiber uber DisplayPort Just in time Kompilierung des Extended Berkeley Packet Filter eBPF fur ARM64 der BPF ist nun durch den Syscall bpf allgemein verfugbar Modulparameter konnen als unsicher englisch unsafe markiert werden 82 Dieser LTS Zweig wurde von Sasha Levin betreut die letzte Version war 3 18 140 am 16 Mai 2019Altere Version nicht mehr unterstutzt 3 19 9 Feb 2015 48 424 19 130 604 77 900 63 u a Unterstutzung fur AMDs Heterogeneous System Architecture HSA 83 zudem wurde das Interprozesskommunikationsframework Binder aufgenommen 84 welches ursprunglich fur Android entwickelt wurde und auf OpenBinder aufbaut 85 Letzte Version war 3 19 8 am 11 Mai 2015Altere Version nicht mehr unterstutzt 4 0 12 Apr 2015 48 945 19 312 370 78 500 63 u a Unterstutzung fur Updates im laufenden Betrieb Kernel Live Patching 86 87 Letzte Version war 4 0 9 am 21 Juli 2015Altere Version nicht mehr unterstutzt 4 1 22 Juni 2015 49 457 19 512 485 79 300 70 u a Verschlusselung fur Ext4 Treiber fur NV DIMMs und Schaffung der Grundlagen zur 3D Beschleunigung in virtuellen Maschinen 88 Dieser LTS Zweig wurde von Sasha Levin betreut die letzte Version war 4 1 52 am 28 Mai 2018Altere Version nicht mehr unterstutzt 4 2 30 Aug 2015 50 795 20 311 717 82 000 70 u a Update von UEFI nun aus Linux moglich Unterstutzung der AMD Grafikkarten der Volcanic Islands Generation 89 Letzte Version war 4 2 8 am 15 Dezember 2015Altere Version nicht mehr unterstutzt 4 3 2 Nov 2015 51 570 20 621 444 83 000 63 Unterstutzung fur Skylake und Fiji GPUs 90 IPv6 wird Voreinstellung 91 Letzte Version war 4 3 6 am 19 Februar 2016Altere Version nicht mehr unterstutzt 4 4 10 Jan 2016 52 221 20 862 115 83 300 70 Kernel mit Langzeitunterstutzung 92 Grafiktreiber fur den Raspberry Pi und weitere 3D Grafikbeschleunigungen in KVM fur virtuelle Maschinen Verbesserungen bei RAID und SSDs BPF Aufrufe sind nun auch im Userspace moglich 93 94 Letzte Version war 4 4 302 am 3 Februar 2022Altere Version nicht mehr unterstutzt 4 5 14 Marz 2016 52 916 21 154 545 84 300 63 weitere Besserungen in den 3D Treibern unter anderem durch die Unterstutzung fur PowerPlay und reibungslose Wechsel der Netzwerkverbindungen 95 96 Verbesserungen beim Zugriff auf NFS Server 97 Letzte Version war 4 5 7 am 8 Juni 2016Altere Version nicht mehr unterstutzt 4 6 15 Mai 2016 53 660 21 422 694 85 300 63 u a verbesserte Energieverwaltung durch die Moglichkeit der Taktraten Einstellung bei Tegra X1 GPUs und durch die Freischaltung der Frame Buffer Compression FBC fur Prozessoren der Haswell Architektur und Broadwell des Weiteren wurde das Dateisystem OrangeFS freigeschaltet sowie zusatzliche Werkzeuge zur besseren Fehlererkennung englisch bug hunting 98 99 Letzte Version war 4 6 7 am 16 August 2016Altere Version nicht mehr unterstutzt 4 7 24 Juli 2016 54 400 21 712 846 86 200 70 u a erste Unterstutzung fur neue Radeon Grafikkarten unter dem Decknamen Polaris vier weitere ARM Treiber und Unterstutzung fur Spiele Steuergerate 100 101 zudem bessere SMR Unterstutzung und Beschleunigungen beim Tunneln 102 im Vergleich zum Vorganger 4 6 werden nun rund 500 weitere Hardware Komponenten unterstutzt 103 Letzte Version war 4 7 10 am 22 Oktober 2016Altere Version nicht mehr unterstutzt 4 8 2 Okt 2016 55 503 22 071 048 87 700 70 neben der Unterstutzung neuer Treiber fur Haupt und Grafik Prozessoren von AMD ARM Mali Intel und Nvidia wurde u a das Ubertakten oder Overclocking fur AMD Grafiktreiber und eine neue GPU Virtualisierungstechnik fur Intel Grafiktreiber eingefuhrt des Weiteren wurde das XFS uberarbeitet so dass es auch Datenintegritaten prufen sowie Datendeduplizierung und das Copy On Write Verfahren beherrscht 104 105 Letzte Version war 4 8 17 am 9 Januar 2017Altere Version nicht mehr unterstutzt 4 9 11 Dez 2016 56 223 22 348 356 88 900 70 neben Verbesserungen in der Sicherheit durch besseren Schutz vor Stapeluberlaufen erhalten u a die Treiber fur das XFS eine Shared Data Extents genannte Erweiterung welche auf die bereits im 4 8er Kern eingefuhrte Reverse Mapping Infrastruktur aufsetzt und es kunftig ermoglichen soll dass sich mehrere Dateien einen Daten oder Wert e bereich teilen konnen und dieser auch mehrere Besitzer haben kann zudem wurden erste Unterstutzungen fur den sogenannten Greybus eingearbeitet welcher ursprunglich fur das ehemals von Google entwickelte modulare Smartphone Ara gedacht war und u a von Motorola in einem ihrer Gerate genutzt wird 106 107 Letzte Version war 4 9 337 am 7 Januar 2023Altere Version nicht mehr unterstutzt 4 10 19 Feb 2017 57 172 22 839 541 89 900 71 Verbesserungen beim Schreiben auf Datentrager und Einfuhrung einer schnelleren Fehlererkennung in RAID Systemen zudem wurden u a EFI Zugriffe verbessert und der LED Treiber uleds eingearbeitet 108 sowie ein Verfahren zur Grafikbeschleunigung virtueller Maschinen eingefuhrt 109 bei Intel Prozessoren kann der Cache zwischen Prozessen aufgeteilt werden die Funktionen fur die ARM64 Architektur wurden ausgebaut Uberarbeitungen beim Routing das Dateisystem UBIFS wurde um eine optionale Verschlusselung erganzt wahrend logfs entfernt wurde 110 Letzte Version war 4 10 17 am 20 Mai 2017Altere Version nicht mehr unterstutzt 4 11 1 Mai 2017 57 964 23 137 284 91 000 71 Verringerung des Stromverbrauches von NVMe SSDs durch die Stromspartechnik APST Unterstutzung fur selbstverschlusselnde SSDs Verbesserungen bei der Abfrage von Metadaten fur Verzeichnisse und Dateien Uberarbeitung der in 4 10 eingefuhrten Funktion Intel Turbo Boost Max 3 0 Verbesserungen bei der Grafikbeschleunigung virtueller Maschinen fur AMD Grafikeinheiten 111 Anpassungen fur ext4 um die Nutzung als Wegwerfdateisystem zu verbessern 112 Letzte Version war 4 11 12 am 21 Juli 2017Altere Version nicht mehr unterstutzt 4 12 2 Juli 2017 59 808 24 173 535 99 000 62 Einfuhrung des Scheduler Budget Fair Queueing BFQ fur bessere Performance bei Datentragerzugriffen Unterstutzung von AMDs Grafikprozessor Radeon Vega 113 Letzte Version war 4 12 14 am 20 September 2017Altere Version nicht mehr unterstutzt 4 13 3 Sep 2017 60 543 24 767 008 100 000 63 Performancegewinn im Protokoll HTTPS Verzeichnisse im Ext4 Dateisystemen konnen nun bis zu 2 Milliarden Eintrage enthalten 114 Letzte Version war 4 13 16 am 24 November 2017Altere Version noch unterstutzt 4 14 12 Nov 2017 61 258 25 041 165 97 000 70 LTS Version 115 Unterstutzung bis zu 4096 Terabyte Arbeitsspeicher 116 Aktuelle Version 4 14 329 am 8 November 2023Altere Version nicht mehr unterstutzt 4 15 28 Jan 2018 62 271 25 364 680 100 000 78 Einbau diverser Schutzmechanismen vor Meltdown und Spectre der Treiber Amdgpu unterstutzt nun AMDs Vega Grafikkarten besser 117 Letzte Version war 4 15 18 am 19 April 2018Altere Version nicht mehr unterstutzt 4 16 1 Apr 2018 62 883 25 558 670 100 606 63 Letzte Version war 4 16 18 am 26 Juni 2018Altere Version nicht mehr unterstutzt 4 17 3 Juni 2018 61 332 25 379 428 99 772 63 HDCP Unterstutzung bei Intel CPUs mit integriertem Grafikprozessor erste Gegenmassnahmen gegen Spectre v4 Speculative Store Bypass Entfernung Architektursupport Blackfin AXIS CRIS und 6 weiterer 118 Letzte Version war 4 17 19 am 24 August 2018Altere Version nicht mehr unterstutzt 4 18 12 Aug 2018 60 973 25 280 736 101 782 70 Vorarbeiten fur leistungsgesteigerte Firewall Bpfilter Unterstutzung fur GPU von Kaby Lake G und der angekundigten Vega20 Erster Support fur Qualcomms Snapdragon 845 Prozessor 119 Letzte Version war 4 18 20 am 21 November 2018Altere Version noch unterstutzt 4 19 22 Okt 2018 61 700 25 588 319 103 117 71 LTS Version neuen Code of Conduct fur Entwickler fest in die Kernel Dokumentation aufgenommen 120 Unterstutzung des neuen Wlan Standards 802 11ax Performanceverbesserung der SATA Treiber 121 Aktuelle Version 4 19 298 am 8 November 2023Altere Version nicht mehr unterstutzt 4 20 23 Dez 2018 62 446 25 955 384 104 258 62 Amdgpu Treiber unterstutzt neue GPUs von AMD Behebung der Sicherheitslucke fur die zweite Variante von Spectre 122 Letzte Version war 4 20 17 am 19 Marz 2019Altere Version nicht mehr unterstutzt 5 0 3 Marz 2019 63 135 26 211 072 102 776 70 u a neu hinzugekommen ist der Support fur Freesync von AMD 123 Letzte Version war 5 0 21 am 4 Juni 2019Altere Version nicht mehr unterstutzt 5 1 6 Mai 2019 63 873 26 459 776 101 000 63 Datentrager konnen nun uber asynchronem I O AIO angesprochen werden 124 Letzte Version war 5 1 21 am 28 Juli 2019Altere Version nicht mehr unterstutzt 5 2 7 Juli 2019 64 587 26 552 127 102 000 63 u a Verzeichnisse in Ext4 konnen nun auch case insensitive genutzt werden die Performance von Meltdown und Spectre v2 Patches wurde optimiert 125 Letzte Version war 5 2 21 am 11 Oktober 2019Altere Version nicht mehr unterstutzt 5 3 15 Sep 2019 65 261 27 141 312 108 500 70 u a Unterstutzung fur neue AMD Navi 10 GPUs und Zhaoxin x86 CPUs einige Neuerungen fur Effizienzverbesserungen Support fur umwait Instruktionen Intel Speed Select Utilization Clamping im Scheduler 16 Millionen weitere IPv4 Adressen aus dem 0 0 0 0 8 Bereich werden verfugbar gemacht 126 Letzte Version war 5 3 18 am 18 Dezember 2019Altere Version noch unterstutzt 5 4 24 Nov 2019 65 701 27 538 212 109 400 70 LTS Version Unterstutzung fur Microsofts exFAT Dateisystem Integration des Kernel Lockdown Features Support fur weitere AMD GPU APU Produkte Navi 12 14 Arcturus Renoir verbesserte Performance fur Host Dateisystemzugriffe aus einer virtuellen Maschine mit virtio fs 127 Aktuelle Version 5 4 260 am 8 November 2023Altere Version nicht mehr unterstutzt 5 5 27 Jan 2020 66 493 27 854 754 108 100 63 u a Grundlagen fur den zukunftigen Support der VPN Technik WireGuard gelegt anfangliche Unterstutzung des Raspberry Pi 4 modernisierter Code fur die Lastverteilung des Schedulers mit KUnit wurde ein Framework fur Modultests integriert Btrfs erhalt neue RAID 1 und Hash Algorithmen verbesserte Performance und oder Stabilitat dank Mulitchannel Support fur CIFS SMB die Temperatur von NVMe Laufwerken kann vom Kernel ausgelesen und bereitgestellt werden 128 Letzte Version war 5 5 19 am 21 April 2020Altere Version nicht mehr unterstutzt 5 6 29 Marz 2020 67 337 28 169 797 109 200 63 u a WireGuard wird vollstandig unterstutzt weiter ausgebaut wurde der Support des Raspberry Pi 4 PCIe Controller erste Bausteine fur die USB4 Unterstutzung aufgenommen der k10temp Treiber ubermittelt nun Temperatur Stromstarke und Spannungswerte fur Zen CPUs dev random liefert Zufallszahlen auch bei leeren Entropiequellen wenn der Cryptographic Random Number Generator CRNG einmalig initialisiert wurde Programme die Zufallszahlen auf diese Weise anfordern werden so nicht mehr blockiert Linux als Gastsystem einer VirtualBox VM erlaubt dank des eingepflegten VirtualBox Shared Folder Treibers vboxsf eine effiziente Einbindung von Verzeichnissen des Hostsystems erstmals sind alle Voraussetzungen zur Bewaltigung des Jahr 2038 Problems fur 32 Bit Betriebssysteme erfullt 129 130 Letzte Version war 5 6 19 am 17 Juni 2020Altere Version nicht mehr unterstutzt 5 7 31 Mai 2020 67 939 28 442 333 110 038 63 Letzte Version war 5 7 19 am 27 August 2020Altere Version nicht mehr unterstutzt 5 8 2 Aug 2020 69 327 28 994 351 111 776 63 Letzte Version war 5 8 18 am 1 November 2020Altere Version nicht mehr unterstutzt 5 9 11 Okt 2020 69 972 29 461 217 112 796 70 Letzte Version war 5 9 16 am 21 Dezember 2020Altere Version noch unterstutzt 5 10 13 Dez 2020 70 602 29 733 599 113 869 63 LTS Version Aktuelle Version 5 10 200 am 8 November 2023Altere Version nicht mehr unterstutzt 5 11 14 Feb 2021 71 238 30 340 055 114 857 63 Letzte Version war 5 11 22 am 19 Mai 2021Altere Version nicht mehr unterstutzt 5 12 25 Apr 2021 71 463 30 545 205 115 339 70 Letzte Version war 5 12 19 am 20 Juli 2021Altere Version nicht mehr unterstutzt 5 13 28 Juni 2021 72 184 30 940 247 63 Letzte Version war 5 13 19 am 18 September 2021Altere Version nicht mehr unterstutzt 5 14 29 Aug 2021 72 828 31 479 754 117 845 63 Support fur Raspberry Pi 400 Verbesserte Unterstutzung von USB 4 Grundlagen fur Intel Alder Lake Prozessoren Letzte Version war 5 14 21 am 21 November 2021Altere Version noch unterstutzt 5 15 31 Okt 2021 73 575 31 812 242 119 045 63 LTS Version bessere Unterstutzung fur NTFS Aktuelle Version 5 15 138 am 8 November 2023Altere Version nicht mehr unterstutzt 5 16 9 Jan 2022 74 265 32 233 528 124 527 70 Letzte Version war 5 16 20 am 13 April 2022Altere Version nicht mehr unterstutzt 5 17 20 Marz 2022 74 993 32 488 489 125 377 70 Letzte Version war 5 17 15 am 14 Juni 2022Altere Version nicht mehr unterstutzt 5 18 22 Mai 2022 75 837 33 235 430 126 753 63 Mit dieser Version wechselt der Kernel erstmals in der Geschichte die C Sprachfassung statt bisher C89 basiert Linux ab Version 5 18 auf dem C Standard C11 von 2011 131 Letzte Version war 5 18 19 am 21 August 2022Altere Version nicht mehr unterstutzt 5 19 31 Juli 2022 76 916 34 035 647 128 498 70 Letzte Version war 5 19 17 am 24 Oktober 2022Altere Version nicht mehr unterstutzt 6 0 2 Okt 2022 77 968 35 137 016 130 752 63 Letzte Version war 6 0 19 am 12 Januar 2023Altere Version noch unterstutzt 6 1 11 Dez 2022 78 644 35 548 350 131 584 70 LTS Version Aktuelle Version 6 1 62 am 8 November 2023Altere Version nicht mehr unterstutzt 6 2 19 Feb 2023 79 455 35 868 349 133 234 70 Letzte Version war 6 2 16 am 17 Mai 2023Altere Version nicht mehr unterstutzt 6 3 23 Apr 2023 79 561 36 007 945 133 735 63 Letzte Version war 6 3 13 am 11 Juli 2023Altere Version nicht mehr unterstutzt 6 4 25 Juni 2023 80 282 36 416 957 134 566 63 Letzte Version war 6 4 16 am 13 September 2023Altere Version noch unterstutzt 6 5 27 Aug 2023 86 048 37 336 785 138 412 63 Aktuelle Version 6 5 11 am 8 November 2023Aktuelle Version 6 6 30 Okt 2023 140 509 64 LTS Version Aktuelle Version 6 6 1 am 8 November 2023Zukunftige Version 6 7 2023 Zukunftige Version 6 7 rc1 am 13 November 2023Legende Altere Version nicht mehr unterstutztAltere Version noch unterstutztAktuelle VersionAktuelle VorabversionZukunftige Version Anmerkungen 132 133 134 135 a Dateien gezahlt mit find type f not regex git wc l b Quelltextzeilen gezahlt mit find type f not regex git xargs cat wc l c Grosse in kB bezogen auf ein mit gzip komprimiertes tar Archiv tar gz ab Version 3 2 im Format tar xz 20 d Der genannte Entwicklungszeitraum bezieht sich lediglich auf die Zusammenfuhrung bereits entwickelter Programmteile welche selbst teilweise mehrere Jahre zuvor bis zur Zusammenfuhrung entwickelt wurden Neuerungen im Kernel 2 6 Bearbeiten Die Kernel Reihe 2 6 wurde ab Dezember 2001 auf Basis der damaligen 2 4er Reihe entwickelt und wies umfangreiche Neuerungen auf Fur die Entwicklung war der neue Quelltext ubersichtlicher und leichter zu pflegen wahrend Anwender durch die Uberarbeitung des Prozess Schedulers sowie des I O Bereiches und von geringeren Latenzzeiten profitierten 136 Dies wurde durch eine Reihe von Massnahmen erreicht die im Folgenden aufgezeigt werden Neue Prozess Scheduler Bearbeiten In einem Multitasking fahigen Betriebssystem muss es eine Instanz geben die den Prozessen die laufen wollen Rechenzeit zuteilt Diese Instanz bildet der Prozess Scheduler Seit dem Erscheinen von Linux 2 6 wurde mehrfach grundlegend am Scheduler gearbeitet Fur die ersten Kernel 2 6 war von Ingo Molnar ein gegenuber Linux 2 4 ganz neuer Scheduler konzipiert und implementiert worden der O 1 Scheduler Dieser erhielt seinen Namen weil die relevanten Algorithmen auf denen der Scheduler basierte die Zeitkomplexitat O 1 displaystyle O 1 nbsp haben Dies bedeutet dass die vom Scheduler fur eigene Aufgaben benotigte Prozessorzeit unabhangig von der Anzahl der verwalteten Prozesse bzw Threads ist Insbesondere wurde etwa auf das Durchsuchen aller Prozesse nach dem momentan wichtigsten Prozess verzichtet Der O 1 Scheduler arbeitete auch bei sehr vielen Prozessen uberaus effizient und benotigte selbst sehr wenig Rechenzeit Er verwendete prinzipiell zwei verkettete Listen in denen die Prozesse eingetragen waren die noch laufen wollten und diejenigen die bereits gelaufen sind Wenn alle Prozesse in der zweiten Liste standen wurden die Datenfelder getauscht und das Spiel begann von neuem Der Scheduler war daruber hinaus so ausgelegt dass Prozesse die grosse Mengen Rechenzeit in Anspruch nehmen wollen gegenuber interaktiven Prozessen benachteiligt werden wenn beide zur gleichen Zeit laufen wollen Interaktive Prozesse benotigen in der Regel nur sehr wenig Rechenzeit sind dafur aber sehr zeitkritisch so will der Benutzer beispielsweise nicht lange auf eine Reaktion der grafischen Oberflache warten Der O 1 Scheduler besass Heuristiken um festzustellen ob ein Prozess interaktiv ist oder die CPU eher lange belegt Der interne Takt des Kernels wurde ab dem Kernel 2 6 von 100 Hz auf 1000 Hz erhoht das heisst die kurzestmogliche Lange einer Zeitscheibe betragt nun eine Millisekunde Auch hiervon profitieren besonders die interaktiven Prozesse da sie fruher wieder an der Reihe sind Da dies aber zu einer erhohten CPU Last und somit zu einem grosseren Stromverbrauch fuhrt entschied man den Takt ab dem Kernel 2 6 13 auf 250 Hertz voreinzustellen Bei der Konfiguration des Kernels sind jedoch auch noch die Werte 100 300 und 1000 Hertz wahlbar Mit der Kernelversion 2 6 23 wurde im Oktober 2007 der O 1 Scheduler durch einen Completely Fair Scheduler CFS ersetzt der ebenfalls von Ingo Molnar entwickelt wurde Der CFS als gegenwartig einziger im Hauptentwicklungszweig verfugbarer Scheduler ist unter den Kernel Entwicklern teilweise umstritten da er seinen Schwerpunkt auf Skalierbarkeit auch bei Servern mit vielen Prozessorkernen legt Entwickler wie Con Kolivas sind der Meinung dass unter dieser Schwerpunktsetzung sowie einigen Designentscheidungen im CFS die Leistung auf typischen Desktop Systemen leide 137 Praemptiver Kernel Bearbeiten Der Kernel ist ab Version 2 6 in den meisten Funktionen praemptiv Selbst wenn das System gerade im Kernel Modus Aufgaben ausfuhrt kann dieser Vorgang durch einen Prozess aus dem User Modus unterbrochen werden Der Kernel macht dann weiter wenn der Usermodus Prozess seine Zeitscheibe aufgebraucht hat oder selbst eine neue Zeitplanung englisch Re Schedule anfordert also dem Zeitplaner englisch Scheduler mitteilt dass er einen anderen Task ausfuhren kann Dies funktioniert bis auf einige Kernel Funktionen die atomar nicht unterbrechbar ablaufen mussen sehr gut und kommt ebenfalls der Interaktivitat zugute Zugriffskontrolllisten Bearbeiten Mit dem Kernel 2 6 werden fur Linux erstmals Zugriffskontrolllisten englisch access control lists nativ eingefuhrt Diese sehr feinkornige Rechteverwaltung ermoglicht es vor allem Systemadministratoren die Rechte auf einem Dateisystem unabhangig vom Gruppen und Nutzermodell zu gestalten und dabei faktisch beliebig viele spezielle Rechte pro Datei zu setzen Die mangelnde Unterstutzung von Zugriffskontrolllisten von Linux wurde vorher als massive Schwache des Systems im Rahmen der Rechteverwaltung und der Moglichkeiten zur sicheren Konfiguration gesehen Die Unterstutzung von Zugriffskontrolllisten funktioniert dabei mit den Dateisystemen ext2 ext3 jfs und XFS nativ Inotify Bearbeiten Mit dem Kernel 2 6 13 hielt erstmals eine Inotify genannte Funktion Einzug in den Kernel Diese ermoglicht eine andauernde Uberwachung von Dateien und Verzeichnissen wird eines der uberwachten Objekte geandert oder ein neues Objekt im Uberwachungsraum erschaffen gibt Inotify eine Meldung aus die wiederum andere Programme zu definierten Tatigkeiten veranlassen kann Dies ist insbesondere fur Such und Indexierungsfunktionen der Datenbestande von entscheidender Bedeutung und ermoglicht erst den sinnvollen Einsatz von Desktop Suchmaschinen wie Strigi oder Meta Tracker Ohne eine solche Benachrichtigungsfunktion des Kernels musste ein Prozess die zu uberwachende Datei oder das zu uberwachende Verzeichnis in bestimmten Zeitintervallen auf Anderungen uberprufen was im Gegensatz zu Inotify zusatzliche Performance Einbussen mit sich bringen wurde Weitere wichtige Anderungen Bearbeiten Soweit es moglich ist wurde in Linux 2 6 die Maximalzahl fur bestimmte Ressourcen angehoben Die Anzahl von moglichen Benutzern und Gruppen erhohte sich von 65 000 auf uber 4 Milliarden ebenso wie die Anzahl der Prozess IDs von 32 000 auf 1 Milliarde und die Anzahl der Gerate Major Minor Nummern Weitere leistungssteigernde Massnahmen betrafen die I O Scheduler das Threading mit der neuen Native POSIX Thread Library und den Netzwerk Stack der nun ebenfalls in den meisten Tests O 1 skaliert ist Ausserdem wurde fur die Verwaltung der I O Geratedateien das fruher genutzte devfs durch das neuere udev ersetzt was viele Unzulanglichkeiten wie zum Beispiel ein zu grosses dev Verzeichnis beseitigt Ausserdem kann so eine einheitliche und konsistente Geratebenennung erfolgen die bestandig bleibt was vorher nicht der Fall war Lizenzbesonderheiten BearbeitenProprietarer Code und Freiheitsbegriff Bearbeiten Die heute von Linus Torvalds herausgegebene Fassung des Kernels enthalt proprietare Objekte in Maschinensprache BLOBs und ist daher nicht mehr ausschliesslich Freie Software Richard Stallman bezweifelt sogar dass sie legal kopiert werden darf da diese BLOBs im Widerspruch zur GPL stunden und die Rechte aus der GPL daher erloschen wurden 138 Resultierend daraus rat die Free Software Foundation deshalb dazu nur BLOB freie Versionen von Linux einzusetzen bei denen diese Bestandteile entfernt wurden Linux Distributionen mit dem Kernel Linux libre erfullen diesen Anspruch Der Kernel unter der GPL 2 Bearbeiten Die bei GPL Software ubliche Klausel dass statt der Version 2 der GPL auch eine neuere Version verwendet werden kann fehlt beim Linux Kernel 139 Die Entscheidung ob die im Juni 2007 erschienene Version 3 der Lizenz fur Linux verwendet wird ist damit nur mit Zustimmung aller Entwickler moglich In einer Umfrage haben sich Torvalds und die meisten anderen Entwickler fur die Beibehaltung der Version 2 der Lizenz ausgesprochen Literatur BearbeitenWolfgang Mauerer Linux Kernelarchitektur Konzepte Strukturen und Algorithmen von Kernel 2 6 Hanser Fachbuchverlag Munchen u a 2003 ISBN 3 446 22566 8 Robert Love Linux Kernel Handbuch Leitfaden zu Design und Implementierung von Kernel 2 6 Addison Wesley Munchen u a 2005 ISBN 3 8273 2204 9 Jonathan Corbet Alessandro Rubini und Greg Kroah Hartman Linux Device Drivers 3 Auflage O Reilly 2005 ISBN 0 596 00590 3 Weblinks Bearbeiten nbsp Commons Linux Kernel Album mit Bildern Videos und Audiodateien Englisch The Linux Kernel Archives offizielle Website Elixir Cross Referencer Interactive Linux Kernel Map Linux Kernel Newbies Infos fur angehende Kernel Programmierer Oldlinux org eine Sammlung historischer Kernel Linux 0 01 News Seite zu Weiterentwicklungen des 0 01 Kernels fur neuere GCC Versionen Anatomy of the Linux kernel IBM am 6 Juni 2007Deutsch Linux Kernel Golem Linux Kernel Heise Linux Kernel Download ComputerBaseEinzelnachweise Bearbeiten COPYING Abgerufen am 18 August 2017 englisch Reiko Kaps Linus Torvalds kritisiert den zweiten GPLv3 Entwurf In Heise online 28 Juli 2006 Abgerufen am 30 Oktober 2012 GNU Linux libre Abgerufen am 18 August 2017 englisch Greg Kroah Hartman Linux 6 6 2 20 November 2023 abgerufen am 20 November 2023 Linus Torvalds RELEASE NOTES FOR LINUX v0 12 In kernel org Abgerufen am 22 April 2017 englisch Linus Torvalds gibt Linux 6 0 frei auf heise de vom 25 Oktober 2022 abgerufen am 11 Dezember 2022 index kernel git torvalds linux git a b c UNIX Linux History Abgerufen am 11 Marz 2017 englisch PPC Linux for NuBus Power Macs sourceforge net abgerufen am 12 April 2014 englisch Katherine Noyes Linux 3 8 Hello 2013 Goodbye 386 Chips In Linux News Linux Foundation 20 Februar 2013 abgerufen am 14 April 2013 englisch Andres Calderon Nelson Castillo Why ARM s EABI matters LinuxDevices com 14 Mai 2007 abgerufen am 10 April 2019 englisch Pressemitteilung OSDL Developer s Certificate of Origin 2004 Linux Kernel Archive RFD Explicitly documenting patch submission 23 Mai 2004 englisch Thorsten Leemhuis Neue Kernel Serie mit Linux 2 6 11 1 gestartet In Heise online 7 Marz 2005 Abgerufen am 26 April 2015 Linus Torvalds Linux 3 0 rc1 Nicht mehr online verfugbar thread gmane org 30 Mai 2011 archiviert vom Original am 30 November 2016 abgerufen am 16 November 2014 englisch nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot thread gmane org Linus Torvalds index kernel git torvalds linux git git kernel org 23 Februar 2015 abgerufen am 23 Februar 2015 englisch Linus Torvalds Linus Torvalds Google 13 Februar 2015 abgerufen am 23 Februar 2015 englisch Linus Torvalds Linux Kernel Mailing List Announcement of Kernel 5 19 lore kernel org 31 Juli 2022 abgerufen am 11 April 2023 englisch Active kernel releases kernel org abgerufen am 1 November 2021 englisch a b c The Linux Kernel Archives kernel org abgerufen am 6 September 2010 englisch Versionsubersicht bei kernel org Oliver Diedrich Happy Birthday Tux In Heise online 25 August 2006 Abgerufen am 24 Oktober 2014 a b c d e f Dr Oliver Diedrich Die Woche Linux wird 3 0 In Heise online 1 Juni 2011 Abgerufen am 26 April 2015 Andreas Jaeger Large File Support in Linux SUSE GmbH 15 Februar 2015 abgerufen am 26 November 2022 Oliver Diedrich Neuer Firewall Code fur den Linux Kernel In Heise online 21 Oktober 2013 Abgerufen am 28 Oktober 2013 LKML Willy Tarreau Linux 2 4 37 10 2 4 EOL plans Mitteilung bei der Linux Kernel Mailing List vom 6 September 2010 abgerufen am 16 September 2012 englisch Linux Kernel 2 6 13 veroffentlicht Thorsten Leemhuis bei Heise am 29 August 2005 Thorsten Leemhuis Die Woche Xen hat KVM vorbeiziehen lassen In Heise online 16 Juni 2011 Abgerufen am 24 Oktober 2014 Jorg Thoma Linux Kernel Updates fur Long Term Zweige Golem de 4 Mai 2011 abgerufen am 24 Oktober 2014 Clever schachteln Das neue Linux Dateisystem Btrfs im Detail Admin Magazin Ausgabe 04 2009 Dr Oliver Diedrich Das Dateisystem Btrfs In Heise online 7 Juli 2009 Abgerufen am 14 August 2016 Thorsten Leemhuis Kernel Log Entwicklung von 2 6 39 angelaufen In Heise online 22 Marz 2011 Abgerufen am 26 April 2015 a b Thorsten Leemhuis Hauptentwicklungsphase von Linux 3 2 abgeschlossen In Heise online 8 November 2011 Abgerufen am 26 April 2015 Thorsten Leemhuis Die Neuerungen von Linux 2 6 34 In Heise online 17 Mai 2010 S 3 Linux 2 6 34 Dateisysteme Netzwerk Abgerufen am 30 November 2015 Thorsten Leemhuis Kernel Log Was 2 6 34 bringt 2 Dateisysteme In Heise online 23 April 2010 Abgerufen am 9 Dezember 2016 Thorsten Leemhuis Kernel Log Cluster Dateisystem Ceph in 2 6 34 Kernel und KVM Vortrage von den CLT2010 In Heise online 22 Marz 2010 Abgerufen am 9 Dezember 2016 Thorsten Leemhuis Kernel Log Was 2 6 34 bringt 3 Grafik In Heise online 5 Mai 2010 Abgerufen am 9 Dezember 2016 Oliver Diedrich Entwicklung von Linux 2 6 35 lauft an In Heise online 31 Mai 2010 Abgerufen am 9 Dezember 2016 Thorsten Leemhuis Eine Flut neuer Stable Kernel und ein Ausblick auf Linux 2 6 35 In Heise online 6 Juli 2010 Abgerufen am 9 Dezember 2016 Andi Kleen The longterm Linux 2 6 35 14 kernel is released lkml org 1 August 2011 abgerufen am 7 Mai 2012 englisch Thorsten Leemhuis Die Neuerungen von Linux 2 6 36 In Heise online 21 Oktober 2010 Abgerufen am 17 August 2015 Thorsten Leemhuis Kernel Log 2 6 36 neue Stable Kernel frische Treiber In Heise online 11 August 2010 Abgerufen am 17 August 2015 Thorsten Leemhuis Hauptentwicklungsphase des Linux Kernels 2 6 36 abgeschlossen In Heise online 16 August 2010 Abgerufen am 17 August 2015 Thorsten Leemhuis Hauptentwicklungsphase des Linux Kernel 2 6 37 abgeschlossen In Heise online 1 November 2010 Abgerufen am 15 Februar 2015 Thorsten Leemhuis Kernel Log Wunderpatch integriert verbesserte Grafiktreiber am Start In Heise online 7 Januar 2011 Abgerufen am 10 Marz 2015 Thorsten Leemhuis Kernel Log Was 2 6 38 bringt 6 Treiber In Heise online 9 Marz 2011 Abgerufen am 15 Februar 2015 Thorsten Leemhuis Kernel Log Erster Release Candidate von Linux 2 6 39 In Heise online 30 Marz 2011 Abgerufen am 8 Februar 2015 Thorsten Leemhuis Die Neuerungen von Linux 2 6 39 In Heise online 19 Mai 2011 Abgerufen am 8 Februar 2015 Arnd Bergmann BKL That s all folks git kernel org 25 Januar 2011 abgerufen am 18 August 2017 Thorsten Leemhuis Erste Vorabversion von Linux 3 0 erschienen In Heise online 30 Mai 2011 Abgerufen am 24 Januar 2015 Jorg Thoma Kernel Linux 3 0 ist fertig golem de 22 Juli 2011 abgerufen am 6 Januar 2015 Thorsten Leemhuis Linux Kernel 3 0 freigegeben In Heise online 22 Juli 2011 Abgerufen am 6 Januar 2015 Thorsten Leemhuis Kernel Log Was 3 1 bringt 3 Architektur Infrastruktur Virtualisierung In Heise online 17 September 2011 Abgerufen am 6 Januar 2015 Mirko Dolle Android Treiber sollen in Kernel 3 3 einfliessen In Heise online 23 Dezember 2011 Abgerufen am 16 November 2014 Jorg Thoma Stromsparoption RC6 in Linux Kernel funktionstuchtig golem de 15 Februar 2012 abgerufen am 21 Mai 2012 Thorsten Leemhuis Kernel Log Was 3 3 bringt 4 Treiber In Heise online 8 Marz 2012 Abgerufen am 21 Mai 2012 Thorsten Leemhuis Die Neuerungen von Linux 3 4 In Heise online 21 Mai 2012 Abgerufen am 21 Mai 2012 Thorsten Leemhuis Kernel Log Was 3 5 bringt 1 Netzwerk In Heise online 25 Juni 2012 Abgerufen am 27 Juni 2012 Thorsten Leemhuis Kernel Log Entwicklung von Linux 3 6 lauft In Heise online 2 August 2012 Abgerufen am 11 Mai 2014 Thorsten Leemhuis Linux Kernel 3 7 veroffentlicht In Heise online 11 Dezember 2012 Abgerufen am 13 Dezember 2012 Thorsten Leemhuis Kernel Log Was 3 8 bringt 1 Dateisysteme und Storage In Heise online 21 Januar 2013 Abgerufen am 16 Februar 2013 Thorsten Leemhuis Kernel Log Was 3 8 bringt 2 Infrastruktur In Heise online 8 Februar 2013 Abgerufen am 16 Februar 2013 a b Jorg Thoma Linux Kernel Torvalds schliesst Merge Fenster fur Linux 3 9 golem de 4 Marz 2013 abgerufen am 6 Marz 2013 Meta SoC Processors Memento vom 15 Marz 2013 im Internet Archive Seite bei Imagination Technologies abgerufen am 7 Marz 2013 englisch DesignWare ARC 700 Processor Core Family Seite bei Synopsys abgerufen am 7 Marz 2013 englisch Hans Joachim Baader Linux Kernel 3 9 tritt in die Testphase ein Pro Linux 4 Marz 2013 abgerufen am 7 Marz 2013 Thorsten Leemhuis Kernel Log Was 3 10 bringt 4 Treiber In Heise online 28 Juni 2013 Abgerufen am 10 Juli 2013 Thorsten Leemhuis Die Neuerungen von Linux 3 9 In Heise online 29 April 2013 S 3 Fazit Trends Statistik Abgerufen am 10 Juli 2013 Thorsten Leemhuis Die Neuerungen von Linux 3 10 Heise 1 Juli 2013 abgerufen am 10 Juli 2013 Thorsten Leemhuis Kernel Log Was 3 11 bringt 2 Infrastruktur Heise 19 August 2013 abgerufen am 20 August 2013 Thorsten Leemhuis Linux for Workgroups Funktionsumfang von Linux 3 11 steht Heise 15 Juli 2013 abgerufen am 13 Marz 2018 Thorsten Leemhuis Linux 3 12 bringt Optimus und SYN Proxy Unterstutzung Heise 17 September 2013 abgerufen am 18 September 2013 Thorsten Leemhuis Die Neuerungen von Linux 3 12 Netzwerk Heise 4 November 2013 abgerufen am 6 November 2013 Thorsten Leemhuis Kernel Log Was 3 12 bringt 1 Dateisysteme amp Storage Heise 8 Oktober 2013 abgerufen am 6 November 2013 Thorsten Leemhuis Die Neuerungen von Linux 3 13 Heise online 20 Januar 2014 abgerufen am 20 Januar 2014 Thorsten Leemhuis Kernel Log Was 3 13 bringt 5 Grafiktreiber Heise online 10 Januar 2014 abgerufen am 20 Januar 2014 Thorsten Leemhuis Kernel Log Was 3 13 bringt 1 Dateisysteme und Storage Heise online 10 Dezember 2013 abgerufen am 20 Januar 2014 a b Jorg Thoma Prozessfristen Linux 3 14 erhalt Deadline Scheduler golem de 31 Marz 2014 abgerufen am 31 Marz 2014 Peter Siering Xen 4 4 virtuelle Maschinen fur ARM heise de 10 Marz 2014 abgerufen am 11 Marz 2014 Thorsten Leemhuis Kernel Log Was 3 15 bringt 1 Dateisysteme und Storage heise de 6 Mai 2014 abgerufen am 6 Mai 2014 Thorsten Leemhuis Die Neuerungen von Linux 3 16 heise de 4 August 2014 abgerufen am 17 August 2014 Thorsten Leemhuis Die Neuerungen von Linux 3 17 heise de 6 Oktober 2014 abgerufen am 10 November 2014 Hans Joachim Baader Linux Kernel 3 18 freigegeben Pro Linux 8 Dezember 2014 abgerufen am 8 Dezember 2014 Thorsten Leemhuis Linux 3 19 freigegeben HSA Support fur AMD Chips Heise online 9 Februar 2015 abgerufen am 9 Februar 2015 Jorg Thoma Linux 3 19 Mehr fur die Grafik und fur das Netzwerk golem de 9 Februar 2015 abgerufen am 9 Februar 2015 Zeitgemasse Linux IPC Linux Magazin Ausgabe 02 2015 Thorsten Leemhuis Linux Kernel macht Versionssprung auf 4 0 heise de 23 Februar 2015 abgerufen am 23 Februar 2015 Jorg Thoma Version 4 0 patcht sich selbst im laufenden Betrieb golem de 23 Februar 2015 abgerufen am 23 Februar 2015 Thorsten Leemhuis Linux 4 1 freigegeben Ext4 verschlusselt jetzt selbst heise de 22 Juni 2015 abgerufen am 22 Juni 2015 Thorsten Leemhuis Linux 4 2 rc1 Neuer Grafiktreiber von AMD integriert heise de 6 Juli 2015 abgerufen am 19 Juli 2015 Thorsten Leemhuis Linux Kernel 4 3 wird neue AMD und Intel Grafikprozessoren unterstutzen heise de 5 September 2015 abgerufen am 15 September 2015 Thorsten Leemhuis Linux 4 3 wird IPv6 Unterstutzung standardmassig nutzen heise de 14 September 2015 abgerufen am 15 September 2015 Greg Kroah Hartman The Linux 4 4 kernel will be the next LTS long term support release Greg Kroah Hartman 28 Oktober 2015 abgerufen am 2 November 2015 englisch Thorsten Leemhuis Linux 4 4 freigegeben Neue Grafiktreiber und Optimierungen fur SSDs heise de 11 Januar 2016 abgerufen am 13 August 2016 Sebastian Gruner Kernel Linux 4 4 erscheint mit Grafiktreiber fur Raspberry Pi golem de 11 Januar 2016 abgerufen am 13 August 2016 Thorsten Leemhuis Linux 4 5 Verbesserte 3D Treiber und reibungslose Verbindungswechsel heise de 25 Januar 2016 abgerufen am 13 August 2016 Ferdinand Thommes Kernel Linux 4 5 rc1 wertet AMDGPU mit Powerplay auf golem de 11 Januar 2016 abgerufen am 13 August 2016 Thorsten Leemhuis Die Neuerungen von Linux 4 5 heise de 14 Marz 2016 abgerufen am 15 Mai 2016 Ferdinand Thommes Kernel Linux 4 6 rc1 mit neuem Dateisystem OrangeFS golem de 28 Marz 2016 abgerufen am 13 August 2016 Thorsten Leemhuis Linux 4 6 wird 3D Beschleunigung aktueller GeForce Chips unterstutzen heise de 29 Marz 2016 abgerufen am 15 Mai 2016 Thorsten Leemhuis Linux 4 7 soll AMDs neue Radeon Grafikkarten unterstutzen heise de 30 Mai 2016 abgerufen am 2 Juli 2016 Ferdinand Thommes LLinux 4 7 rc1 unterstutzt AMDs Polaris golem de 30 Mai 2016 abgerufen am 12 Dezember 2016 Thorsten Leemhuis Linux 4 7 vermeidet Netzwerk Latenzen und unterstutzt SMR Festplatten besser heise de 15 Juni 2016 abgerufen am 15 Juni 2016 Thorsten Leemhuis Linux 4 7 freigegeben RX 480 Treiber und verbesserte Sicherheit heise de 25 Juli 2016 abgerufen am 18 August 2016 Thorsten Leemhuis Linux 4 8 bringt Treiber fur neue ARM Intel und Nvidia Grafikprozessoren heise de 8 August 2016 abgerufen am 16 August 2016 Jorg Thoma Betriebssysteme Linux 4 8 ubertaktet AMD Grafikkarten golem de 8 August 2016 abgerufen am 16 August 2016 Thorsten Leemhuis Linux 4 9 wird Sicherheit verbessern und neue Treiber bringen heise de 17 Oktober 2016 abgerufen am 18 Oktober 2016 Ferdinand Thommes Kernel Linux 4 9rc1 erscheint mit Protokoll fur Project Ara Module golem de 17 Oktober 2016 abgerufen am 18 Oktober 2016 Hans Joachim Baader Erste Vorschau auf Linux Kernel 4 10 pro linux de 26 Dezember 2016 abgerufen am 5 November 2017 Thorsten Leemhuis Linux 4 10 Neue Wege zur Grafikbeschleunigung in virtuellen Maschinen heise de 17 Januar 2017 abgerufen am 5 November 2017 Hans Joachim Baader Linux Kernel 4 10 freigegeben In pro linux de 19 Februar 2017 abgerufen am 19 Februar 2017 Linux Kernel 4 11 Langere Akkulaufzeit durch NVMe Stromspartechnik Heise am 6 Marz 2017 Thorsten Leemhuis Die Neuerungen von Linux 4 11 heise de 16 April 2017 abgerufen am 5 November 2017 Thorsten Leemhuis Die Neuerungen von Linux 4 12 heise de 3 Juli 2017 abgerufen am 23 Juli 2017 Thorsten Leemhuis Die Neuerungen von Linux 4 13 heise de 4 September 2017 abgerufen am 24 September 2017 Greg Kroah Hartman As no one seemed to make 4 9 blow up too badly let s try this again plus google com 17 Juni 2017 abgerufen am 17 Juni 2017 englisch Thorsten Leemhuis Die Neuerungen von Linux 4 14 heise de 17 September 2017 abgerufen am 18 Marz 2018 Thorsten Leemhuis Die Neuerungen von Linux 4 15 heise de 28 Januar 2018 abgerufen am 18 Marz 2018 Thorsten Leemhuis Die Neuerungen von Linux 4 17 heise de 4 Juni 2018 abgerufen am 4 Juni 2018 Thorsten Leemhuis Linux 4 18 freigegeben heise de 13 August 2018 abgerufen am 13 August 2018 Thorsten Leemhuis Kernel Log Linux 4 19 Flackerfrei starten und Strom sparen heise de 12 Oktober 2018 abgerufen am 24 Oktober 2018 Thorsten Leemhuis Linux 4 19 Schoner starten und bereit fur das WLAN von Morgen heise de 22 Oktober 2018 abgerufen am 24 Oktober 2018 Thorsten Leemhuis Linux 4 20 freigegeben Performance Optimierungen und neue Treiber heise de 12 Dezember 2018 abgerufen am 24 Dezember 2018 Thorsten Leemhuis Linux 5 0 ist da Geschwindigkeit zuruckerobern und moderner speichern heise de 4 Marz 2019 abgerufen am 24 Juni 2019 Thorsten Leemhuis Linux 5 1 Performance Verbesserungen und neue Speichertechnik heise de 6 Mai 2019 abgerufen am 24 Juni 2019 Linux 5 2 freigegeben Anderungsrekord und Geschwindigkeitsverbesserungen c t Magazin am 9 Juli 2019 Thorsten Leemhuis Linux 5 3 freigegeben Prioritaten deckeln und Trouble fur Nvidia Abgerufen am 26 November 2019 Thorsten Leemhuis Linux 5 4 freigegeben exFAT Support und Einschrankungen fur Root Abgerufen am 26 November 2019 Thorsten Leemhuis Linux 5 5 freigegeben Wireguard Fundament und Performance Verbesserungen Abgerufen am 27 Januar 2020 Thorsten Leemhuis Linux 5 6 freigegeben Wireguard und USB4 Support Abgerufen am 6 April 2020 Thorsten Leemhuis Linux 5 6 unterstutzt Wireguard und USB4 Abgerufen am 6 April 2020 Oliver Muller Linux 5 18 kommt als kleine Revolution In Heise online 24 Mai 2022 S 3 Probleme mit altem C Abgerufen am 27 Mai 2022 Zitat Der neue Linux Kernel wechselt erstmalig zu einem neueren C Standard Bislang war das Programmieren nach dem C89 Standard in Kernel Kreisen Pflicht Jakob Koschel hatte eine Unsicherheit identifiziert die auf ein in C89 nicht losbares Problem zuruckzufuhren war Erstmalig in der Geschichte des Kernel wechselt der C Standard weg von C89 zu C11 Damit ist fortan der Sprachstandard aus dem Jahr 2011 die Grundlage fur die Programmierung des Kernels Was nach einer Formalie aussieht ist ein kontrolliertes Wagnis Thorsten Leemhuis Die Neuerungen von Linux 2 6 25 Daten und Zahlen zu den jungsten Versionen des Linux Kernels Heise online 17 April 2008 S 6 abgerufen am 28 September 2010 Thorsten Leemhuis Die Neuerungen von Linux 2 6 31 Daten und Zahlen zu den jungsten Versionen des Linux Kernels Heise online 10 September 2009 S 6 abgerufen am 28 September 2010 Thorsten Leemhuis Die Neuerungen von Linux 2 6 38 Daten und Zahlen zu den jungsten Versionen des Linux Kernels Heise online 15 Marz 2011 S 8 abgerufen am 15 Marz 2011 Thorsten Leemhuis Die Neuerungen von Linux 3 0 Daten und Zahlen zu den jungsten Versionen des Linux Kernels Heise online 22 Juli 2011 S 4 abgerufen am 25 Juli 2011 Dr Oliver Diedrich The Next Generation Linux 2 6 Fit fur die Zukunft in der c t 24 2003 am 17 November 2003 Seite 194 Marcel Hilzinger Con Kolivas meldet sich mit neuem Scheduler zuruck Linux Magazin 2 September 2009 abgerufen am 27 April 2014 Richard M Stallman Linux GNU and freedom gnu org 10 Juli 2014 abgerufen am 12 Februar 2015 englisch Linus Torvalds GPL V3 and Linux Dead Copyright Holders 25 Januar 2006 abgerufen am 24 Marz 2009 englisch Nachricht auf der Linux Kernel Mailingliste nbsp Dieser Artikel wurde am 23 Oktober 2005 in dieser Version in die Liste der lesenswerten Artikel aufgenommen Abgerufen von https de wikipedia org w index php title Linux Kernel amp oldid 239226470