|
Linux (gesprochen Lihnukkß) ist der sehr bekannte Kern des gleichnamigen Betriebsgefüges, welcher, mit Ausgabe 0.01, im Jahre 1991 von Linus Torvalds ursprünglich für seinen 386er (später u.a. auch für weitere x86er) entwickelt und ab Ausgabe 0.12 unter der freien GPL veröffentlicht wird. Er ist heute Teil einer Vielzahl von Betriebsgefügen oder auch sogenannten Linux-Distributionen.
Der Name Linux setzt sich zusammen aus dem Vornamen des Schöpfers, Linus, und einem X für das (ursprünglich) als Vorbild dienende Unix. Er bezeichnet im weiteren Sinne mittlerweile nicht mehr nur den Kern selbst, sondern im übertragenen Sinne auch ganze auf Linux aufbauende Betriebsgefüge sowie dessen Verteilungen (oder auch ewiggestrig sogenannte Distributionen), was (anscheinlich um die 2000er Jahre rum) zum GNU/Linux-Namensstreit führte.
Grundlagen
Siehe auch Bild zum groben Aufbau unter: Wikipedia:de:Bild:Linux-Kernel-Struktur.svg
Aufgaben
Siehe auch Haupteintrag unter: Wikipedia:de:Betriebssystemkern
Der Betriebsgebilde-Kern bildet die Ebene oder auch Schicht und Schnittstelle zwischen der Geräte- und (Benutzer-)Anwendungsebene (auch Hardwareabstraktionsschicht genannt), das heißt, er stellt den auf dieser Ebene aufsetzenden Anwendungen und Entwicklern eine einheitliche Anwendungsentwicklungsschnittstelle zur Verfügung, welche unabhängig vom Rechneraufbau sein kann. Alle Anwendner können so immer auf die Schnittstelle zugreifen und brauchen die darunter liegenden Geräte nicht genauer zu kennen. Linux ist dabei zuständig für die Speicher- und Ausführungs- oder Prozess-/Ablauf-Verwaltung (einschließlich des Mehrprozessbetriebs), die Lastverteilung, Sicherheitserzwingung sowie Ein- und Ausgaben auf verschiedenen Geräten.
Sprachen
Linux ist fast ausschließlich in der sehr stark römisch-amerikanisch-englisch ausgerichteten Sprache C beschrieben (oder auch programmiert), wobei einige GNU-C-Erweiterungen genutzt werden. Eine Ausnahme bilden die geräteabhängigen Teile (im sogenannten Arch-,[5] also – wörtlich übersetzt – im Ursprungs-/Wurzel-[6] oder eben treffender im Geräte-Verzeichnis[7] innerhalb der Linux-Sourcen), wie zum Beispiel der Beginn des Urladens, welcher eben sehr gerätenahe noch in Assemblersprache beschrieben ist.
Arbeitsweise
Bei einem streng monolithischen Kern wird der gesamte Quellcode einschließlich aller Treiber in das ausführbare Kern-Abbild übersetzt (oder auch ewiggestrig kompiliert). Im Gegensatz dazu kann Linux Teile (Module) nutzen, welche erst während des Betriebs (und nach der Übersetzung) geladen und wieder entfernt werden können. Damit wird die Flexibilität erreicht, um unterschiedlichste Geräte ansprechen zu können, ohne sämtliche (auch nicht benötigte) Treiber und andere Teile im (2019 n.Chr.) noch immer recht begrenzten Hauptspeicher halten zu müssen.
Sind Teile der Gerätebeschreibungen (oder auch sogenannten Hardware-Spezifikationen) nur ungenügend offengelegt, so stützt sich Linux notfalls – über besondere VM86-Modi – auch auf das zugrundeliegende BIOS sowie unter anderem auf dessen (BIOS-)Erweiterungen APM und ACPI oder auch auf die Vorgaben der VESA. Um unter diesen Voraussetzungen x86-verträgliche Geräte, beispielsweise auf der DEC-Alpha-Plattform zu betreiben, werden teilweise sogar ganze Nachbildungen (oder auch sogenannte Emulatoren) zur Ausführung entsprechenden ROM-Codes verwendet. Nachdem das BIOS seine Arbeiten erfolgreich verrichtet hat, übernimmt – üblicherweise nur im Hintergrund – der Linuxkern einen immer größer werdenden Teil der weiteren Rechnerverwaltung (siehe auch allgemeiner unter Wikipedia:de:Urladen und …:Urlader).
Die laufenden Anwendungen bekommen vom Linux-Kern Rechenzeit zugewiesen. Jede dieser Anwendungen erhält üblicherweise einen eigenen, geschützten Speicherbereich und soll nur über Befehle an den Linux-Kern und somit stellvertretend (sowie ersatzweise und einheitlicher verwaltend) auf die Geräte (und dessen Treiber) sowie auf andere Teile das Betriebsgefüges zugreifen können. Die Anwendungen sollen dabei im Benutzermodus (englisch ‚user mode‘) laufen, während der Kern im „geschützen Modus“[8] – also mit Zugriffsschutz (möglichst selbstverwaltend) arbeiten soll. Die Bevorzugungen im Benutzermodus sind sehr eingeschränkt. Abstraktion und Speicherschutz sind nahezu vollkommen, ein unmittelbarer Zugriff wird nur sehr selten und unter genau überwachten (oder kontrollierten) Bedingungen gestattet. Dies hat den Vorteil, daß keine Anwendung beispielsweise durch einen Fehler das Betriebsgefüge zum Zusammenbuch[9] bringen kann (siehe auch Tron und der MCP).
Der Linux-Kern ist ein Betriebssystemkern und bildet somit nur einen – wenn auch sehr wichtigen – Teil des eigentlichen Betriebsgebildes ab, welches sich gegenwärtig (im Jahre 2019) üblicherweise eben aus einem Kern und weiteren grundlegenden Anwendungen sowie Anwendungsteilen[10] zusammensetzt und einen Rechner so erst für gewöhnliche Menschen – in ihrer Gesamtheit (bisher üblicherweise noch) als im Hintergrund arbeitende (schwache) künstliche Vernunft – einfach bedienbar macht.
Siehe auch: Wikipedia:de:Gerätedatei, …:Network Block Device, …:Netfilter, …:Netzwerk-Scheduler, …:Prozess-Scheduler, …:Linux (Betriebssystem)
Schnittstellen
Siehe auch Bild zur LSB unter Wikipedia:de:Bild:Linux kernel interfaces.svg
Es kann zwischen vier auch sogenannten Anwendungs-(Entwicklungs-)Schnittstelle unterschieden werden, welche das Zusammenwirken entweder (1.) von inneren Teilen des Kerns untereinander oder (2.) auch von außeren (Kern-)Aufrufen[11] ermöglichen – zu Letzterem siehe ggf. auch unter Wikipedia:de:Interprozesskommunikation).
Die Dauerhaftigkeit (oder auch sogenannte Stabilität) der von außen erreichbaren Schnittstellen wird von den Entwicklern zugesichert (oder auch garantiert), das heißt wohl nur (der Wikipedia nach), daß der gesammte Quellcode einer Kern-Ausgabe grundsätzlich ohne jegliche Veränderungen übertragbar (oder auch portierbar) sein soll ODER womöglich auch, daß eben die System-Aufrufe (von außen) auch weiterhin nutzbar sein sollen (wenigstens solange, bis entsprechende Zweige – wie beispielsweise zur ISDN-Unterstützung – absichtlich abgesägt werden[12]). Die Dauerhaftigkeit der inneren Schnittstellen wird nicht zugesichert, diese können dennoch bis zu zehn Jahre aber auch nur wenige Monate unverändert bleiben. Da die Arbeiten am Linux-Kern zudem (wohl am 27.2.2014) von einigen tausend Entwicklern vorangetrieben wurden,[13] war diese Entscheidung, einen derartigen Aufwand zu betreiben (also für den Fall, auch die inneren Aufrufe nicht zu verändern und entsprechend ewig weiterzupflegen), aber wohl leicht nachvollziehbar.
Die (3.) sogenannte (innere) Binär-Schnittstelle des Kerns ist unerheblich – auf das ganze Betriebsgefüge kommt es an. Die (4.) von außen nutzbare sogenannte Linux-Standard-Base (oder auch kurz LSB) hingegen soll es zudem ermöglichen, auch nicht öffentlich einsehbare … oder auch unfreie Anwendungen unverändert und so einfach zwischen den unterschiedlichen Linux-Gefügen zu übertragen.
Auch die innere Binärschnittstelle ist nicht dauerhaft (oder stabil) und es gibt keinerlei Bestrebungen dies zu ändern. Dies hat zur Folge, daß ein inneres Modul, welches beispielsweise mal für Linux 3.0 übersetzt wurde, womöglich noch mit der nachfolgenden Ausgabe 3.1 aber spätestens mit einer späteren Linux-Ausgabe höchstwahrscheinlich nicht mehr zusammenarbeiten wird. Dies war und ist eine ganz bewußte Entscheidung.[14]
Aufbau
Siehe auch unter Wikipedia:de:Vorlage:Linux-Schichten.
Linux ist als einzelner (oder auch sogenannter monolithischer) Kern beschrieben. Die Treiber im Kern und die Kern-Module oder – übersetzt – (Bau-/Entwicklungs-)Teile laufen in einem bevorzugten (oder ewiggestrig auch sogenannten privilegierten) Modus (auf x86 im sogenannten Ring 0), haben also unbeschränkten Zugriff auf die Geräte (oder Hardware[15]). Einige wenige Teile des Kerns laufen mit eingeschränkten Zugriffsrechten (auf x86 im Ring 3). Die Ringe 1 und 2 der x86er werden von Linux nicht genutzt, da sie auf vielen anderen Rechenwerken nicht vorhanden sind und der Kern auf allen Unterstützten im Wesentlichen gleich laufen soll.
Nahezu jeder Treiber kann auch als äußerer Teil (Kern-Modul) zur Verfügung stehen und bei Bedarf vom Kern zur Laufzeit nachgeladen werden. Ausgenommen davon sind Treiber, welche schon für das Urladen benötigt werden – beispielsweise bevor auf das äußere Schriftgefüge zugegriffen werden kann. Der Linux-Kern kann allerdings auch so (vor)eingestellt werden, daß CramFS oder Initramfs vor dem (äußeren Root- oder auch) Wurzel-Verzeichnis geladen wird, welches die weiteren für das Hochfahren notwendigen Teile enthält. Durch das Weglassen nicht wirklich für das Hochfahren benötigter Teile kann die Kerngröße verringert und so auch dessen Beweglichkeit[16] wesentlich erhöht (oder auch vereinfacht) werden.
Linux stellt – wie sein Vorbild Unix – eine vollständige Abstraktion und Virtualisierung für nahezu alle Betriebsmittel bereit – also beispielsweise nachgebildeten (oder auch virtuellen) Speicher (und dessen Verwaltung), die Nachbildung einer eigenen Verarbeitungseinheit und vieles mehr.
Die Tatsache, daß Linux nicht mehr als (Mikro- oder auch – einfacher verständlich – als) Klein(st)kern ausgelegt ist, war Inhalt eines – in der Linux-Welt – berühmten Flame Wars zwischen dessen Urheber, Linus Torvalds, und einem von Torvalds Lehrmeistern,[17] Andrew S. Tanenbaum. Anfang der 1990er Jahre, als Linux entwickelt wurde, galten monolithische Kerne als veraltet – Linux war zu diesem Zeitpunkt noch rein monolithisch aufgebaut. Das Gespräch und die Zusammenfassungen sind im Wikipedia-Eintrag unter Geschichte von Linux näher beschrieben.
Durch Erweiterungen wie FUSE und durch die zunehmende Verwendung von Kernel-Prozessen fließen mittlerweile auch zahlreiche Microkernel-Konzepte in Linux ein.
Übertragbarkeit
Obwohl Linus Torvalds eigentlich nicht beabsichtigt hatte, einen übertragbaren (oder auch portierbaren) Kern zu schreiben, wurde Linux – dank des GNU-Com… -Kompilers oder (noch besser) des …-Übersetzers GCC – weitreichend in diese Richtung entwickelt. Es ist – den Schreibern in der Wikipedia nach[18] – inzwischen (mit) eines der am häufigsten übertragenen Betriebsgefüge (nur noch NetBSD läuft auf etwa gleich vielen Rechenwerken (oder Architekturen)). Die Verbreitung reicht dabei über gewöhnliche Hausrechner (oder auch sogenannte Personal Computer oder – wenigstens besser eingedeutscht – Personal-Komputer) zudem von eher selten anzutreffenden Betriebsumgebungen wie dem kleinen Handrechner iPAQ oder auch auf Digitalkameras bis hin zu Großrechnern wie IBMs Z Systems.
Und obwohl die Übertragung auf die aus dem Jahr 1990 stammende S/390 ursprünglich ein von der IBM-Verwaltung nicht genehmigtes Unterfangen war (siehe auch Wikipedia:de:Skunk works), plant IBM auch seine nächsten Blue Gene genannten Großrechner mit einem eigenen Linux-Port auszustatten.
Ursprünglich hatte Torvalds zudem eine ganz andere Art der Übertragbarkeit für seinen Kern angedacht, nämlich die Möglichkeit, freie GPL- und andere (quell)offene Anwendungen leicht unter seinem Linux übersetzen (oder auch kompilieren) zu können. Dieses Ziel wurde bereits sehr früh erreicht und macht sicherlich einen guten Teil des Erfolges von Linux aus, da es im Grunde jedem – welcher bisher allein der amerikanisch-englischen Sprache mächtig genug ist – eine recht einfache Möglichkeit bietet, auf einem freien Gefüge freie Anwendungen ausführen zu können (oder diese auch frei laufen zu lassen).
Die ersten Rechenwerke, auf denen Linux lief, waren die von Linus Torvalds verwendeten Rechner:[19]
- IA-32 ab i386 – Linus hatte ab 1991 einen PC mit Intel-386DX-33-MHz-Prozessor, 4 MB RAM Haupt- und 40 MB Festspeicher (auf einer nach wie vor auch sogenannten Festplatte)
- Alpha – Linus arbeitete von 1994 bis 1995 an der Übertragung (oder auch sogenannten Portierung) auf die 64-Bit-Alpha-Architektur, auf einem DEC-Alpha-Rechner, den er als Leihgabe erhalten hatte
Damit war Linux sehr früh 64-Bit-fähig (Linux 1.2 erschien 1995) und durch die Portierung auf Alpha war der Weg für weitere Portierungen frei. Zeitgleich arbeitete der damalige Schüler (oder Student) Dave Miller ab 1993 an der Übertragung auf (damals noch) Suns SPARC – einem eben damals weit verbreiteten (Kleins-)Rechenwerk. Zudem lief Linux 2.0 von Mitte 1996 offiziell noch auf IA-32 und Alpha, konnte aber bereits symmetrisches Multiprozessing.
Mit Linux 2.2, im Jahre 1999, kamen folgende Übertragungen (oder auch Ports) hinzu:[19]
- SPARC und UltraSPARC von Oracle (ursprünglich von Sun)
- die Motorola-68000er-Familie (m68k)
- Wikipedia:de:PowerPC (ppc) von Apple, IBM und Motorola (AIM-Allianz)
Mit Linux 2.4, im Jahre 2001, schließlich kamen Folgende hinzu:[19]
Trotz der unterstützten Befehlssätze ist für die Lauffähigkeit mehr nötig, so daß Linux gegenwärtig u.a. auf folgenden Rechnern und Rechenwerk(ch)en läuft:
- Acorn A5000 und Risc-PC-Reihe (mit ARM, StrongARM, Intel XScale usw.)
- x86-64 oder auch x64 (umgesetzt als AMD64 und Intel 64): alle x86er mit 64-Bit-Erweiterung (trotzdem weiterhin mit IA-32-Aufbau, wie AMDs Athlon 64, Opteron, Turion, Phenom, Phenom II und Bulldozer sowie Intels Core 2, Core i und Xeon)
- Atmel AVR32
- Axis Cris
- Blackfin
- Compaqs Alphas
- Hitachi H8/300
- Hewlett-Packard PA-RISC
- IA-64: PCs mit 64-Bit-Intel-Itaniums
- IBMs S/390 und Z Systems
- Intel 80386 (bis Linux 3.7): IBM-PCs und dessen mit den x86ern Verträglichen (oder auch Kompatiblen)
- Intel 80486 (und Neuere) für IBM-PCs und zu diesen verträglich mit den 32-Bittern der IA-32er (u.a. Intels 80486er und Pentiums, AMDs Athlons und Durons, Cyrix-Rechenwerke und viele Weitere)
- Unterstützung für Intel-16-Bit-Kerne (8086, 8088, 80186 und 80188 sowie 80286) wird im Rahmen des ELKS-Projektes weiterentwickelt.
- MIPS: Maschinen von Silicon Graphics …
- Motorola 68020 und neuer: spätere Amigas, einige Atari und viele Apple-Rechner ab 1987 (Macintosh II) bis 1995 (siehe Linux68k)
- NEC V850E
- PowerPC: die meisten Apple-Rechner zwischen 1994 und 2006 (alle auf PCI aufbauenden Power Macintoshs, der Nintendo GameCube; begrenzte Unterstützung für NuBus-Power-Macs bis Linux 2.4.x, die weitere Entwicklung wurde in die Unternehmung PPC/Linux for NuBus Power Macs ausgelagert[20]), Neuumsetzungen der Power Macs von Power Computing, UMAX und Motorola, mit einer Power-UP-Karte verbesserte Amigas (bspw. Blizzard oder CyberStorm), dessen Nachfolger AmigaOne, sowohl IBM Power als auch auf PowerPC aufbauende IBM-RS/6000-Rechner und verschiedene eingebettete PowerPCs
- Sun/Oracle SPARC und UltraSparc – Arbeitsrechner (oder Workstations) von Oracle und Sun
- Hitachi SuperH: Sega Dreamcast
- OpenRISC
Schnittstellen für ARM
Linux unterstützt zwei verschiedene Binärschnittstellen für ARM-Rechenwerke. Die Ältere wird mit der englischen Abkürzung OABI bezeichnet, was ausgeschrieben für old application binary interface steht, und unterstützt die Rechenwerke bis einschließlich ARMv4, während die Neuere, welche mit EABI (kurz für embedded application binary interface) bezeichnet wird, Rechenwerke ab einschließlich ARMv4 unterstützt. Der bedeutendste Unterschied der Schnittstellen in Bezug auf Systemleistung ist die sehr viel bessere Unterstützung von softwareemulierten Gleitkomma-Berechnungen durch EABI.[21]
User-Mode-Linux
Ein besonderer Port ist das User-Mode-Linux. Grundsätzlich handelt es sich dabei um einen Port von Linux auf sein eigenes Systemcall-Interface. Dies ermöglicht es, einen Linux-Kern als normalen Prozess auf einem laufenden Linux-System aufzurufen. Der User-Mode-Kern greift dann nicht selbst auf die Geräte (oder denglisch Hardware) zu, sondern reicht entsprechende Anforderungen an den echten Kern durch. Durch diese Konstellation werden eine Art Sandkästen – ähnlich den virtuellen Maschinen von Java oder den jails von FreeBSD – möglich, in denen ein (gewöhnlicher) Anwender auch volle (Root-)Rechte haben kann, ohne dem tatsächlichen System schaden zu können.
µClinux
Das sogenannte (oder eher nur so bezeichnete) µClinux ist eine Linux-Art für Rechner ohne eigene Speicherverwaltungseinheit ( römisch-englisch kurz MMU ) und kommt vorwiegend auf (den namensgebenden sogenannten) Mikrocontrollern sowie auf eingebetteten Systemen zum Einsatz. Seit Linux 2.6 ist dieses µClinux Teil des Linux-Kerns.
Entwicklung
Die Entwicklung von Linux liegt durch die GNU General Public License genannten allgemeinen Veröffentlichungs-Bedingungen und durch das eben dadurch auch sehr offene Entwicklungsmodell nicht in der Hand von Einzelpersonen, Großunternehmen oder Ländern, sondern in der Hand einer weltweit vernetzten Gemeinschaft vieler Entwickler, welche sich hauptsächlich eben über das (auch) Netz der Netzte (und englisch World Wide Web genannte Weltnetz) gedanklich austauschen.
Bei der Entwicklung besprechen (oder kommunizieren) die Entwickler fast ausschließlich über (elektronische) Briefe (oder auch ewiggestrig denglisch sogenannte E-Mails), u.a. da der Urheber oder auch Gründer, Linus Torvalds, der Ansicht ist (oder wohl mal behauptete), daß so die Meinungen nicht unmittelbar aufeinander prallen.
In vielen zudem (ewiggestrig-denglisch) sogenannten Mailinglisten, weiter übersetzt (wörtlich Briefketten und zudem üblicher) also in Kettenbriefen, aber auch in Foren und im Usenet besteht für jeden (welcher der englischen Sprache mächtig genug oder willens ist diese zu Nutzen) die Möglichkeit, die Diskussionen über den Kern zu verfolgen, sich daran zu beteiligen und auch Beiträge zur Entwicklung zu leisten. Durch diese einfache Vorgehensweise ist eine schnelle und dauerhafte Entwicklung gewährleistet, welche grundsätzlich auch die Möglichkeit mit sich bringt, daß jeder dem Kern Fähigkeiten zukommen lassen kann, welche er benötigt.
Eingegrenzt wird dies (neben der geforderten englischen Sprache) nur durch die Herrschaft (oder auch Kontrolle) von Linus Torvalds und einigen besonders verdienten Entwicklern, welche das letzte Wort über die Aufnahme von Verbesserungen (oder auch denglisch sogenannten Patches) in den Hauptentwicklungszweig[22] haben. Manche Linux-Distributoren bauen auch eigene Eigenschaften und Fähigkeiten (oder Funktionen) in ihren Kern ein, welche im Hauptkern (noch) nicht vorhanden sind.
Herkunftsnachweise
Die Kern-Entwicklung ist, wie der Kern selbst, ebenfalls immer weiterentwickelt worden. So führte das Rechtsverfahren der SCO Group um angeblich unrechtmäßig (oder illegal) übertragenen Code von Unix – oder genauer von dessen sogenannten System V – zu Linux, zur Einführung eines ‚Linux Developer's Certificate of Origin‘ – also wohl eine Linux-Entwickler-Urheber-Bescheinigung, welche von Linus Torvalds und Andrew Morton bekanntgegeben wurde.[23] Diese Änderung griff die Schwierigkeiten auf, daß nach dem bis dahin gültigen Entwicklungsverfahren die Herkunft von Erweiterungen und Verbesserungen des Kerns nicht nachvollzogen werden konnte.
Linus schrieb dazu 2004 mal – hier frei übersetzt – Folgendes:
„Zurzeit werden die meisten Patches für den Kern nicht unmittelbar an mich gesandt. Das wäre einfach nicht machbar. Tatsache ist, daß es eine Menge Teile gibt, mit denen ich überhaupt nicht vertraut bin und ich somit keine Möglichkeit habe zu entscheiden, wie gut der Patch ist. Deshalb läuft es meist darauf hinaus, die zuständigen Hauptentwickler zu treffen. Falls ein Fehler auftritt, will ich den Namen eines Hauptentwicklers und nicht irgendeines Entwicklers sehen, von dem ich nicht einmal weiß, ob er noch tätig ist. Daher ist für mich auf jeden Fall die Kette wichtiger als der tatsächliche Urheber.
Auch gibt es eine andere Schwierigkeit, nämlich daß ich, falls man mir (oder irgendjemand anderem) einen Patch über E-Mail schickt, einzig die Senderinformation sehen kann, und das ist der Teil, dem ich traue. Wenn Andrew mir einen Patch sendet, vertraue ich dem Patch, weil er von Andrew kommt – auch wenn der eigentliche Urheber jemand ist, den ich nicht kenne. Also belegt tatsächlich der Weg, den der Patch zu mir nahm, diese Kette des Vertrauens – wir alle neigen dazu, nur das jeweils nächste „Glied“ zu kennen, aber nicht unbedingt das Wissen über die gesamte Kette zu haben.
Was ich also vorschlage ist, daß wir anfangen, Patches „abzuzeichnen“, um den Weg, den sie genommen haben, aufzuzeigen und so diese Kette des Vertrauens zu festzuhalten. Das erlaubt es darüber hinaus vermittelnden Gruppen, den Patch zu verändern, ohne daß dabei der Name von jemanden „auf der Strecke bleibt“ – ziemlich oft ist die Patchversion, die letztendlich in den Kern aufgenommen wird, nicht genau die Ursprüngliche, ist sie doch durch einige Entwicklerschichten gegangen.“[24]
Git
Die auch (ewiggestrig) sogenannte Versionskontrolle des Kerns unterliegt der Git – also britisch umgangssprachlich für „Blödmann“[25] oder auch „Schwachkopf“[26] – genannten Verwaltung. Diese wurde insbesondere für den Linux-Kern entwickelt und entsprechend auf dessen Bedürfnisse hin ausgerichtet. Git wurde im Vierten 2005 eingeführt, nachdem sich abgezeichnet hatte, daß das alte Versionskontrollsystem ‚BitKeeper‘ nicht mehr lange für die Kernentwicklung würde genutzt werden können.
Siehe auch GitHub, dessen Namensgeber Git war.
Kern-Ausgaben
Auf der bisher allein englischsprachigen Entwicklerseite kernel.org werden alle alten und neuen Kerne aufbewahrt (oder auch archiviert[27]). Die dort veröffentlichten Referenz-Kerne werden im angloamerikanischen Linuxsprech auch als Vanilla-Kerne bezeichnet (vom englisch-umgangssprachlichen vanilla, übersetzt „[auf Dauer doch recht eintönigen] Vanille-Geschmack“ – im Unterschied zu den vielen anderen Geschmacksrichtungen der zuständigen Distributoren oder Köche). Auf diesem Hauptkern (von kernel.org, mit Torwalds-Geschmack :-)) werden also üblicherweise all die anderen Geschmäcker weiterentwickelt, welche eben von den einzelnen Köchen weiter ergänzt oder auch nur anders voreingestellt werden können. Die Kern-Ausgabe des jeweils geladenen Betriebsgefüges kann wohl mit dem Befehl ‚uname -r
‘ abgefragt werden.[28]
Ausgabeordnung
Die frühen Linux-Kerne (0.01 bis 0.99) hatten noch kein klare Ordnung. Ausgabe 1.0 sollte die erste auch sogenannte Stabile werden, mit welcher die Kerne der im Folgenden beschriebenen Ordnung folgen (soll(t)en):
Die erste Ziffer wird nur bei grundlegenden Änderungen in der Systemarchitektur angehoben. Während der Entwicklung des 2.5er kam wegen der sehr grundlegenden Änderungen, verglichen mit dem 2.4er, die Diskussion unter den Entwicklern auf, den nächsten Anwenderkern als 3.0 zu kennzeichnen. Torvalds war aber aus verschiedenen Gründen dagegen, sodaß der nächste Kern erstmal als 2.6 bezeichnet wurde.
Die zweite Ziffer gibt das jeweilige Major-Release an. Bisher wurden stabile Ausgabe (die Anwenderzweige) von den Entwicklern stets durch gerade Ziffern wie 2.2, 2.4 und 2.6 gekennzeichnet, während die Testversionen (Entwicklerzwiege) immer ungerade Ziffern trugen, wie zum Beispiel 2.3 und 2.5. Diese Trennung wurde aber ab 2004, mit dem 2.6er, ausgesetzt und alle Änderungen von da an in den 2.6er-Zweig eingearbeitet.
Zusätzlich bezeichnet eine dritte Zahl das (englisch) sogenannte Minor-Release, welches die eigentliche Ausgabe kennzeichnet. Werden neue Fähigkeiten hinzugefügt, steigt die dritte Zahl an. Der Kern wird damit zum Beispiel mit einer Ausgabe-Nummer wie 2.6.7 bestimmt.
Um die Ausbesserung eines schwerwiegenden NFS-Fehlers schneller verbreiten zu können, wurde mit der Ausgabe 2.6.8.1 erstmals eine vierte Ziffer eingeführt. Seit 2005 (Kern-Ausgabe 2.6.11) wird diese Nummerierung offiziell verwendet.[29] So ist es möglich, die Stabilität des Kernels trotz teilweise sehr kurzer Veröffentlichungszyklen zu gewährleisten und Korrekturen von kritischen Fehlern innerhalb weniger Stunden in den offiziellen Kernel zu übernehmen – wobei sich die vierte Ziffer erhöht (z.B. von 2.6.11.1 auf 2.6.11.2). Die Minorrelease-Nummer, also die dritte Ziffer, wird hingegen nur bei Einführung neuer Funktionen hochgezählt.
2011 erklärte Linus Torvalds, die nach der Ausgabe 2.6.39 Folgende werde nicht 2.6.40 sondern als 3.0 benannt.[30] Als Grund dafür führte er an, daß die Versionsnummern seiner Meinung nach zu hoch wurden. Die Versionsnummer '3' stehe gleichzeitig für das dritte Jahrzehnt, welches für den Linux-Kernel mit seinem 20. Geburtstag anfange. Bei neuen Versionen wird seitdem die zweite Ziffer erhöht und die dritte steht – anstelle der vierten – für Bugfixreleases.
Im Jahr 2015 gab Torvalds Ausgabe 4.0, statt 3.20, frei[31] nachdem er auf Google+ Meinungen hierzu eingeholt hatte. 2019 wurde Linux 5.0 freigegeben. Dabei hat der Sprung von der letzten Ausgabe 4.20 auf 5.0 keine tiefergehende Bedeutung.
Entwicklerzweige
Neuerungen sind im -mm genannten Zweig des Entwicklers Andrew Morton zu finden und werden anschließend in den Hauptzweig von Linus Torvalds übernommen. Somit werden große Unterschiede zwischen den Entwickler- und Anwendungskernen und damit verbundene Übertragungsschrierigkeiten (oder Portierungsprobleme) zwischen den beiden Zweigen vermieden. Durch dieses Verfahren gibt es auch weniger Unterschiede (oder Differenzen) zwischen der Hauptreihe und den Distributionskernen (früher wurden Features des Entwicklungszweiges von den Distributoren häufig in ihre eigenen Kerne rückintegriert). Allerdings litt 2004/2005 die Stabilität des 2.6er unter den häufig zu schnell übernommenen Änderungen. Ende Juli 2005 wurde deshalb ein neues Entwicklungsverfahren beschlossen, welches nach dem Erscheinen der Ausgabe 2.6.13 erstmals zur Anwendung kam. Neuerungen wurden von da an nur noch in den ersten zwei Wochen der Entwicklung (in den Hauptzweig) angenommen, wobei anschließend eine Qualitätssicherung bis zum endgültigen Erscheinen der neuen Ausgabe erfolgt.
Pflege
Während Torvalds immer die jüngsten oder auch frischesten Entwicklerzweige veröffentlichte, wurde die Pflege der älteren auch sogenannten stabilen Zweige an andere Entwickler abgegeben. So war beispielsweise David Weinehall für den 2.0er-Zweig verantwortlich, Marc-Christian Petersen (zuvor Alan Cox) für den 2.2er, Willy Tarreau (zuvor Marcelo Tosatti) für den 2.4er, Greg Kroah-Hartman sowie Chris Wright für den 3.0er und Andrew Morton für seinen experimentellen -mm-Zweig, welcher auf dem 4er aufbaut(e). Zusätzlich zu diesen offiziellen und über Kernel.org oder einen seiner Spiegel zu beziehenden Kern-Quellkodes können (oder konnten) ersatzweise auch sogenannte Kernel-Trees aus anderen Quellen genutzt werden. Die Verteiler (oder Vertreiber und ewiggestrig römisch-denglisch Distributoren) von auf Linux aufbauenden Betriebsgefügen pflegen meistens ihre eigenen Kern-Zweige und beschäftigen zu diesem Zweck fest angestellte Entwickler (oder auch sogenannte Kernel-Hacker, welche ihre Änderungen meist auch in die öffentlichen Entwicklungszweige einfließen lassen.
Distributions-Kerne sind häufig intensiv nachbearbeitet (oder denglisch gepatcht[32]) worden, um auch Treiber zu enthalten, welche noch nicht im Hauptkern enthalten sind, von denen die Vertreiber (oder auch Distributoren) aber glauben, daß dessen Kundschaft sie benötigen könnten und die notwendige Fehlerfreiheit (oder auch Stabilität) dennoch gewährleistet ist.
Langzeitpflege
Die folgenden (noch unvollständig aufgeführten) Ausgaben werden (voraussichtlich, und wurden) länger gepflegt (oder auch gewartet sowie in eben diesem Sinne unterstützt, und daher hier bevorzugt mit der zugehörigen heimatsprachigen Abkürzung LZP – eben für Langzeitpflege[33] – gekennzeichnet):[34]
Ausgabe | Veröffentlichung | Unterstützungsende[35] | Dauer in Jahren |
---|---|---|---|
5.4 | 2019-11-25 | 2021-12 | 2+ |
4.19 | 2018-10-22 | 2020-12 | 2+ |
4.14 | 2017-11-12 | 2024-01 | 7- |
4.9 | 2016-12-11 | 2023-01 | 7- |
4.4 | 2016-01-10 | 2022-02 | 6+ |
4.1 | 2015-06-22 | 2018-05-28 | <3 |
3.18 | 2014-12-07 | 2019-05-16 | <5 |
3.16 | 2014-08-03 | 2020-06 | 6- |
3.14 | 2014-03-31 | 2016-09-11 | >2 |
3.12 | 2013-11-03 | 2017-05-09 | <4 |
3.10 | 2013-06-30 | 2017-11-04 | >4 |
3.4 | 2012-05-20 | 2016-10-26 | >4 |
3.2 | 2012-01-04 | 2018-05-31 | >6 |
3.0 | 2011-07-22 | 2013-10-22 | >2 |
2.6.35 | 2010-08-01 | 2012-03-13 | <2 |
2.6.34 | 2010-05-16 | 2014-02-10 | <4 |
2.6.32 | 2009-12-03 | 2016-03-17 | <7 |
2.6.27 | 2008-10-09 | 2012-03-17 | <4 |
2.6 | 2003-12-18 | 2016-03-17 | <13 |
2.4 | 2001-01-04 | 2008-12-18 | >7 |
2.2 | 1999-01-26 | 2004-02-24 | >5 |
2.0 | 1996-06-09 | 2004-02-08 | <8 |
Geschichte
Zeittafeln
Siehe auch Bild zur Entwicklung der Anzahl Quellkode-Zeilen (einschließlich der Zeitangaben) unter Wikipedia:de:Bild:Lines of Code Linux Kernel.svg.
Das folgende Schaubild stellt einzelne Ausgaben des Linuxkerns anhand der Veröffentlichungszeiten auf einer entsprechenden Tafel angeordnet dar und soll auch dem Überblick dienen.
Siehe unter Wikipedia:de:Vorlage:Zeitleiste Linux (Kernel)
Bis zum 2.5er
Zweig | Ausgabe | Veröffentlichung[1] | Dateien[36] | Zeilen[37] | Größe in KB[38] |
Anmerkungen |
---|---|---|---|---|---|---|
0.1 | 1991-09-17 | 88 | 8.413 | 73 | erste Veröffentlichung; startete auf Systemen mit (Floppy-)Disketten-Laufwerk und 386er-Prozessor, lud dabei die Treiber für das Minix-Dateisystem und eine finnische Tastatur, sowie als einzige Anwendung den Befehlsempfänger bash[39][40] | |
0.12 | 1992-01-16 | 132 | erste Veröffentlichung unter den Bedingungen der GPL (damals, von Linus Torvalds, ‚GNU copyleft‘ genannt[41]) | |||
1.0 | 1.0 | 1994-03-13 | 563 | 170.581 | 1.259 | erste auch sogenannte stabile (englisch stable) Ausgabe |
1.1 | 1.1 | 1994-04-06 | 561 | 170.320 | 1.256 | Entwicklerzweig |
1.1.95 | 1995-03-02 | 2.301 | ||||
1.2 | 1.2 | 1995-03-07 | 909 | 294.623 | 2.301 | erste Portierungen auf weitere Prozessorarchitekturen, mit Alpha, Mips und Sparc[42] |
1.2.13 | 1995-08-02 | 2.355 | ||||
1.3 | 1.3 | 1995-06-12 | 992 | 323.581 | 2.558 | Entwicklerzweig mit erster Unterstützung für Mehrprozessorsysteme[42] |
1.3.100 | 1996-05-10 | 5.615 | ||||
2.0 | 2.0 | 1996-06-09 | 2.015 | 716.119 | 5.844 | erste Unterstützung für symmetrische Mehrprozessorsysteme;[42] war mit Langzeitpflege |
2.0.40 | 2004-02-08 | 7.551 | ||||
2.1 | 2.1 | 1996-09-30 | 1.727 | 735.736 | 6.030 | Entwicklerzweig |
2.2.0-pre9 | 1999-01-21 | 13.077 | ||||
2.2 | 2.2 | 1999-01-26 | 4.599 | 1.676.182 | 13.080 | erste Unterstützung für die Netzwerk-Vermittlungssprache IPv6 sowie Portierung auf die Plattformen UltraSPARC und PA-RISC;[42] war mit Langzeitpflege |
2.2.26 | 2004-02-24 | 19.530 | ||||
2.3 | 2.3 | 1999-05-11 | 4.721 | 1.763.358 | 13.804 | Entwicklerzweig |
2.3.99-pre9 | 2000-05-23 | 20.882 | ||||
2.4 | 2.4 | 2001-01-04 | 8.187 | 3.158.560 | 24.379 | erste Unterstützung für die Stromverwaltung ACPI und für USB,[42] Unterstützung großer Dateien,[43] Einführung des Netfilter und der IPTables;[44] war der letzte länger gepflegte Anwenderzweig vor dem 2.6[45] |
2.4.37 | 2008-12-02 | 38.735 | letzte Ausgabe war 2.4.37.11, am 18.12.2010 | |||
2.5 | 2.5 | 2001-11-23 | 9.893 | 3.833.603 | 29.405 | Entwicklerzweig |
2.5.75 | 2003-07-10 | 40.969 |
2.6er bis zum 2.6.39er
Bei Betrachtung der zuletzt erschienenen Versionen (siehe Tafel) erfolgt die Entwicklung einer neuen Ausgabe in durchschnittlich 82 Tagen. Der Kern wird hierbei im Durchschnitt um 768 Dateien und 325.892 Quelltextzeilen (englisch lines of code) erweitert. Das mit dem Datenkompressionsprogramm gzip verdichtete tar-Archiv (.tar.gz) wächst im Mittel um rund 2 Megabyte mit jeder veröffentlichten Hauptausgabe (oder jedem Hauptzweig).
Ausgabe | Veröffentlichung[1] | Dateien[36] | Zeilen[37] | Größe in MB[46] |
Zeit in Tagen[47] |
Anmerkungen |
---|---|---|---|---|---|---|
2.6 | 2003-12-18 | 21.279 | 8.102.486 | 41,63 | LZP-Ausgabe; Übergang vom vorherigen Wechsel zwischen den Entwickler- und Anwenderzweigen, hin zu einer fortschreitenden Entwicklung ohne diesen Wechsel;[42] mit dieser Ausgabe oder diesem Entwicklungszweig (also ggf. erst mit dem letzten 2.6.39er) wurde der Linux-Kern zur Nebenläufigkeit (oder auch zur ewiggestrig sogenannten Präemptivität, genauer zum präemptiven Multitasking) befähig | |
2.6.13 | 2005-08-28 | 48,02 | u.a. wurde Inotify aufgenommen[48] | |||
2.6.20 | 2007-02-04 | 21.280 | 8.102.486 | 54,55 | 66 | erste Unterstützung für die Virtualisierungstechnik KVM[49] |
2.6.21 | 2007-04-26 | 21.614 | 8.246.470 | 55,33 | 80 | |
2.6.22 | 2007-07-08 | 22.411 | 8.499.363 | 56,91 | 74 | |
2.6.23 | 2007-10-09 | 22.530 | 8.566.554 | 57,40 | 93 | |
2.6.24 | 2008-01-24 | 23.062 | 8.859.629 | 59,08 | 107 | |
2.6.25 | 2008-04-17 | 23.810 | 9.232.484 | 61,52 | 83 | |
2.6.26 | 2008-07-13 | 24.270 | 9.411.724 | 62,55 | 88 | |
2.6.27 | 2008-10-09 | 24.354 | 9.709.868 | 63,72 | 88 | wurde nachträglich mit Unterstützung für frische Geräte erweitert, welche beispielsweise die Sprache der SAS-Schnittstelle beherrschen;[50] letzte Ausgabe war 2.6.27.62, am 17.3.2012, dieser Zweig wurde länger gepflegt |
2.6.28 | 2008-12-24 | 25.255 | 10.195.507 | 66,77 | 76 | |
2.6.29 | 2009-03-23 | 26.668 | 11.010.647 | 71,98 | 89 | Aufnahme des Btrfs[51][52] |
2.6.30 | 2009-06-10 | 27.879 | 11.637.173 | 75,77 | 78 | Unterstützung für USB 3.0 |
2.6.31 | 2009-09-09 | 29.111 | 12.046.317 | 78,28 | 92 | Unterstützung für Festplatten mit nativen 4K-Sektoren (auch bekannt als Advanced Format) |
2.6.32 | 2009-12-03 | 30.485 | 12.610.030 | 81,90 | 84 | LZP-Ausgabe; letzte Ausgabe war 2.6.32.71, am 12.3.2016 |
2.6.33 | 2010-02-24 | 31.565 | 12.990.041 | 84,53 | 83 | bildet die Grundlage für einen Echtzeit-Zweig;[53] letzte Ausgabe war 2.6.33.20, am 7.11.2011[54] |
2.6.34 | 2010-05-16 | 32.297 | 13.320.934 | 86,52 | 82 | LZP-Ausgabe; Treiber für jüngere AMD-Radeons und die Bildrechenkerne einiger erst später erwarteten Intel-Rechenwerke wurden aufgenommen; Unterstützung weiterer Schriftengefüge (Ceph und LogFS);[55] viele Änderungen an den zuvor schon unterstützten Gefügen Btrfs, ext4, NILFS2, SquashFS sowie auch XFS,[56] dem SCSI-Teilgebilde und den Teilen für ARM-, Blackfin- und MicroBlaze-Rechenwerke;[57] bessere Unterstützung für jüngste und ältere AMD- sowie auch Intel-Rechenwerke; größere Umbaumaßnahmen am Nouveau-Treiber für Nvidia-Bildrechner;[58] letzte Ausgabe war 2.6.34.15, am 10.2.2014 |
2.6.35 | 2010-08-01 | 33.316 | 13.545.604 | 88,30 | 77 | LZP-Ausgabe;[59] hinzugekommen sind unter anderem die Möglichkeit Arbeitsspeicher zu ordnen (oder auch – genauer – zu defragmentieren) und die Unterstützung für das Turbo-Core-Verfahren jüngerer AMD-Rechenwerke, zudem wurde der Netzwerkdurchsatz verbessert;[60] desweiteren wurden u.a. frische H.264-Übersetzungen für den Bildrechner in Intels Core-i5-Rechenwerken (auch englisch ‚Ironlake‘ genannt) aufgenommen und die Unterstützung für das Stromsparverfahren in Radeon-Bildrechenwerken verbessert;[61] letzte Ausgabe war 2.6.35.14, am 13.3.2012 |
2.6.36 | 2010-10-20 | 34.301 | 13.499.457 | 88,71 | 80 | hinzugekommen sind – im auch ‚Flesh-Eating Bats with Fangs‘ (also englisch für „fleischfressende Fledermäuse mit Reißzähnen“) genannten 36er Zweig[62] – unter anderem die Sicherheitsanwendung AppArmor, die Schnittstelle LIRC (für den in Ausgabe 2.6.35 eingeführten Unterbau zur Nutzung von Infra- oder (weiter übersetzt) Tief[dunkel]rot[licht]-Fernbedienungen) und eine verbesserte Stromverwaltung für Bildrechner[63] sowie Unterstützung für Echtzeit-Virenwächter;[64] letzte Ausgabe war 2.6.36.4, am 17.2.2011 |
2.6.37 | 2011-01-05 | 35.186 | 13.916.632 | 92,47 | 76 | hinzugekommen sind, neben den üblichen zusätzlichen Treibern (u.a. für USB 3.0), eine verbesserte Skalierung und Virtualisierung für Mehrkern-Rechenwerke;[65] letzte Ausgabe war 2.6.37.6, am 27.3.2011 |
2.6.38 | 2011-03-15 | 35.864 | 14.208.866 | 94,14 | 69 | Unterstützung für die AMD-Radeon-HD-6000-Reihe und für AMDs APUs,[66] sowie Verbesserungen zur Bild- und Ton-Verarbeitung als auch für berührungsempfindliche Bildschirme;[67] letzte Ausgabe war 2.6.38.8, am 3.6.2011 |
2.6.39 | 2011-05-19 | 36.705 | 14.533.582 | 95,99 | 65 | Unterstützung für Firewall-IP-Sets,[68][69] der im amerikanisch-englischen Linux-Sprech sogenannte Big Kernel Lock wurde (anscheinlich) entfernt;[70] letzte Ausgabe war 2.6.39.4, am 3.8.2011 |
Ab dem 3er
Ausgabe | Veröffentlichung[1] | Dateien[36] | Zeilen[37] | Größe in MB[71] |
Zeit in Tagen[47] |
Anmerkungen |
---|---|---|---|---|---|---|
3.0 | 2011-07-22 | 36.781 | 14.646.952 | 63,75 | 64 | LZP-Ausgabe; erneut geänderter Entwicklungverlauf (oder auch geändertes Versionsnummernschema),[72] zudem neue Treiber u.a. für (virtuelle – oder auch emulierte und simulierte, übersetzt also lediglich gedanklich nachgebildete) Netzwerkgeräte und den Fernseh-Standard DVB-T2, sowie allgemein verbesserte Virtualisierung (u.a. durch abschließende Arbeiten am Hypervisor Xen) und viele kleine Verbesserungen (wie bspw. Schreib- und Lösch-Optimierungen für Schriftgefüge);[73][74] letzte Ausgabe war 3.0.101, am 22.10.2013 |
3.1 | 2011-10-24 | 37.084 | 14.770.469 | 64,17 | 94 | hinzugekommen war u.a. die Unterstützung der OpenRISC-Rechenwerke;[75] letzte Ausgabe war 3.1.10, am 18.1.2012 |
3.2 | 2012-01-04 | 37.617 | 14.998.651 | 65,12 | 73 | LZP-Ausgabe; hinzugekommen war u.a. die Unterstützung für die Hexagon-Rechenwerke des Unternehmens Qualcomm; zudem wurden u.a. einige Netzwerktreiber in den zugehörigen Bereich[76] ausgelagert;[54] letzte Ausgabe war 3.2.102, am 31.5.2018 |
3.3 | 2012-03-18 | 38.082 | 15.166.074 | 65,85 | 74 | hinzugekommen war u.a. die Unterstützung für Android;[77] letzte Ausgabe war 3.3.8, am 1.6.2012 |
3.4 | 2012-05-20 | 38.566 | 15.383.860 | 66,79 | 63 | LZP-Ausgabe; hinzugekommen war u.a. die Unterstützung des – u.a. nach den sechs Schlaf- und Wach-Stufen benannten – RC6 genannten Ruhezustandes;[78][79][80] letzte Ausgabe war 3.4.113, am 26.10.2016 |
3.5 | 2012-07-21 | 39.096 | 15.596.378 | 67,53 | 62 | die Unterstützung für die veralteten Netzwerk-Standards Token Ring und Econet (← bisher nur englisch) wurde entfernt;[81] letzte Ausgabe war 3.5.7, am 12.10.2012 |
3.6 | 2012-09-30 | 39.733 | 15.868.036 | 68,68 | 71 | u.a. wurde die Stromspar- oder auch Schlaffähigkeit, für den Bereitschaftsbetrieb und den zuvor (im 3.4er) schon begonnenen Ruhezustand des gesamten Gefüges, weiterentwickelt;[82] letzte Ausgabe war 3.6.11, am 17.12.2012 |
3.7 | 2012-12-11 | 40.905 | 16.191.690 | 69,73 | 71 | hinzugekommen war u.a. NAT für IPv6, Unterstützung für den ARM-64-Bit-Befehlssatz und Ext4-Größenänderungen für Laufwerke die größer sind als 16 Terabyte, größere Veränderungen an den Bild- oder auch ewiggestrig sogenannten Grafik-Treibern für Nvidia-, Intel- und AMD-(Bild-)Rechenwerke und verbesserte Geräteunterstützung für Helligkeitsregelung und Stromsparfähigkeiten von Ton- oder auch sogenannten Soundkarten;[83] letzte Ausgabe war 3.7.10, am 27.2.2013 |
3.8 | 2013-02-18 | 41.520 | 16.416.874 | 70,99 | 70 | u.a. wurde die Unterstützung für das Schriftengefüge F2FS ergänzt[84] und für Intels 386er entfernt;[85] soll als Grundlage für die nächste Android-Ausgabe dienen;[86] letzte Ausgabe war 3.8.13, am 11.5.2013 |
3.9 | 2013-04-29 | 42.423 | 16.686.879 | 72,14 | 69 | u.a. wurde die Unterstützung für 32-Bit-Rechenwerke der Baureihe HTP (von Meta)[87] sowie ARC 700 (von Synopsys)[88] hinzugefügt und die Treiber für das Schriftengefüge Btrfs um eine erste Unterstützung für Raid 5 und 6 erweitert;[86][89] letzte Ausgabe war 3.9.11, am 21.7.2013 |
3.10 | 2013-06-30 | 43.016 | 16.955.489 | 73,19 | 63 | LZP-Ausgabe; bekam unter anderem bessere Unterstützung für den römisch- oder auch ammi-englisch sogenannten Unified Video Decoder (kurz UVD) von AMD-Radeon-Bildrechnern und für Nvidias Tegra; zudem wurden die Echtzeitfähigkeiten verbessert sowie die Nutzung von Festkörperspeichern (oder auch sogenannter Festkörperlaufwerke, siehe auch Wikipedia:de:Laufwerk (Computer), und noch ewiggestriger denglisch sogenannter Solid-State-Drives und zudem kurz SSDs ) als Zwischenspeicher (oder auch Cache[90]) für die üblicherweise spürbar langsameren Festplattenlaufwerke ermöglicht;[91] hinzugekommen ist auch der Treiber für das Hochgeschwindigkeitsübertragungsverfahren InfiniBand;[92] letzte Ausgabe war 3.10.108, am 4.11.2017 |
3.11 | 2013-09-02 | 44.002 | 17.403.279 | 75,08 | 63 | neben Verbesserungen an den Bild(-Berechnungs)-Treibern, ist die Aufnahme von verschiedenen WLAN- und LAN-Treibern hinzugekommen sowie die Verbesserung der KVM- und Xen-Unterstützung auf ARM64 vorgesehen;[93] wird der Arbeitsspeicher knapp kann dieser nun mit einem sogenannten Zswap (siehe auch Zip und Swap) verdichtet werden;[94] letzte Ausgabe war 3.11.10, am 29.11.2013 – wegen ihrer anfänglichen Ausgabenummer auch (in Anlehnung an Microsofts Windows für Workgroups 3.11) Linux for Workgroups genannt.[95] |
3.12 | 2013-11-03 | 44.586 | 17.726.872 | 76,34 | 62 | LZP-Ausgabe; neben Verbesserungen an Nvidias Optimus-Treibern ist die Unterstützung eines sogenannten Syn-Proxys (also anständig übersetzt einfach ein Stellvertreter welcher sich allein um gleichzeitige Anfragen von anderen Rechnern kümmert, siehe auch „Lastenausgleich“ oder genauer Wikipedia:de:Lastverteilung (Informatik)) hinzugekommen,[96] welcher auch Syn-Flut-Angriffe verhindern oder wenigstens erschweren soll;[97] hinzugekommen ist auch Multithreading oder auch (übersetzt und hier leichter verständlich) Nebenläufigkeit bei mit Mdadm angelegten Raid-5-Feldern und Btrfs beherrscht Deduplikation;[98] letzte Ausgabe war 3.12.74, am 9.5.2017 |
3.13 | 2014-01-20 | 44.970 | 17.930.916 | 77,18 | 77 | erhielt den frischen (oder auch aufgefrischten/überarbeiteten, dröhmisch-denglisch neuen) Firewall-Unterbau namens Nftables (welcher die mit dem 2.4er eingeführten Iptables ablösen soll), bessere Leistung für 3D - oder auch (übersetzt) räumliche Bildberechnungen und An- oder (zur Laufzeit – die) Zuschaltung des (römisch-ammi-englisch) sogenannten Dynamic-Power-Management (kurz DPM – also wörtlich der „beweglichen …“ und übertragen wohl eher der (wenigstens teilweise) selbstverwaltenden) Stromverwaltung bei AMD-Radeon-Bildrechnern;[99][100] moderneres Multiqueue-Storage-Interface;[101] letzte Ausgabe war 3.13.11, am 22.4.2014 |
3.14 | 2014-03-31 | 45.935 | 18.271.989 | 78,43 | 70 | LZP-Ausgabe; hinzugekommen ist ein Scheduler, der für Echtzeitgefüge geeignet ist,[102] sowie Zram, mit dessen Hilfe Arbeitsspeicher blockweise verdichtet (oder auch gezippt[103]) werden kann, und u.a. ist nun Xen 4.4 enthalten;[104] Unterstützung von frischen Bildrechenkernen (oder auch sogenannten Grafikkernen) und Nachbesserungen am UVD für AMDs Bildrechner ab der HD-7000-Reihe;[102] letzte Ausgabe war 3.14.79, am 11.9.2016 |
3.15 | 2014-06-08 | 46.780 | 18.632.574 | 79,79 | 53 | das Aufwachen aus der Bereitschaft (im denglischen Linux-Sprech Suspend-to-RAM-Modus genannt) wurde beschleunigt und es wurden ‚Open File Description Locks‘ eingeführt; beispielsweise Videosoftware soll nun einfacher Teile eines Films (genauer einer Filmschrift) auslesen können und allgemeiner soll auch der ununterbrechbare[105] Austausch von Schriften ermöglicht werden; die Unterstützung von FUSE, XFS und Flash-Speichern mit einem Schriftengefüge darauf wurde ausgebaut;[106] letzte Ausgabe war 3.15.10, am 14.8.2014 |
3.16 | 2014-08-03 | 47.425 | 18.879.129 | 80,53 | 56 | LZP-Ausgabe; eingeflossen sind u.a. Robustheits-Maßnahmen beim Btrfs, desweiteren wurden die Radeon- und Nouveau-Treiber verbessert;[107] jüngste Ausgabe war 3.16.82, am 11.2.2020 |
3.17 | 2014-10-05 | 47.490 | 18.864.388 | 80,32 | 63 | die Anweisung ‚getrandom() ‘ und Vorgaben zur Mindest-Inhalts- oder auch (teilweise ewiggestrig) sogenannte …-Informations-Dichte sorgen für sicherere Zufallszahlen; hinzugekommen sind Grundlagen für den Kdbus, Fences in Dma-Buf(fern), Multi Stream Transport (auch kurz MST genannt – ein Teil von DisplayPort 1.2) für 4K-Monitore, sowie die Unterstützung für den Xbox-One-Kontroller und ForcePad-Touchpads; desweiteren Verbesserungen für Thunderbolt bei Apple-Geräten;[108]letzte Ausgabe war 3.17.8, am 8.1.2015 |
3.18 | 2014-12-07 | 47.971 | 18.994.096 | 80,95 | 64 | LZP-Ausgabe; Aufnahme des OverlayFS;[109] Verbesserungen bei Btrfs und F2FS; das Tunneln[110] beliebiger Protokolle wurde über UDP ermöglicht; Tonausgabe mit dem Nouveau-Treiber über DisplayPort; Just-in-time-Kompilierung des Extended-Berkeley-Paket-Filters (eBPF) für ARM64; der BPF[111] ist nun durch den Aufrufer ‚bpf() ‘ allgemein verfügbar; Modulparameter können als unsicher (englisch unsafe) gekennzeichnet werden;[112]letzte Ausgabe war 3.18.140, am 16.5.2019 |
3.19 | 2015-02-09 | 48.424 | 19.130.604 | 81,68 | 63 | u.a. Unterstützung für AMDs Heterogeneous System Architecture (HSA),[113] zudem wurde das Binder genannte Interprozesskommunikationsframework aufgenommen,[114] welches ursprünglich für Android entwickelt wurde und auf dem sogenannten OpenBinder[115] aufbaut;[116] letzte Ausgabe war 3.19.8, am 11.5.2015 |
4.0 | 2015-04-12 | 48.945 | 19.312.370 | 82,31 | 63 | u.a. Unterstützung für Nachbesserungen[117] im laufenden Betrieb (auch Kernel-Live-Patching genannt);[118][119] letzte Ausgabe war 4.0.9, am 21.7.2015 |
4.1 | 2015-06-22 | 49.457 | 19.512.485 | 83,05 | 70 | LZP-Ausgabe; u.a. Verschlüsselung für Ext4, Treiber für nichtflüchtigen Arbeitsspeicher (in DIMM-Bauweise, englisch ‚non-volatile dual inline memory module‘ und zudem kurz ‚NV-DIMM‘ genannt) sowie Schaffung der Grundlagen zur 3D-Beschleunigung in virtuellen Maschinen;[120] letzte Ausgabe war 4.1.52, am 28.5.2018 |
4.2 | 2015-08-30 | 50.795 | 20.311.717 | 85,46 | 70 | u.a. Nachbesserungen an der UEFI genannten Schnittstelle sind nun über Linux möglich und die Unterstützung der AMD-Bildrechenwerke der ‚Volcanic Islands‘ oder später Radeon R200 genannten Reihe ist hinzugekommen;[121] letzte Ausgabe war 4.2.8, am 15.12.2015 |
4.3 | 2015-11-02 | 51.570 | 20.621.444 | 86,93 | 63 | Unterstützung für Intels Skylake- und AMDs Fiji-Kerne;[122][123] IPv6 wurde zur Voreinstellung;[124] letzte Ausgabe war 4.3.6, am 19.2.2016 |
4.4 | 2016-01-10 | 52.221 | 20.862.115 | 87,35 | 70 | LZP-Ausgabe; Bildtreiber für den Raspberry Pi und weitere 3D-Beschleunigungen in KVM für entsprechende Maschinen, Verbesserungen bei RAID und Festkörperspeicher; BPF-Aufrufe sind nun auch im sogenannten Userspace möglich;[125][126] jüngste Ausgabe war 4.4.214, am 14.2.2020 |
4.5 | 2016-03-14 | 52.916 | 21.154.545 | 88,39 | 63 | weitere Besserungen in den 3D-Treibern, unter anderem durch die Unterstützung für AMDs PowerPlay, und reibungslose Wechsel der Netzwerkverbindungen;[127][128] Verbesserungen beim Zugriff auf NFS-Server;[129] letzte Ausgabe war 4.5.7, am 8.6.2016 |
4.6 | 2016-05-15 | 53.660 | 21.422.694 | 89,44 | 63 | u.a. verbesserte Stromverwaltung durch die Möglichkeit der Taktraten-Einstellung bei Tegra-X1-Bildrechnern und durch die Freischaltung der Frame-Buffer-Compression (kurz FBC) für die Haswell und Broadwell genannten Intel-Hauptrechenwerke, des Weiteren wurde das Schriftengefüge OrangeFS freigeschaltet sowie zusätzliche Werkzeuge zur besseren Fehlererkennung (englisch bug hunting);[130][131] letzte Ausgabe war 4.6.7, am 16.8.2016 |
4.7 | 2016-07-24 | 54.400 | 21.712.846 | 90,39 | 70 | u.a. erste Unterstützung für AMDs neue Radeon-Bildrechner (unter dem Decknamen Polaris), vier weitere ARM-Treiber und Unterstützung für Spiele-Steuergeräte;[132][133] zudem bessere SMR-Unterstützung für Festplatten und Beschleunigungen beim Tunneln;[134] im Vergleich zum Vorgänger (4.6) werden nun rund 500 weitere Geräte unterstützt;[135] letzte Ausgabe war 4.7.10, am 22.10.2016 |
4.8 | 2016-10-02 | 55.503 | 22.071.048 | 91,96 | 70 | neben der Unterstützung frischer Treiber für Bild- und Hauptrechenwerke von AMD, ARM (Mali), Intel und Nvidia wurde u.a. das Übertakten (oder denglisch auch sogenannte Overclocking) für AMD-Bildrechen-Treiber und eine zugehörige frische (GPU-)Virtualisierungstechnik für entsprechende Intel-Treiber eingeführt, des Weiteren wurde das XFS überarbeitet, so daß es auch die Vollständigkeit aller Einzelschriften (oder auch dessen Integrität, bei Heise „Datenintegrität“ und im nahe verwandten Datenbank-Umfeld Konsistenz genannt) prüfen sowie Deduplizierung und das NenÄ-Verfahren beherrscht;[136][137] letzte Ausgabe war 4.8.17, am 9.1.2017 |
4.9 | 2016-12-11 | 56.223 | 22.348.356 | 93,22 | 70 | LZP-Ausgabe; neben Verbesserungen in der Sicherheit – durch besseren Schutz vor Stapelüberläufen – erhalten u.a. die Treiber für das XFS eine Shared-Data-Extents genannte Erweiterung, welche auf die (bereits im 4.8er eingeführte) Reverse-Mapping-Infrastruktur aufsetzt und es künftig ermöglichen soll, daß sich mehrere Dateien einen Daten- oder Wert(e)bereich teilen können und dieser auch mehrere Besitzer haben kann; zudem wurden erste Unterstützungen für den sogenannten Greybus eingearbeitet, welcher ursprünglich für das ehemals von Google entwickelte modulare Smartphone Ara gedacht war und u.a. von Motorola in einem ihrer Geräte genutzt wird;[138][139] jüngste Ausgabe war 4.9.214, am 14.2.2020 |
4.10 | 2017-02-19 | 57.172 | 22.839.541 | 94,37 | 71 | Verbesserungen beim Schreiben auf Datenträger und Einführung einer schnelleren Fehlererkennung in RAID-Verbünden, ebenso wurden u.a. EFI-Zugriffe verbessert und der LED-Treiber uleds eingearbeitet;[140] ein Verfahren um die schnelleren Bildberechnung des Wirtes aus virtuellen Maschinen heraus (wohl ähnlich wie zuvor schon mit DirectX, möglichst unmittelbar oder eben auch direkt) nutzen zu können, wurde eingeführt;[141] bei Intel-Rechenwerken kann der Zwischenspeicher (Cache) zwischen laufenden Anwendungen aufgeteilt werden; die Fähigkeiten für die ARM64er wurden ausgebaut, Überarbeitungen beim Routing; das Schriftgefüge UBIFS wurde um eine wahlweise Verschlüsselung ergänzt, während LogFS entfernt wurde;[142] letzte Ausgabe war 4.10.17, am 20.5.2017 |
4.11 | 2017-05-01 | 57.964 | 23.137.284 | 95,42 | 71 | Verringerung des Stromverbrauches von NVMe-Festkörperspeichern durch das Stromsparverfahren APST; Unterstützung für selbstverschlüsselnde Festkörperspeicher; Verbesserungen bei der Abfrage sogenannter Metadaten für Verzeichnisse und Schriften; Überarbeitung des im 4.10er eingeführten Verfahrens (oder auch der Kern-Fähigkeit) Intel Turbo Boost Max 3.0; Verbesserungen bei der Beschleunigung virtueller Maschinen für AMDs Bildrechner;[143] Anpassungen für ext4, um dessen Nutzung als (nur kurz oder auch nur einmal genutztes und zudem kurz Einmal-…/Einweg-[144] oder auch) Wegwerf-Schriftengefüge zu verbessern;[145] letzte Ausgabe war 4.11.12, am 21.7.2017 |
4.12 | 2017-07-02 | 59.808 | 24.173.535 | 103,8 | 62 | Einführung des Schedulers ‚Budget Fair Queueing‘ (kurz BFQ genannt) für bessere Leistung bei Datenträgerzugriffen, Unterstützung für AMDs Bildrechner der Radeon-Vega-Reihe;[146] letzte Ausgabe war 4.12.14, am 20.9.2017 |
4.13 | 2017-09-03 | 60.543 | 24.767.008 | 104,9 | 63 | Beschleunigung bei HTTPS, Verzeichnisse im Ext4-Schriftgefüge können nun bis zu 2 Milliarden Einträge enthalten;[147] letzte Ausgabe war 4.13.16, am 24.11.2017 |
4.14 | 2017-11-22 | 61.258 | 25.041.165 | 101,7 | 70 | LZP-Ausgabe; Unterstützung für bis zu 4096 Terabyte Arbeitsspeicher;[148] jüngste Ausgabe war 4.14.171, am 14.2.2020 |
4.15 | 2018-01-28 | 62.271 | 25.364.680 | 102,1 | 78 | Einbau verschiedener Schutzmaßnahmen gegen Meltdown und Spectre, der AmdGPU-Treiber unterstützt nun die Radeon-Vega-Reihe besser;[149] letzte Ausgabe war 4.15.18, am 19.4.2018 |
4.16 | 2018-04-01 | 62.883 | 25.558.670 | 100,6 | 63 | letzte Ausgabe war 4.16.18, am 26.6.2018 |
4.17 | 2018-06-03 | 61.332 | 25.379.428 | 99,77 | 63 | HDCP-Unterstützung bei Intel-Kernen mit enthaltenem Bildrechenwerk, erste Gegenmaßnahmen gegen Spectre v4 (Speculative Store Bypass), Entfernung der Unterstützung für Blackfin-, AXIS CRIS- und 6 weiterer Rechenwerke;[150] letzte Ausgabe war 4.17.19, am 24.8.2018 |
4.18 | 2018-08-12 | 60.973 | 25.280.736 | 101,8 | 70 | Vorarbeiten für die leistungsgesteigerte Firewall Bpfilter; Unterstützung für GPU von Kaby Lake-G und der angekündigten Vega20; erster Unterstützung für Qualcomms Snapdragon-845-Prozessor;[151] letzte Ausgabe war 4.18.20, am 21.11.2018 |
4.19 | 2018-10-22 | 61.700 | 25.588.319 | 103,1 | 71 | LZP-Ausgabe; erstmals wurden Verhaltensregeln für Entwickler fest in die Beschreibung (oder auch Dokumentation) aufgenommen,[152] Unterstützung des neuen WLAN-Standards 802.11ax, Beschleunigung der SATA-Treiber;[153] jüngste Ausgabe war 4.19.106, am 24.2.2020 |
4.20 | 2018-12-23 | 62.446 | 25.955.384 | 104,3 | 62 | AmdGPU-Treiber unterstützt neue Bildrechenwerke (BRWs oder eben ewiggestrig GPUs) von AMD; Behebung der Sicherheitslücke für die zweite Abart von Spectre;[154] letzte Ausgabe war 4.20.17, am 19.3.2019 |
5.0 | 2019-03-03 | 63.135 | 26.211.072 | 102,8 | 70 | hinzugekommen ist u.a. die Unterstützung zur Bildangleichung[155] mit Hilfe von AMDs sogenanntem FreeSync,[156] desweiteren wurde auch allgemein die Speicherverwaltung weiter verbessert;[157] letzte Ausgabe war 5.0.21, am 4.6.2019 |
5.1 | 2019-05-06 | 63.873 | 26.459.776 | 105,9 | 63 | Datenträger können nun über zeitversetzte Ein- und Ausgaben (englisch ‚asynchronous I/O‘ und zudem kurz AIO) angesprochen werden;[158] letzte Ausgabe war 5.1.21, am 28.7.2019 |
5.2 | 2019-07-07 | 64.587 | 26.552.127 | 107,0 | 63 | u.a. können Verzeichnisse nun in Ext4 auch ohne zwingende Beachtung der Groß- und Kleinschreibung (case-sensitivity) genutzt werden; die Absicherungen gegen die Meltdown- und Spectre2-Sicherheitslücken wurden verbessert;[159] letzte Ausgabe war 5.2.21, am 11.10.2019 |
5.3 | 2019-09-15 | 65.261 | 27.141.312 | 109,1 | 70 | AMDs Navi[160] wird nun unterstützt[161] und es wurde u.a. auch die IPv4-Unterstützung verbessert;[12] letzte Ausgabe war 5.3.18, am 18.12.2019 |
5.4 | 2019-11-25 | 65.701 | 27.538.212 | 109,1 | 70 | LZP-Ausgabe; u.a. können Verzeichnisse nun besser in virtuelle Maschinen eingebunden werden, ExFAT wird nun unterstützt und es gab viele Änderungen in der Sicherheit, so u.a. zum sogenannten Kernel-Lockdown, also eine Abriegelung, um den Kern zu seiner Laufzeit – ähnlich wie das auch beim Windows-NT-Kern schon vor einigen Jahrzehnten eingeführt wurde – selbst vor Anwendern mit höchsten (oder auch tiefgreifensten) Nutzerrechten (im englischsprachigen Linux-Sprech ‚root‘ genannt) zu schützen[162][163][164] jüngste Ausgabe war 5.4.22, am 24.2.2020 |
5.5 | 2020-01-27 | 66.493 | 27.854.754 | 106 | 63 | neben den üblichen Treibern für Bildrechenwerke, u.a. Erweiterungen und weitere Verbesserungen für Btrfs, Verbesserungen am Ausbesserungsverfahren im laufenden Betrieb (englisch Live Patching), im HRK-Lastenausgleich (Load-Balancing), in der Virtualisierung (mit der KVM und BPF-Virtual-Machine), für Intels Dauerspeicher (englisch persistent memory) in NVRAM-Bauweise und (vorbereitende) USB-4-Unterstützung;[165] jüngste Ausgabe war 5.5.6, am 24.2.2020 |
5.6 | (2020-03) | jüngste (Vorschau-)Ausgabe war 5.6-VA 3, am 24.2.2020 |
Weitere Einzelheiten zum 2.6er
Dieser Eintrag oder Abschnitt bedarf einer Überarbeitung: Die folgenden Unterabschritte ggf. weiter übersetzen, dann (so weit wie möglich) kürzen und ggf. oben in die zugehörigen Geschichtsabschnitte (zum 2.6er) einarbeiten. -- Ehwa, am 17.2.2020, um 15:51 (MEZ) Bitte hilf mit, ihn zu verbessern, und entferne anschließend diesen Hinweis. |
Der 2.6er wurde ab 2001 (noch im 2.5er-Entwicklerzweig) auf Grundlage des damaligen 2.4er-Zweiges entwickelt und wieß umfangreiche Neuerungen auf. Für die Entwicklung war der neue Quelltext übersichtlicher und leichter zu pflegen, während Anwender durch die Überarbeitung des Ablaufplaners (oder auch ewiggestrig denglisch des Prozess-Schedulers [166]) sowie des E/A-Bereiches und von geringeren Latenzzeiten profitierten.[167] Dies wurde durch eine Reihe von Maßnahmen erreicht, die im Folgenden aufgezeigt werden:
Neue Ablaufplaner
In einem Multitasking-fähigen Betriebsgefüge muß es eine Ebene (oder auch Instanz) geben, welche den Anwendungen (oder auch Berechnungen, denglisch den Prozessen), die laufen wollen, Rechenzeit zuteilt. Diese Ebene bildet der Ablaufplaner. Seit dem Erscheinen von Linux 2.6 wurde mehrfach grundlegend an diesem Planer[166][168] gearbeitet.
Für die ersten 2.6er war von Ingo Molnár ein, gegenüber Linux 2.4, ganz neuer Planer entworfen und geschrieben worden, der sogenannte ‚O(1)-Scheduler‘. Dieser erhielt seinen Namen, weil die wichtigen Rechenverfahren, auf denen der Planer aufbaut, die Zeitkomplexität haben. Dies bedeutet, daß die vom Planer für eigene Aufgaben benötigte Rechenzeit unabhängig von der Anzahl der verwalteten Haupt- und Nebenberechnungen (denglisch Prozesse und Threads) ist. Insbesondere wurde etwa auf das Durchsuchen aller Berechnungen nach der jeweils wichtigsten Berechnung verzichtet.
Der O(1)-Scheduler arbeitete auch bei sehr vielen Berechnungen überaus schnell. Er verwendete grundsätzlich zwei verkettete Listen, in denen die Berechnungen eingetragen waren, die noch laufen wollten, und diejenigen, die bereits gelaufen sind. Wenn alle Berechnungen in der zweiten Liste standen, wurden die Datenfelder getauscht, und das Spiel begann von vorn. Der Planer war darüber hinaus so ausgelegt, daß Berechnungen, die große Mengen Rechenzeit in Anspruch nehmen wollen, gegenüber Berechnungen mit Ein- und Ausgaben (kurz gegenüber EA-lastigen Berechnungen) benachteiligt werden, wenn beide zur gleichen Zeit laufen wollen.
EA-lastige Berechnungen benötigen in der Regel nur sehr wenig Rechenzeit, sind dafür aber sehr zeitabhängig – so will der Benutzer (oder auch allgemeiner andere Geräte) beispielsweise nicht lange auf eine Antwort der Bedienoberfläche (oder auf andere Geräte, wie bspw. den Speicher) warten. Der O(1)-Scheduler besaß Verfahren (oder sogenannte Heuristiken), um festzustellen, ob es sich um eine EA-lastige oder eher längere Berechnung handelt und damit den (Haupt-)Rechnerkern (HRK) eher länger belegt.
Der innere Takt des Linux-Kerns wurde ab dem 2.6er von 100 auf 1000 Hertz erhöht, das heißt, die kürzestmögliche Länge einer Zeitscheibe beträgt nun eine Millisekunde. Auch hiervon profitieren besonders die EA-lastigen Berechnungen, da sie früher „wieder an der Reihe sind“. Da dies aber zu einer erhöhten HRK-Last und somit zu einem größeren Stromverbrauch führt, wurde entschieden, den Takt ab dem 2.6.13er auf 250 Hertz voreinzustellen. Bei der Konfiguration des Kernels sind jedoch auch noch die Werte 100, 300 und 1000 Hertz wählbar.
Mit der Linux-Ausgabe 2.6.23 wurde im Zehnten 2007 der O(1)-Scheduler durch einen Completely Fair Scheduler (kurz CFS) ersetzt, der ebenfalls von Ingo Molnár entwickelt wurde. Der CFS als gegenwärtig einziger im Hauptentwicklungszweig verfügbarer Planer ist unter den Kern-Entwicklern teilweise umstritten, da er seinen Schwerpunkt auf Skalierbarkeit auch bei Servern mit vielen Rechenkernen legt. Entwickler wie Con Kolivas sind der Meinung, daß unter dieser Schwerpunktsetzung sowie einigen Designentscheidungen im CFS die Leistung auf übliche Desktop-Systemen leide.[169]
Zugriffsrechte
Mit dem 2.6er wurden (im Linux-Kern) erstmals Zugriffsrechte (oder auch, aus dem englischen access control lists entlehnt, sogenannte Zugriffskontrolllisten) eingeführt. Diese sehr feinkörnige Rechteverwaltung ermöglicht es vor allem Rechnerverwaltern (oder Systemadministratoren), die Rechte auf einem Dateisystem unabhängig vom Gruppen- und Nutzer-Modell zu gestalten und dabei beliebig viele Sonderrechte je Datei zu setzen. Die mangelnde Unterstützung derartiger Zugriffsrechte wurde vorher als große Schwäche von Linux im Rahmen der Verwaltung und der Möglichkeiten sicherer (Vor-)Einstellungen gesehen.
Die Unterstützung der Zugriffsrechte funktioniert dabei unter anderem mit den Schriftgefügen ext2, ext3, JFS und XFS.
Inotify
Mit dem 2.6.13er wurde dieser erstmals mit der (bisher anscheinlich allein englisch) Inotify genannte Fähigkeit erweitert. Diese ermöglicht eine andauernde Überwachung von Schriften und Ordnern – wird eines der überwachten Dinge geändert oder ein Neues im Überwachungsraum erschaffen, gibt Inotify eine Meldung aus, welche wiederum andere (laufende) Anwendungen zu eigenen Tätigkeiten veranlassen kann. Dies ist insbesondere für das (wenigstens) rechnerweite Suchen und die zugehörige Verschlagwortung von entscheidender Bedeutung, und ermöglicht erst den sinnvollen Einsatz eines jeden Allzweckrechners mit eigener Suche (wie beispielsweise der freie DocFetcher[170][171] sowie auch der Strigi(-Dienst)). Ohne eine solche Benachrichtigungsfähigkeiten müßte eine Anwendung die zu überwachende Schrift (oder Datei) sowie das zu überwachende Verzeichnis in bestimmten Zeitabschnitten immer wieder auf Änderungen hin überprüfen, was im Gegensatz zu Inotify zusätzliche Leistungseinbußen mit sich bringen würde.
In der Windows-Welt (vor allem auch in VB.net aber auch früher schon, spätestens mit VB6) sind derartige Fähigkeiten auch als Ereignisüberwachung[172] (oder ähnlich) bekannt.
Weitere grundlegende Änderungen
Soweit es möglich ist, wurde in Linux 2.6 die Höchstzahl für bestimmte Ressourcen angehoben. Die Anzahl von möglichen Benutzern und Gruppen wurde dabei von rund 65.000 auf über 4 Milliarden angehoben, ebenso wie die Anzahl der Prozess-IDs (von rund 32.000 auf über 1 Milliarden) und die Anzahl der Geräte (Major/Minor-Nummern). Weitere leistungssteigernde Maßnahmen betrafen die E/A-Planer[168] (im denglischen Linux-Sprech auch ‚O(1)-Scheduler‘ genannt), das Threading mit der damals frischen Native POSIX Thread Library und den Netzwerkstapel (englisch network stack), der nun ebenfalls in den meisten Tests O(1)-skaliert ist. Außerdem wurde für die Verwaltung der E/A-Gerätedateien das früher genutzte devfs durch udev ersetzt, was viele Unzulänglichkeiten, wie zum Beispiel ein zu großes /dev/-Verzeichnis, beseitigte. Außerdem kann so eine einheitliche Gerätebenennung erfolgen, welche beständig bleibt, was vorher nicht der Fall war.
Lizenzbesonderheiten
Unfreie Teile und der Freiheitsbegriff
Die gegenwärtig von Linus Torvalds herausgegebene Fassung des Kerns enthält unfreie (oder auch ewiggestrig sogenannte proprietäre) Teile in Maschinensprache (auch kurz BLOBs genannt) und ist daher – im strengen Sinne – nicht mehr allein den (unbeschränkt) freien Anwendungen zuzuordnen. Richard Stallman bezweifelt sogar, daß sie rechtsmäßig einfach so (selbst zur gemeinfreien? … naja – recht sicher aber wohl – nur zur Weiterentwicklung unter den selbst auferlegten Bedingungen der GPL) übernommen und so auch vervielfältigt (oder auch kopiert) werden darf, da diese BLOBs – auch im sehr strengen Sinne – im Widerspruch zur GPL stünden und die Rechte aus der GPL daher erlöschen würden.[173] Folglich rät die Free Software Foundation deshalb dazu, nur BLOB-freie Ausgaben u.a. auch von Linux einzusetzen, bei denen diese Bestandteile eben entfernt wurden. Linux-Distributionen mit dem Kern Linux-libre erfüllen diesen Anspruch.
Der Kern unter der GPL 2
Die bei unter den Bedingungen der GPL freigegebenen Anwendungen – wie auch dem Linux-Kern – übliche Klausel, daß statt dessen zweiter Ausgabe auch eine höhere Ausgabe verwendet werden kann, fehlt beim Linux-Kern.[174] Die Entscheidung, ob die im Sommer oder – genauer – am 29. des sechsten Jahreszwölftels 2007 erschienene dritte GPL-Ausgabe für Linux verwendet werden sollte, war damit nur mit Zustimmung aller Entwickler möglich. In einer Umfrage hatten sich Torvalds und die meisten anderen Entwickler für die Beibehaltung der zweiten GPL-Ausgabe ausgesprochen.
Siehe auch
Deutsch:
- Linux-Kernel – Golem
- Linux-Kernel – Heise (wenigstens im offen sichtbaren Bereich mit Bindestrich)
- Linux Kernel Download (eigentlich nur denglisch[175]) – ComputerBase
- Was ist Linux? – Einleitung (der ebenda sogenannten Benutzerversion) bei SelfLinux, eine „deutschsprachige[…] Dokumentation zu GNU/Linux“; anscheinlich zuletzt geändert und veröffentlicht in den Jahren zwischen 2005 und 2007[176]
- Wikipedia:de:Berkeley Software Distribution – wahrscheinlich eher unter dessen Abkürzung ‚BSD‘ bekannt; eine ähnlich offen und freie Entwicklung eines Betriebsgefüges, an der (kalifornischen) Hochschule Berkeley, welche wohl mal als Vorbild auch für deutschsprachige Hochschulen genutzt werden könnte; ist für die allgemeine Bevölkerung aber wahrscheinlich eher weniger geeignet, da Hochschulen (oder auch Universitäten) anscheinlich gegenwärtig (2019) eher dazu neigen, sich vom gemeinen[177]
V…Folk[178] (allein schon in ihrer eigenen (und – für Außenstehende – ewiggestrige Fremd-)Sprache) abzugrenzen (siehe beispielsweise Universität Potsdam) - Wikipedia:de:Linux (Kernel) (am 17.9.2019) – der Ursprung dieses Eintrages hier, im EuK-Wiki
Englisch:
- Linux-Kern-Archiv – Entwicklerseite
- Elixir Cross Referencer
- Interactive Linux Kernel Map
- Linux Kernel Newbies – für angehende Entwickler
- Oldlinux.org – Sammlung alter Kerne
- Linux 0.01 News – Seite zur Weiterentwicklungen des 0.01-Kerns für neuere GCC-Ausgaben
- Anatomy of the Linux kernel – IBM, am 6.6.2007
Schriftliches
… genauer Papier-Schriftliches (oder auch ewiggestrig sogenannte Literatur)
- Linux-Kernelarchitektur. Konzepte, Strukturen und Algorithmen von Kernel 2.6. – von Wolfgang Mauerer, 2003 über den Hanser-Fachbuchverlag in München veröffentlicht; ISBN 3-446-22566-8
- Linux-Kernel-Handbuch. Leitfaden zu Design und Implementierung von Kernel 2.6. – von Robert Love, 2005 über den Addison-Wesley-Verlag in München veröffentlicht; ISBN 3-8273-2204-9
- Linux Device Drivers (sehr wahrscheinlich nur in amerikanischem Englisch) – von Jonathan Corbet, Alessandro Rubini und Greg Kroah-Hartman; in der 3. Auflage 2005 über den O’Reilly-Verlag veröffentlicht; ISBN 0-596-00590-3
Dieser Eintrag oder Abschnitt bedarf einer Überarbeitung: Hauptsächlich alle rot hervorgehobenen (also ins Leere laufenden) Anbindungen (oder auch denglisch sogenannten Links) sollten wieder richtig an die Wikipedia angebunden und zudem ggf. (später) besser in die hier eigentlich übliche, gewünschte sowie bevorzugte Heimatsprache übersetzt werden. -- Ehwa, am 24.2.2020, um 11:40 (MEZ) Bitte hilf mit, ihn zu verbessern, und entferne anschließend diesen Hinweis. |
Belege
… und Anmerkungen:
- ↑ 1,0 1,1 1,2 1,3 1,4 kernel.org (nur englisch) – zuletzt geändert am 24.2.2020 (zuletzt abgerufen am 24.2.2020)
- ↑ …/Copying (englisch) – Git-Bereich bei Kernel.org (zuletzt abgerufen am 17.9.2019)
- ↑ Linus Torvalds kritisiert den zweiten GPLv3-Entwurf – Heise, am 28.7.2006
- ↑ GNU Linux-libre (englisch) – Eintrag im Free Software Directory, (anscheinlich zuletzt geändert oder dort angeblich reviewed) am 6.1.2019
- ↑ … für das römisch-amerikanisch-englische architecture, siehe auch Wiktionary:de:Architektur …
- ↑ … wörtlich und nur noch bedingt bedeutungsgleich …
- ↑ … letztere Übersetzung allein hinsichtlich der nach wie vor zugrundeliegenden (sowie auch – allein, in der Linux-Welt oder allgemeiner in der Rechentechnik, vom Sinn her – ursprünglichen) Bedeutung (vergleiche im Gegensatz dazu auch die heute übliche Architektur, also wörtlich wohl eigentlich die „erste …“ oder eben auch „ursprüngliche (Bau-)Kunst“, und die Bedeutung des Eigenschaftswortes archaisch) …
- ↑ … zuvor offenbar auch nur halbherzig entlehnt aus dem englischen ‚kernel mode‘ …
- ↑ … oder (in ähnlich übertragenem Sinne) auch zum Einsturz/Absturz oder schlicht zum (Ausführungs-)Abbruch ;-) (siehe auch Wikipedia:de:Abrißbirne) also (wieder sachlicher) zum Anhalten ODER – ins Gegenteil, also – in einen unendlich sinnlosen Leerlauf (siehe zudem ggf. auch unter Wikipedia:de:Endlosschleife) …
- ↑ … im Grunde nur eine andere (Spiel-)Art der (sehr sinnähnlichen) Module, wobei die Module (oder auch die zudem noch sinnähnlicheren Klassen) sich wie (einzelne) Bücher und die Programmbibliotheken sich eben wie Büchereien verhalten, …
- ↑ … auch – teilweise denglisch und ewiggestrig – „ System -Aufrufe“ genannt …
- ↑ 12,0 12,1 Linux 5.3 freigegeben: Prioritäten deckeln und Trouble für Nvidia – Heise-C'T-Magazin, erstveröffentlicht am 17.7.2019 (zuletzt geändert am 27.9.2019); u.a. mit: „Den ISDN-Support stutzen die Entwickler zusammen.“
- ↑ Wikipedia:de:[Linux (Kernel)]#Schnittstellen (ab 27.2.2014) – u.a. auch mit „einigen tausend Entwicklern“
- ↑ …/stable-api-nonsense.rst (englisch) – Git-Bereich bei Kernel.org (zuletzt abgerufen am 17.9.2019)
- ↑ … vergleiche (vor allem hinsichtlich der [Haupt-]Bedeutung) auch mit dem untergeordnete (oder auch unterbegrifflichen) Peripheriegerät
- ↑ … vor allem im Sinne der Übertragbarkeit (etwa bei einem eigentlich sehr einfachen Umzug auf einen anderen Rechner), aber auch im Sinne der Pflege oder Wartung des eigentlichen Kerns selbst …
- ↑ … oder auch einem seiner Hochschullehrer sowie (ewiggestrig römisch-denglisch) auch sogenannten (Universitäts)Professoren (vergleiche dazu ggf. auch Wiktionary:de:Hochschullehrer mit …:Professor und …:Universitätsprofessor) …
- ↑ Wikipedia:de:[Linux (Kernel)]#Portierbarkeit (seit dem 26.2.2004 nahezu unverändert) – u.a. mit der Aussage: „[eines der] am häufigsten […]“ , siehe zudem aber die im Folgenden aufgeführten Rechenwerke
- ↑ 19,0 19,1 19,2 UNIX/Linux-Geschichte (englisch) – und ohne Zeitangabe, dem dort jüngsten Beleg (oder Source) nach (also www.bell-labs.com/history/unix) anscheinlich (den verwendeten Quellen oder englisch ‚Sources of information‘, genauer der dort ersten angegebenen Quelle – also ‚http://li.org/linuxhistory.php archived at the WayBack machine‘ – nach, welche damals am 1.12.2005 gesichert wurde, eben) frühestens Ende 2005 (erst?)veröffentlicht (zuletzt abgerufen am 16.12.2019)
- ↑ PPC/Linux for NuBus Power Macs (englisch) – SourceForge (zuletzt geändert am 8.5.2013)
- ↑ Why ARM’s EABI matters (englisch) – bei LinuxDevices von Andres Calderon und Nelson Castillo, am 14.3.2007
- ↑ … oder auch Hauptkern, denglisch auch offizieller Kernel genannt …
- ↑ SCO vs. Linux: Vertrauen für den Linux-Kernel [2. Update] – Heise, am 24.5.2004; u.a. mit ‚Developer's Certificate of Origin‘, siehe zudem auch (nur englisch) unter www.developercertificate.org
- ↑ [RFD] Explicitly documenting patch submission (englisch) – Linux-Kern-Archiv, am 23.5.2004; die drei Absätze ab der Zeile ‚These days, most of the patches in the kernel don't actually get sent […]‘
- ↑ Wikipedia:de:[Git]#Name (am 23.1.2020)
- ↑ git – Englisch-Deutsch-Übersetzung, beim Dict.cc (abgerufen am 31.1.2020)
- ↑ … siehe zudem ggf. auch (vor allem hinsichtlich der Wortherkunft) unter Wiktionary:de:Archiv …
- ↑ Wikipedia:de:[Linux (Kernel)]#Kernel-Versionen (am 18.9.2019) – u.a. auch mit dem Befehl ‚
uname -r
‘ (dort aber u.a. noch ohne Hervorhebung, wie hier bei derartigen Befehlen üblich) - ↑ Neue Kernel-Serie mit Linux 2.6.11.1 gestartet – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 5.3.2005
- ↑ ehemals wohl unter
[thread.gmane.org/gmane.linux.kernel/1147415]
zu finden, zu Linux 3.0-rc1 (englisch) – Linus Torvalds, am 30.5.2011; siehe zudem auch unter Wikipedia:de:[Linux (Kernel)#Fußnote 14] (am 18.11.2019) - ↑ index : kernel/git/torvalds/linux.git (englisch) – verfaßt von Linus Torvalds, veröffentlicht auf Git am 22.2.2015
- ↑ … auch dauerhafter, unter Wiktionary:de:[patchen] (mit letzter Änderung am 13.9.2019) – u.a. auch mit der zugehörigen (zeitlichen) Beugung (oder Flexion) ‚gepatcht‘ …
- ↑ … – sowie für die ältere und längere Lehnübersetzung „Langzeitunterstützung“, welche zum (veralteten) römisch-ammi-englischen Bezeichner Long Term Support gebildet wurde und zudem weiterhin oft ewiggestrig kurz mit LTS abgekürzt wird – …
- ↑ Active kernel releases (nur englisch) – zuletzt geändert am 25.11.2019; nur mit den gegenwärtig und künftig gepflegten Ausgaben
- ↑ … englisch end of life (und zudem kurz EOL) genannt …
- ↑ 36,0 36,1 36,2 Dateien gezählt mit dem Befehl
find . -type f -not -regex '\./\.git/.*' | wc -l
; siehe auch: Die Neuerungen von Linux 2.6.38 – von Thorsten Leemhuis für Heise, am 15.3.2011; ebenda unter „Daten und Zahlen zu den jüngsten Versionen des Linux-Kernels“ u.a. auch mit dem (hier) zuvorgenannten und nachfolgenden beiden Befehlen - ↑ 37,0 37,1 37,2 die sogenannten Quelltext- oder auch Kode-Zeilen gezählt mit
find . -type f -not -regex '\./\.git.*' | xargs cat | wc -l
- ↑ Größe gerundet auf Kilobyte bezogen auf ein mit gzip verdichtetes tar-Archiv (.tar.gz; siehe auch www.kernel.org)
- ↑ Happy Birthday, Tux – Oliver Diedrich über Heise, am 25.8.2006
- ↑ Die Geschichte von Linux – Heise, am 24.8.2011
- ↑ Release Notes for Linux v0.12 (englisch) – Linus Torvalds bei Kernel.org, (wahrscheinlich mit dem zugehörigen Kern) nach 1991 (mit)veröffentlicht
- ↑ 42,0 42,1 42,2 42,3 42,4 42,5 Die Woche: Linux wird 3.0 – verfaßt von Dr. Oliver Diedrich und veröffentlich über Heise, am 1.6.2011
- ↑ Large File Support in Linux (englisch) – verfaßt von Andreas Jaeger und veröffentlich über die (eigentlich [ursprünglich] mal deutsch[sprachig]e) SUSE GmbH, (zuletzt geändert) am 15.2.2005; siehe zudem ggf. auch (auf Deutsch) unter SUSE Linux-Dokumentation: Kapitel 34. Dateisysteme unter Linux / 34.4. Large File Support […]
- ↑ Neuer Firewall-Code für den Linux-Kernel – verfaßt von Oliver Diedrich und veröffentlich über Heise, am 21.10.2013
- ↑ LKML: Willy Tarreau: Linux 2.4.37.10 + 2.4 EOL plans (englisch) – Mitteilung über die dort sogenannte Linux-Kernel Mailing List, am 6.9.2010
- ↑ Größe gerundet auf Megabyte (größtenteils einfach erstmal mit den Werten aus der Wikipedia) bezogen auf ein mit gzip verdichtetes tar-Archiv (.tar.gz; siehe auch www.kernel.org)
- ↑ 47,0 47,1 die genannten Entwicklungszeiträume beziehen sich lediglich auf die Zusammenführung bereits entwickelter Kernteile, welche selbst teilweise mehrere Jahre zuvor bis zur Zusammenführung entwickelt wurden; siehe auch in den (Heise-)Kernel-Logs von Thorsten Leemhuis
- ↑ Linux-Kernel 2.6.13 veröffentlicht – Thorsten Leemhuis für Heise, am 29.8.2005
- ↑ Die Woche: Xen hat KVM vorbeiziehen lassen – verfaßt von Thorsten Leemhuis, für Heise, am 16.6.2011
- ↑ Linux-Kernel: Updates für Long-Term-Zweige – verfaßt von Jörg Thoma und veröffentlicht über Golem, am 4.5.2011
- ↑ Clever schachteln: Das neue Linux-Dateisystem Btrfs im Detail – Admin-Magazin, Ausgabe 04/2009
- ↑ Das Dateisystem Btrfs – Dr. Oliver Diedrich für das C’T-Magazin, am 7.7.2009
- ↑ Kernel-Log: Entwicklung von 2.6.39 angelaufen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 22.3.2011
- ↑ 54,0 54,1 Hauptentwicklungsphase von Linux 3.2 abgeschlossen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 8.11.2011
- ↑ Die Neuerungen von Linux 2.6.34 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 17.5.2010
- ↑ Kernel-Log – Was 2.6.34 bringt (2): Dateisysteme – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 23.4.2010
- ↑ Kernel-Log: Cluster-Dateisystem Ceph in 2.6.34, Kernel- und KVM-Vorträge von den CLT2010 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 22.3.2010
- ↑ Kernel-Log – Was 2.6.34 bringt (3): Grafik – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 5.5.2010
- ↑ The longterm Linux 2.6.35.14 kernel is released (englisch) – verfaßt von Andi Kleen und veröffentlicht über die Linux-Kernel-Mailing-List, am 1.8.2011
- ↑ Entwicklung von Linux 2.6.35 läuft an – verfaßt von Oliver Diedrich und veröffentlicht über Heise, am 31.5.2010
- ↑ Eine Flut neuer Stable-Kernel und ein Ausblick auf Linux 2.6.35 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 6.7.2010; u.a. auch mit ‚H264‘ und ‚Ironlake‘
- ↑ Die Neuerungen von Linux 2.6.36 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 21.10.2010
- ↑ Kernel-Log: 2.6.36, neue Stable-Kernel, frische Treiber – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 11.8.2010
- ↑ Hauptentwicklungsphase des Linux-Kernels 2.6.36 abgeschlossen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 16.8.2010
- ↑ Hauptentwicklungsphase des Linux-Kernel 2.6.37 abgeschlossen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 1.11.2010
- ↑ Kernel-Log: Wunderpatch integriert, verbesserte Grafiktreiber am Start – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 7.1.2011
- ↑ Kernel-Log – Was 2.6.38 bringt (6): Treiber – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 9.3.2011
- ↑ Kernel-Log: Erster Release Candidate von Linux 2.6.39 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 30.3.2011
- ↑ Die Neuerungen von Linux 2.6.39 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 19.5.2011
- ↑ BKL: That's all, folks (englisch) – verfaßt von Arnd Bergmann und veröffentlicht in Torvalds Linux-Git, genauer im dortigen Commit-Bereich, am 25.1.2011
- ↑ Größe gerundet auf Megabyte (zudem ggf. – die unter den offengezeigten Zahlen verdeckt mit Fragezeichen behafteten Werte – vorerst nur von den u.a. im Firefox und SeaMonkey falsch und umständlich als MB angezeigten Mibibytes in Bytes zurückgerechnet) bezogen auf ein mit xz verdichtetes tar-Archiv (.tar.xz; siehe auch www.kernel.org)
- ↑ Erste Vorabversion von Linux 3.0 erschienen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 30.5.2011
- ↑ Kernel: Linux 3.0 ist fertig – verfaßt von Jörg Thoma und veröffentlicht über Golem, am 22.7.2011
- ↑ Linux-Kernel 3.0 freigegeben – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 22.7.2011
- ↑ Kernel-Log – Was 3.1 bringt (3): Architektur, Infrastruktur, Virtualisierung – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 17.9.2011
- ↑ … den (untergeordneten) Gefüge-Teil oder auch teilweise ewiggestrig das sogenannte Teilsystem (im Englischen ‚[network] subsystem‘ genannt) …
- ↑ Android-Treiber sollen in Kernel 3.3 einfließen – verfaßt von Mirko Dölle und veröffentlicht über Heise, am 23.12.2011
- ↑ Sandy Bridge: Stromsparoption RC6 in Linux-Kernel funktionstüchtig – verfaßt von Jörg Thoma für Golem und veröffentlicht am 15.2.2012
- ↑ Kernel-Log – Was 3.3 bringt (4): Treiber – verfaßt von Thorsten Leemhuis für Heise und veröffentlicht am 8.3.2012
- ↑ Die Neuerungen von Linux 3.4 – verfaßt von Thorsten Leemhuis für Heise und veröffentlicht am 21.5.2012
- ↑ Kernel-Log – Was 3.5 bringt (1): Netzwerk – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 25.6.2012
- ↑ Kernel-Log: Entwicklung von Linux 3.6 läuft – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 2.8.2012
- ↑ Linux-Kernel 3.7 veröffentlicht – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 11.12.2012
- ↑ Kernel-Log – Was 3.8 bringt (1): Dateisysteme und Storage – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 21.1.2013
- ↑ Kernel-Log – Was 3.8 bringt (2): Infrastruktur – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 8.2.2013
- ↑ 86,0 86,1 Linux Kernel: Torvalds schließt Merge-Fenster für Linux 3.9 – verfaßt von Jörg Thoma und veröffentlicht über Golem, am 4.3.2013
- ↑ Meta SoC Processors (englisch) – ehemalige Seite bei Imagination Technologies, zuletzt im Internet-Archiv gesichert am 18.6.2013
- ↑ DesignWare ARC 700 Processor Core Family (englisch) – Seite bei Synopsys, zuletzt abgerufen am 23.12.2019
- ↑ Linux-Kernel 3.9 tritt in die Testphase ein – verfaßt von Hans-Joachim Baader und veröffentlicht über Pro-Linux, am 4.3.2013
- ↑ … auch im Wikiwörterbuch unter Wiktionary:de:Cache, dort auch zur „[Wort-]Herkunft“ …
- ↑ Kernel-Log – Was 3.10 bringt (4): Treiber – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 28.6.2013
- ↑ Die Neuerungen von Linux 3.9 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 29.4.2013
- ↑ Die Neuerungen von Linux 3.10 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 1.7.2013
- ↑ Kernel-Log – Was 3.11 bringt (2): Infrastruktur – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 19.8.2013
- ↑ "Linux for Workgroups": Funktionsumfang von Linux 3.11 steht – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 15.7.2013
- ↑ Linux 3.12 bringt Optimus- und SYN-Proxy-Unterstützung – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 17.9.2013
- ↑ Die Neuerungen von Linux 3.12 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 4.11.2013
- ↑ Kernel-Log – Was 3.12 bringt (1): Dateisysteme & Storage – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 8.10.2013
- ↑ Die Neuerungen von Linux 3.13 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 20.1.2014
- ↑ Kernel-Log – Was 3.13 bringt (5): Grafiktreiber – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 10.1.2014
- ↑ Kernel-Log – Was 3.13 bringt (1): Dateisysteme und Storage – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 10.12.2013
- ↑ 102,0 102,1 Prozessfristen: Linux 3.14 erhält Deadline Scheduler – verfaßt von Jörg Thoma und veröffentlicht über Golem, am 31.3.2014
- ↑ … siehe auch Wikipedia:de:ZIP-Dateiformat …
- ↑ Xen 4.4: virtuelle Maschinen für ARM – verfaßt von Peter Siering und veröffentlicht über Heise, am 10.3.2014
- ↑ … ununterbrechbar (Eigenschaftswort; zugehöriges Hauptwort: Ununterbrechbarkeit) auch (ewiggestrig, als
Begrifffremdes Adjektiv oder auch Eigenschaftswort) atomar (zugehöriges Hauptwort: Atomarität) genannt … - ↑ Kernel-Log – Was 3.15 bringt (1): Dateisysteme und Storage – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 6.5.2014
- ↑ Die Neuerungen von Linux 3.16 – verfaßt von Thorsten Leemhuis und (erst-)veröffentlicht im Heise-C'T-Magazin, am 4.8.2014
- ↑ Die Neuerungen von Linux 3.17 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 6.10.2014
- ↑ … siehe auch unter Wikipedia:de:[Liste von Dateisystemen]#Dateisystemkonzepte (mit letzter Änderung am 2.12.2019), dort u.a. auch mit ‚OverlayFS‘ (und bis dahin, als einziges der genannten Schriftengefüge, ebenda ansonsten noch ohne eigenen Eintrag oder ersatzweise nur in Englisch) …
- ↑ … siehe dazu ggf. auch unter Wikipedia:de:Tunnel (Rechnernetz) (am 15.1.2020) – dort u.a. mit „(das) Tunneln“ …
- ↑ … (später) wohl auch ‚Bpfilter‘ genannt und in der denglischsprachigen Wikipedia ewiggestrig und rückschrittlich bevorzugt Berkeley Packet Filter (also Paket mit [d]römischem c[k] geschrieben und dann auch noch sächlich, siehe auch Wikipedia:de:[Berkeley Packet Filter], am 2.11.2019), obwohl der Bezeichner schon besser eingedeutscht war (siehe auch am 22.7.2012 bei Golem, unter Linux: Kernel 3.5 ist fertig [Seite 2 von 2], und am 23.10.2017 im Linux-Magazin, unter All Systems Go!: Arm, aber sexy – beide männlich und Ersterer auch ungebeugt mit „der Berkeley Paket Filter“, zudem wäre in einer fortschrittlicheren und tatsächlich bevorzugt deutschsprachigen Wikipedia auch langsam mal eine Durchkopplung fällig (gewesen), also (wenigstens im Ansatz eingedeutscht zu) der Berkeley-Paket-Filter …
- ↑ Linux-Kernel 3.18 freigegeben – verfaßt von Hans-Joachim Baader und veröffentlicht über Pro-Linux, am 8.12.2014
- ↑ Linux 3.19 freigegeben: HSA-Support für AMD-Chips – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 9.2.2015
- ↑ Linux 3.19: Mehr für die Grafik und für das Netzwerk – verfaßt von Jörg Thoma und veröffentlicht über Golem, am 9.2.2015
- ↑ … bisher nur in Englisch, unter Wikipedia:en:OpenBinder, …
- ↑ Zeitgemäße Linux-IPC – Linux-Magazin, Ausgabe 02/2015
- ↑ … Nachbesserungen oder auch (ewiggestrig denglisch) sogenannte Updates , siehe dazu ggf. auch unter Wikipedia:de:Update und Wiktionary:de:Update, zudem im erstgenannten Eintrag (auch dauerhafter, mit letzter Änderung am 20.1.2020) ebenda u.a. auch mit „Verbesserung“, …
- ↑ …: Version 4.0 patcht sich selbst im laufenden Betrieb – verfaßt von Jörg Thoma und veröffentlicht über Golem, am 23.2.2015 (um 9:41)
- ↑ Linux-Kernel macht Versionssprung auf 4.0 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 23.2.2015 (um 9:28)
- ↑ Linux 4.1 freigegeben: Ext4 verschlüsselt jetzt selbst – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 22.6.2015
- ↑ Linux 4.2-rc1: Neuer Grafiktreiber von AMD integriert – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 6.7.2015
- ↑ … gemeint sind hier zum Einen (im Fall von Intels Skylakes) Rechnerkerne (also die Kerne von Rechnern – siehe auch unter Wikibooks:de:[Fruchtbringendes Wörterbuch: C#ce] (am 11.1.2020), ebenda u.a. auch mit Rechnerkern, womit aber auch weitere Teile gemeint sein könnten, siehe auch zur Prozeßsteuerung: Kapitel 5. Prozeßsteuerungshardware, unter 5.1. Rechnerkern, bei der Hochschule Niederrhein – üblicherweise aber römisch-denglisch „Hauptprozessor“ oder auch (seltener) „zentrale Verarbeitungseinheit“ und zudem kurz „ZVE“ genannt) und zum Zweiten (im Fall von AMDs Fijis, hier allgemeiner, einfach) einzelne Rechenkerne …
- ↑ Linux-Kernel 4.3 wird neue AMD- und Intel-Grafikprozessoren unterstützen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 5.9.2015
- ↑ Linux 4.3 wird IPv6-Unterstützung standardmäßig nutzen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 14.9.2015
- ↑ Linux 4.4 freigegeben: Neue Grafiktreiber und Optimierungen für SSDs – verfaßt von Thorsten Leemhuis für Heise und veröffentlicht am 11.1.2016 (um 7:12 MEZ)
- ↑ Kernel: Linux 4.4 erscheint mit Grafiktreiber für Raspberry Pi – verfaßt von Sebastian Grüner für Golem und veröffentlicht am 11.1.2016 (um 8:47 MEZ)
- ↑ Linux 4.5: Verbesserte 3D-Treiber und reibungslose Verbindungswechsel – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 25.1.2016
- ↑ Kernel: Linux 4.5-rc1 wertet AMDGPU mit Powerplay auf (Seite 1 von 2) – verfaßt von Ferdinand Thommes und veröffentlicht über Golem, am 25.1.2016
- ↑ Die Neuerungen von Linux 4.5 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 14.3.2016
- ↑ Linux 4.6 wird 3D-Beschleunigung aktueller GeForce-Chips unterstützen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 29.3.2016
- ↑ Kernel: Linux 4.6-rc1 mit neuem Dateisystem OrangeFS (Seite 1 von 2) – verfaßt von Ferdinand Thommes und veröffentlicht über Golem, am 28.3.2016
- ↑ Kernel: Linux 4.7-rc1 unterstützt AMDs Polaris (Seite 1 von 2) – verfaßt von Ferdinand Thommes und veröffentlicht über Golem, am 30.5.2016 (um 16:29)
- ↑ Linux 4.7 soll AMDs neue Radeon-Grafikkarten unterstützen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 30.5.2016 (um 8:34)
- ↑ Linux 4.7 vermeidet Netzwerk-Latenzen und unterstützt SMR-Festplatten besser – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 15.6.2016
- ↑ Linux 4.7 freigegeben: RX-480-Treiber und verbesserte Sicherheit – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 25.7.2016
- ↑ Betriebssysteme: Linux 4.8 übertaktet AMD-Grafikkarten – verfaßt von Jörg Thoma und veröffentlicht über Golem, am 8.8.2016 (um 16:21); dort u.a. auch mit „Datendeduplizierung oder Copy-On-Write“
- ↑ Linux 4.8 bringt Treiber für neue ARM-, Intel- und Nvidia-Grafikprozessoren – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 8.8.2016 (um 8:33); dort u.a. auch mit „doppelt geschriebene Daten zusammenfassen (Deduplication)“
- ↑ Linux 4.9 wird Sicherheit verbessern und neue Treiber bringen – verfaßt von Thorsten Leemhuis und veröffentlicht bei Heise, am 17.10.2016 (um 12:02 MESZ)
- ↑ Kernel: Linux 4.9rc1 erscheint mit Protokoll für Project-Ara-Module – verfaßt von Ferdinand Thommes und veröffentlicht bei Golem, am 17.10.2016 (um 17:24 MESZ)
- ↑ Erste Vorschau auf Linux-Kernel 4.10 – verfaßt von Hans-Joachim Baader und veröffentlicht über Pro-Linux, am 26.12.2016
- ↑ Linux 4.10[:] Neue Wege zur Grafikbeschleunigung in virtuellen Maschinen – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 17.1.2017
- ↑ Linux-Kernel 4.10 freigegeben – verfaßt von Hans-Joachim Baader und veröffentlicht über Pro-Linux, am 20.2.2017
- ↑ Linux-Kernel 4.11: Längere Akkulaufzeit durch NVMe-Stromspartechnik – Heise, am 6.3.2017
- ↑ … in Anlehnung an Einwegflaschen …
- ↑ Die Neuerungen von Linux 4.11 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 16.1.2018
- ↑ Die Neuerungen von Linux 4.12 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 24.11.2017
- ↑ Die Neuerungen von Linux 4.13 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, (zuletzt geändert) am 17.11.2017
- ↑ Die Neuerungen von Linux 4.14 – verfaßt von Thorsten Leemhuis und (erst)veröffentlicht über Heise, am 17.9.2017 (zuletzt geändert am 24.11.2017)
- ↑ Die Neuerungen von Linux 4.15 – verfaßt von Thorsten Leemhuis und (erst)veröffentlicht über Heise, (zuletzt geändert) am 12.2.2018
- ↑ Die Neuerungen von Linux 4.17 – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 4.6.2018
- ↑ Linux 4.18 freigegeben: Raspi-3-Support und Vorboten neuer Firewall-Technik – verfaßt von Thorsten Leemhuis und veröffentlicht bei Heise, mit letzter Änderung am 25.8.2018
- ↑ Linux 4.19: Flackerfrei starten und Strom sparen – Thorsten Leemhuis für das Heise-C'T-Magazin, Ausgabe 22/2018 (am 12.10.2018), Seite 40; dort auch „Verhaltenskodex“ (und römisch-englisch ‚Code of Conduct‘) genannt
- ↑ Linux 4.19: Schöner starten und bereit für das WLAN von Morgen – Thorsten Leemhuis für das Heise-C'T-Magazin, am 22.10.2018
- ↑ Vorlage:Internetquelle
- ↑ … auch (genauer und länger) zur zeitlichen Bild-Zusammenführung oder auch (kürzer, dafür aber teilweise ewiggestrig) Bild-Synchronisation genannt; siehe zudem ggf. auch unter Wiktionary:de:[syn-] (zuletzt geändert am 24.6.2018; u.a. auch mit „zugleich, gleichartig“) und …:chron- …
- ↑ … wohl eine freie Entwicklung (oder ein freier Nachbau) zu Nvidias proprietären – allgemeinverständlicher übersetzt – also unfreiem G-Sync …
- ↑ Linux 5.0 ist da: Geschwindigkeit zurückerobern und moderner speichern – verfaßt von Thorsten Leemhuis, veröffentlicht bei Heise am 4.3.2019
- ↑ Linux 5.1: Performance-Verbesserungen und neue Speichertechnik – verfaßt von Thorsten Leemhuis und veröffentlicht über Heise, am 6.5.2019
- ↑ Linux 5.2 freigegeben: Änderungsrekord und Geschwindigkeitsverbesserungen – C'T-Magazin, am 9.7.2019
- ↑ … auch bekannt als AMD-Radeon-5000-Serie …
- ↑ Kernel: Linux 5.3 unterstützt Navi und weiterhin Disketten (Seite 1 von 2) – Golem, am 16.9.2019 (um 10:42 MESZ)
- ↑ Betriebssystem: Linux 5.4 erscheint mit Kernel-Lockdown und Exfat-Treiber (Seite 1 von 2) – Golem, am 25.11.2019 (um 16:44)
- ↑ Linux 5.4 freigegeben: exFAT-Support und Einschränkungen für Root – Heise, am 25.11.2019 (um 6:43)
- ↑ Kernel: Vorschau auf Linux 5.4 bringt viele Security-Funktionen (Seite 1 von 2) – Golem, am 1.10.2019
- ↑ Linux 5.5 freigegeben: Wireguard-Fundament und Performance-Verbesserungen – Heise, am 27.1.2020
- ↑ 166,0 166,1 Wikipedia:de:[Scheduling] (am 4.12.2019) – u.a. auch mit: „Scheduling (englisch für „Zeitplanerstellung“)“ … und: Ablaufplanung
- ↑ The Next Generation – Linux 2.6: Fit für die Zukunft – verfaßt von Dr. Oliver Diedrich und veröffentlicht über die C'T-Ausgabe 24/2003, auf Seite 194, sowie auch (online, also) frei im Netz am 17.11.2003
- ↑ 168,0 168,1 Wikipedia:de:[Scheduler] (am 19.3.2019) – u.a. auch mit: englisch für „Planer, […]“
- ↑ Con Kolivas meldet sich mit neuem Scheduler zurück – verfaßt von Marcel Hilzinger und veröffentlicht über das Linux-Magazin, am 2.9.2009
- ↑ DocFetcher – Entwicklerseite bei SourceForge, anscheinlich zuletzt geändert 2018 (zuletzt abgerufen am 17.2.2020); die Anwendung gibt es auch als einfach übertragbare (oder auch portable) Ausgabe, siehe auch dortige Runterlade- oder (dort ewiggestrig) sogenannte Download-Seite
- ↑ DocFetcher – Chip, anscheinlich auch zuletzt geändert 2018 (zuletzt abgerufen am 17.2.2020)
- ↑ EventTrackingEnabledAttribute Klasse (denglisch) – Microsofts Docs (zuletzt abgerufen am 17.2.2020); dort u.a. auch mit „Ereignisüberwachung“
- ↑ Linux, GNU und Freiheit – deutsche Übersetzung, ursprünglich (auf Englisch) verfaßt von Richard M. Stallman, veröffentlicht über die FSF; zuletzt geändert am 30.12.2019 (und hier zuletzt abgerufen am 24.2.2020)
- ↑ GPL V3 and Linux – Dead Copyright Holders (englisch) – Nachricht auf der Linux-Kernel-Mailingliste, verfaßt von Linus Torvalds, am 25.1.2006 (zuletzt versucht abzurufen am 7.1.2019, article.gmane.org war zu der Zeit nicht abrufbar)
- ↑ … wenigstens was (auch) den Seitennamen angeht
- ↑ www.selflinux.org/selflinux – Ausgabe 0.12.3, also anscheinlich mit letzten Änderungen in den Jahren zwischen 2005 und 2007 (vergleiche auch sourceforge.net/projects/selflinux/files/SelfLinux, mit letzter Ausgabe 0.12.1, am 29.8.2005, und sourceforge.net/projects/selflinux/files/SelfLinux-devel, mit letzter Ausgabe 0.13.0, am 9.10.2007)
- ↑ … hier im Sinne von gemeinsam (oder auch allgemein also „alle angehend“) …
- ↑ … siehe auch – vor allem zur Aussprache – unter Wiktionary:de:Volk …