Linux (rendszermag)

A Linux-rendszermag vagy Linux-kernel egy nyílt Unix-szerű operációs rendszermag, amelyet Linus Torvalds finn számítástechnikus alkotott meg 1991-ben, azóta pedig Linus vezetésével számtalan fejlesztő dolgozik rajta a világ minden tájáról.

Linus eredetileg az Intel 386-os processzorára fejlesztette, de később számtalan más processzorra is alkalmazták. A Linux-kernel C-ben íródott (néhány GNU C kiegészítéssel), de tartalmaz assembly kódrészletet is (a GNU Assembler „AT&T-style” szintaxisával).

Mivel GPL licenccel fejlesztik, a Linux szabad szoftver.

A Linux-kernellel a legtöbben a GNU/Linux operációs rendszer magjaként találkoznak. Az ezen a kernelen alapuló szoftver disztribúciókat GNU/Linux disztribúcióknak nevezzük.

Története 
A projekt 1991 áprilisában indult, amikor Linus az azóta híressé vált üzenetét elküldte a Usenet comp.os.minix hírcsoportjára:

  „(Szabad) operációs rendszert készítek (csak szórakozásként, nem lesz olyan nagy és profi, mint a gnu) 386(486) AT kompatibilis számítógépekre…” 
Abban az időben a GNU projekt rengeteg olyan komponenst fejlesztett, amelyek egy szabad operációs rendszerhez szükségesek, de az ő kernelük, a GNU Hurd még nem készült el. A BSD nevű operációs rendszer körüli jogi problémák még nem tisztázódtak. Ezt a légüres teret töltötte ki a Linux-kernel, és a korlátozott képességei ellenére már a korai verziók is számos fejlesztőt és felhasználót gyűjtöttek maguk köré. A korai időkben a Minix hackerei ötleteikkel és kódolással segítették a Linux kernel fejlődését.

Ezt követően sok programozó csatlakozott a projekthez. 1991 szeptemberére elkészült a 0.01 verzió, ami már  sor kódot tartalmazott.
1991 októberében már a 0.02 verziónál járt a fejlesztés. Ugyanabban az évben decemberre elkészült a 0.11 verzió, ami az első önálló kernel volt, olyan értelemben hogy egy 0.11 verziójú linux kernelt futtató gépen le lehetett fordítani a 0.11 kernelt. Ezt követően Torvalds átvette a GNU GPL licencet. (Korábban a saját maga által barkácsolt licencet használta.)

1992 januárjában elindult az alt.os.linux newsgroup, amit két hónappal később, márciusban átneveztek comp.os.linux-ra. Ezzel egyidejűleg elkészült a 0.95 kernelverzió, ami már tudott X Window System-et (röviden X-et) futtatni.

Két évvel később, 1994 márciusában adták ki az 1.0.0 kernelt, amely már 176 250 sor kódot tartalmazott. Még egy évvel később, 1995 márciusában jelent meg az 1.2.0 verzió, ami már 310 950 sorból állt.

A linux kernel 2.0.0 verziója 1996 márciusában jelent meg. A fejlődés itt sem állt meg:

 1999. január: 2.2.0 verzió (1 800 847 sor)
 2001. január: 2.4.0 verzió (3 377 902 sor)
 2003. december: 2.6.0 verzió (5 929 913 sor)
Manapság már programozók ezrei vesznek részt a fejlesztésekben.

Fontos időpontok 
 1991. április – Az akkor 21 éves Linus Torvalds, elkezd dolgozni egy operációs rendszer pár egyszerű ötletén. Egy folyamat-váltóval és egy terminál-meghajtóval indul el 386-assemblyben.
 1991. augusztus 25. – Linus üzenetet küld a comp.os.minix hírcsoportra: 
"(Szabad) operációs rendszert készítek (csak szórakozásként, nem lesz olyan nagy és profi, mint a gnu) 386(486) AT kompatibilis számítógépekre. Már április óta folyamatban van, és kezd elkészülni. Örülnék bármilyen véleménynek arról, hogy mit szeretnek / nem szeretnek az emberek a minixen, mivel az én OS-em valamennyire hasonlít rá (többek között (gyakorlati okokból) a fájlrendszer fizikai elrendezése).

Jelenleg áthoztam a bash-t(1.08) és a gcc-t(1.40), és úgy tűnik, működnek a dolgok. Ez azt jelenti, hogy pár hónap múlva már lesz valami használható […] Nem – nincs benne minix kód, és többszálú fájlrendszere van. NEM hordozható (például mivel 386-os folyamatváltást használ), és valószínűleg sohasem fog AT-merevlemezeken kívül bármit is támogatni, mivel csak ilyenem van :-(.

[…] Főleg C-ben készül, de a legtöbb ember nem hívná C-nek amit írok. A 386 minden lehetőségét kihasználja, amit találtam, mivel a célom, hogy a 386-ról tanuljak. Ahogy már mondtam, MMU-t használ, lapozásra (még nem lemezen) és szegmentációra is. A szegmentáció teszi NAGYON 386-függővé (minden folyamat 64Mb-ot kap a kódnak és az adatoknak – legfeljebb 64 folyamat 4Gb-on. Ha valakinek több, mint 64Mb kell folyamatonként – az kellemetlen). […] Néhány "C" fájlom (konkrétabban az mm.c) majdnem annyira assembler, mint C. […] A minixtől eltérően én KEDVELEM a megszakításokat, így az okok elrejtése nélkül kezelem őket."
 1991. szeptember – Linus kiadja a Linux 0.01 verzióját. (10 239 sor programkód.)
 1991. október – Linus kiadja a Linux 0.02 verzióját.
 1991. december – Linus kiadja a Linux 0.11 verzióját. Ez az első olyan verzió, ami alól le lehet magát fordítani.
 1992. január 19. – Az első üzenet az alt.os.linux hírcsoporton. 
 1992. március 31. – Létrehozzák a newsgroup comp.os.linux hírcsoportot. 
 1992. március – A Linux 0.95 verziója az első, ami képes az X Window System futtatására.
 1993 és 1994 eleje – 15 0.99.* fejlesztői verzió. A 0.99.11 (1993. július) bevezette a kernelbe a BogoMipset.
 1994. március 14. – A Linux 1.0.0 kiadása. (176 250 sor programkód.)
 1995. március – A Linux 1.2.0 kiadása (310 950 sor programkód.)
 1996. május 9. – Tuxot, a pingvint javasolják a Linux kabalájának
 1996. június 9. – A Linux 2.0.0 kiadása. (777 956 sor programkód.)
 1999. január 25. – A Linux 2.2.0 kiadása, először számos hibával(1 800 847 sor programkód.)
 1999. december 18. – IBM nagyszámítógép javítások a 2.2.13-hoz. Ezzel Linux bekerült a legnagyobb vállalkozásokhoz.
 2001. január 4. – A Linux 2.4.0 kiadása. (3 377 902 sor programkód.)
 2003. december 17. – A Linux 2.6.0 kiadása. (5 929 913 sor programkód.)
 2005. június 17. – A Linux 2.6.12 kiadása.
 2005. augusztus 29. – A Linux 2.6.13 kiadása. 
 2006. június 17. – A Linux 2.6.17 kiadása. 
 2009. március 23. – A Linux 2.6.29 kiadása 
 2009. június 9. – A Linux 2.6.30 kiadása

Verziók 
Linus ma is tovább fejleszti a saját kódját, beépíti más programozók változtatásait, és kiadja a Linux kernel újabb és újabb verzióit. Ezeket "vanilla" (hagyományos) kerneleknek nevezzük, ami azt jelzi, hogy senki sem változtatott rajtuk. Sok GNU/Linux operációs rendszer szállítója módosítja a kernelt a termékeikhez, főleg olyan illesztőprogramok és szolgáltatások hozzáadásával, amiket még nem adták ki "stabil" csomagok részeként. Néhány disztribúció, mint például a Slackware, hagyományos kerneleket használnak.

A verziók számozása 
A Linux kernel verziószámozása jelenleg négy számból áll, a sokáig használt három szám helyett. Tegyük fel például, hogy a verziószám a következő: A.B.C[.D] (például 2.2.1, 2.4.13 vagy 2.6.12.3).

 Az A szám a kernel verzióját jelöli. Ez változik a legritkábban, és csak akkor, ha a programkódban és a kernel koncepciójában nagy változás történik. A kernel történetében négyszer változott: 1994 március 14 (1.0 verzió), 1996 június 9 (2.0 verzió), 2011 július 22 (3.0 verzió),  2015 április 12 (4.0 verzió).
 A B szám a kernel nagy átdolgozását jelöli. A páros számok stabil kiadásokat jelölnek, tehát olyanokat, amiket megfelelőnek találnak mindennapi használatra, például 1.2, 2.4, vagy 2.6. A páratlan számok fejlesztői kiadások, mint például az 1.1, vagy a 2.5. Új szolgáltatások és illesztőprogramok tesztelésére szolgálnak, amíg azok megfelelően stabilak nem lesznek, hogy bekerüljenek egy stabil kiadásba.
 A C szám a kernel kisebb átdolgozását jelöli. A régi háromszámos rendszerben ez biztonsági javítások, hibajavítások, új szolgáltatások és illesztőprogramok hozzáadásakor változott. Az új rendszerben azonban már csak új illesztőprogramok és szolgáltatások bevezetésekor változik; a kisebb javításokat a D szám jelöli.
 A D szám először akkor jelent meg, mikor egy súlyos, azonnali javítást igénylő hiba lépett fel a 2.6.8 Network File System (hálózati fájlrendszer) kódjában. Azonban nem volt elég változtatás, hogy egy új kisebb átdolgozást adjanak ki (ami a 2.6.9 lett volna). Így kiadták a 2.6.8.1-et, amiben az egyetlen változtatás a hiba kijavítása volt. A 2.6.11-től kezdve ezt a rendszert vezették be hivatalos számozásként. A hibajavításokat és biztonsági frissítéseket most a negyedik szám jelzi, a nagyobb változtatások pedig csak az új C számmal jelzett verziókba kerülnek be.

Stabil verziók 
 Az 1994. márciusi 1.0 verzió csak egy processzoros i386 gépeket támogatott.
 Az 1996. márciusi 1.2 verzió már támogatta az Alpha, SPARC és MIPS gépeket is.
 Az 1996. júniusi verzió már a szimmetrikus többprocesszoros rendszereket, illetve újabb processzorokat is támogatott.
 Az 1999. januári 2.2 verzió (The Wonderful World of Linux 2.2).
 A 2001. januári 2.4.0 verzió
 CPU támogatás: A Hewlett-Packard PA-RISC processzora, Az Axis Communications ETRAX CRIS ("Code Reduced Instruction Set") processzorai
 ISA Plug-and-Play hozzáadása
 USB és PC Card támogatás hozzáadása
 2.4.6: Bluetooth támogatás hozzáadása
 Fájlrendszer és adattárolás
 Logical Volume Manager 1-es verzió hozzáadása (LVM)
 RAID eszközök támogatásának hozzáadása
 2.4.15: InterMezzo fájlrendszer támogatásának hozzáadása
 További információ ebben az (angol nyelvű) cikkben: Wonderful World of Linux 2.4
 A 2003. december 17-ei 2.6 verzió
 uClinux (mikrovezérlőkhöz) integráció
 CPU támogatás: a Hitachi cég H8/300 sorozata, a NEC v850 processzora, és a Motorola beépített m68k processorai, NUMA támogatás, a NCR Voyager architektúrájának támogatása, az Intel hyperthreading és PAE ("Physical Address Extension" – fizikai cím bővítés) technológiáinak támogatása
 Az ALSA hang illesztőprogram integrációja
 OS támogatás:
 APIC támogatás fejlődött.
 Megemelték a felhasználók és felhasználói csoportok maximális számát 65,000-ről 4 milliárd fölé.
 Megemelték a folyamatazonosítók számát 32,000-ről egy milliárdra.
 Megemelték az eszköztípusok ("nagyobb eszközök") számát 255-ről 4095-re és az egy típusba tartozó eszközök ("kisebb eszközök") számát 255-ről több mint egymillióra.
 Fejlődött a 64 bites rendszerek és a 16 terabyte-nál nagyobb fájlrendszerek támogatása átlagos hardveren.
 Fejlődött az interaktív folyamatok "általános válaszideje" (a kernel teljesen preemptív lett, és az I/O ütemezőt újraírták).
 A futexek támogatása, a szálak infrastruktúrájának újraírása – így használhatóvá vált a Native POSIX Thread Library (NPTL).
 Fejlődött a modulok betöltése.
 A User Mode Linux integrációja.
 2.6.11: Infiniband támogatás
 Adattárolás
 LVM frissítése 2. verzióra
 A SGI XFS fájlrendszerének támogatása.
 Egy sysfs-nek nevezett új "rendszer fájlrendszer", ami a procfs-től vette át a rendszerrel kapcsolatos információk kezelését.
 2.6.12 (2005. június 17.) iSCSI támogatás
 2.6.13 inotify támogatás
 (további változások a következő (angol) cikkben: The Wonderful World of Linux 2.6)

Karbantartás 
Linus Torvalds a legújabb programkódok felügyeletét végzi, és ő adja ki a tesztelésre szánt kernel verziókat. A régebbi verziók karbantartásával több programozót bízott meg:

Egyéb Linux kernelprogramozók, többek között Robert Love, Molnár Ingó, és Miguel de Icaza. (A Linux KARBANTARTÓK fájlja).

Jogi kérdések

Licenc 
Torvalds kezdetben olyan licenc alatt adta ki a Linuxot, ami minden nemű kereskedelmi felhasználást tiltott. Azonban hamarosan váltott a GNU GPL licencre, amely megengedi a Linux terjesztését és kereskedelmi forgalmazását akár érintetlen akár módosított formában, azzal a feltétellel, hogy az így keletkező terméket csak a GNU GPL licenc alatt szabad terjeszteni és minden esetben mellékelni kell a teljes forráskódot.

A licencváltást Torvalds később úgy jellemezte, hogy az volt a legjobb dolog, amit valaha tett:
Making Linux GPL'd was definitely the best thing I ever did.

GPL 3 verzió 
A Linuxot jelenleg a GNU GPL 2 verziója alatt adják ki. Vitatott, hogy könnyen át lehetne-e állni a GPL 3 verzióra, illetve hogy egyáltalán szükség-e ez a lépés. A 2.4.0 kernelverzió kiadásakor Torvalds nyomatékosan kijelentette, hogy az ő összes kódjára a GPL 2 vonatkozik. 2006 szeptemberében végeztek egy felmérést 29 kulcsfontosságú kernelfejlesztő körében arról, hogy melyik licencverzió tetszik nekik jobban. A megkérdezett 29-ből 28 személy találta a GPL 2 verziót szimpatikusabbnak a GPL 3-nál, tehát Torvalds nincs egyedül a véleményével.

Betölthető kernelmodulok 
Megoszlanak a vélemények arról, hogy a betölthető kernelmodulok vajon származtatott munkának számítanak-e és azáltal a GNU GPL alá esnek-e. Richard Stallman szerint a forráskód nélkül terjesztett kernelmodulok által a Linux megszűnik szabad szoftvernek lenni és ezek a kernelmodulok megszegik a GPL-t. A Linux közösség véleménye sokféle, maga Torvalds is egyrészt kijelentette, hogy minden kernelmodul definíció szerint származtatott munkának minősül, tehát a GPL vonatkozik rá, azonban arra is rámutatott, hogy vannak driverek, amelyeket eredetileg nem is Linuxra írtak és nem is használnak ki semmilyen Linux-specifikus működést.

Védjegy 
A Linux szó bejegyzett védjegy az Egyesült Államokban és néhány más országban is. Erre azért volt szükség, mert egy illetéktelen személy bejegyeztette a nevet és pénzt kezdett követeleni a használatáért. Linux támogatók egy csoportja bírósághoz fordult az ügyben, melynek eredményeként 1997 augusztusában a védjegy Torvalds birtokába került.

Technikai jellemzők

Architektúra 
A Linux kernel technikailag valódi többfeladatú (multitasking), virtuális memóriát és osztott könyvtárakat használó, demand loading, shared copy-on-write futtatható állományokat támogató, helyes memóriakezelésű, TCP/IP hálózatot kezelő rendszermag.

Ma a Linux egy modulokra épülő monolitikus kernel. A meghajtóprogramok és kernel-kiterjesztések általában ring 0 módban futnak, teljes hozzáféréssel a hardverhez, pár kivétel azonban felhasználói térben (user space) fut. A szokványos monolitikus kernelektől eltérően az eszközillesztő-programokat könnyű beállítani, mivel a modulok a rendszer futása közben betölthetőek és eltávolíthatóak. Még egy különbség a Linux és a szokványos monolitikus rendszermagok között, hogy az illesztőprogramok bizonyos feltételek mellett preemptíven kezelhetőek. Az utóbbi szolgáltatást a hardveres megszakítások megfelelő kezeléséhez, és a szimmetrikus multiprocesszoros rendszerek jobb támogatásáért adták hozzá a kernelhez. A preempció javítja a rendszer válaszadási idejét is, alkalmasabbá téve a Linuxot valós idejű alkalmazások futtatására.

A tény, hogy a Linux nem egy mikrokernel egy híres flame war tárgya volt Linus Torvalds és Andy Tanenbaum között 1992-ben a comp.os.minix hírcsoporton.

A Linux kernel számos verziójának forráskódja elérhető a https://web.archive.org/web/20050923210216/http://lxr.linux.no/ címen.

Kernelpánik 

A kernelpánik olyan kernel szintű hiba esetén lép fel, amikor a kernel nem képes tovább működni. A kernelkódból meghívható a sys/system.h headerben definiált panic() függvény, ami ezt az állapotot jelzi. A kernelpánik leggyakrabban lekezeletlen kernelkód kivételekből adódik, mint például az érvénytelen memóriaterületre való hivatkozás. Ritkább esetben hardverhiba is kiválthatja a kernelpánikot.

Programozási nyelvek 
A Linux kernel a C programozási nyelv GNU GNU Compiler Collection által támogatott verzióban íródott (ami nem korlátozódik a szabványos C-re), kiegészítve viszonylag rövid Assembly programozási nyelv hardverspecifikus részekkel (a legutóbbi számláláskor a Linux körülbelül 20 különböző processzor-családot támogatott). A GCC által támogatott C-kiegészítések (és a kapcsolódó eszközök) miatt sokáig csak a GCC-vel lehetett a Linux kernelt helyesen lefordítani. Az Intel állításai szerint megváltoztatta a C fordítóját úgy, hogy már az is képes a kernel fordítására.

Sok más programnyelvet is használnak valamilyen módon, elsősorban a kernel fordításakor (mikor a forrásokból létrehozzák a bootolható képet). Ezek a nyelvek többek között a Perl, Python, és számos shell script programnyelv. Néhány illesztőprogram íródhat C++-ban, Fortranban, vagy más nyelveken, de ez nem ajánlott.

Hordozhatóság 
Bár eredetileg nem szánták hordozható operációs rendszernek, a Linux ma az egyik legtöbb architektúrán használható rendszermag (bár a NetBSD megközelíti). Fut az iPAQ rendszerektől (egy kézi számítógép) kezdve az IBM System z9-én (egy nagyszámítógép szerver, ami több száz, vagy akár több ezer Linuxot is képes futtatni). A tervek szerint az IBM új Blue Gene szuperszámítógép architektúrájának elsődleges operációs rendszere a Linux lesz. Linus, talán humorosan, beépítette a kernelbe a BogoMipset, mint a rendszer teljesítményének mérésére alkalmas (ál)eszközt.

Fontos megjegyezni, hogy Linus erőfeszítései egy másfajta hordozhatóság terén is kifizetődtek. A hordozhatóság Linus szerint az volt, hogy a rendszeren bármilyen forrásból származó alkalmazást könnyű legyen lefordítani. Így a Linux eredetileg részben azért vált népszerűvé, mert ezen a rendszeren került a legkisebb erőfeszítésbe a népszerű GPL licencű és más nyílt forráskódú alkalmazások üzembehelyezése.

A Linux jelenleg a következő architektúrákon fut:
 ARM
 Acorn: Archimedes, A5000 és RiscPC sorozatok
 StrongARM, Intel XScale, stb.
 HP iPAQ
 Nintendo DS (DS Linux Project)
 Apple iPod (IPodLinux iPodLinux Project)
 Axis Communications CRIS
 Hewlett-Packard Alpha
 Hewlett-Packard PA-RISC
 Hitachi: SuperH (Sega Dreamcast), H8/300
 IBM S/390 (31-bit)
 IBM zSeries és System z9 nagyszámítógépek (64-bit)
 Intel 80386 és felette: IBM PCk és kompatibilis processzorok:
 80386, 80486, és az AMD, Cyrix, TI és IBM változataik
 A teljes Pentium sorozat;
 AMD 5x86, K5, K6, Athlon (az összes 32 bites verzió), Duron;
 AMD64: az AMD 64 bites processzor technológiája (előzőleg x86-64-ként volt ismert)
 Cyrix 5x86, 6x86 (M1), 6x86MX és a MediaGX (National/AMD Geode) sorozatok.
 VIA Technologies VIA C3 és későbbi processzorok
 A 8086, 8088, 80186, 80188 és 80286 CPU-k támogatása fejlesztés alatt áll (lásd: a ELKS projekt)
 Microsoft Xbox (Pentium III processzor) (lásd: Xbox Linux)
 Intel IA-64
 MIPS
 Silicon Graphics
 Cobalt Qube, Cobalt Raq
 Sony PlayStation 2 (lásd: PS2 Linux)
 DECstation
 és még mások
 Motorola 68020 és felette:
 Az újabb Amigák: A1200, A2500, A3000, A4000
 Apple Macintosh II, LC, Quadra, Centris és a korai Performa sorozat
 Sun Microsystems 3-sorozatú munkaállomások (kísérleti, a Sun-3 MMU használatával)
 A nem SUN 68020 alapú gépeknél szükség van a Motorola 68851 PMMU-ra (memóriakezelő egység)
 NEC v850e
 Renesas M32R
 PowerPC és IBM POWER:
 A legtöbb új Apple számítógép (az összes PCI-alapú Power Macintosh, korlátozott mértékben a régebbi NuBus Power Mac gépek)
 A Power Computing, az UMAX és a Motorola által kiadott PCI Power Mac klónok
 "Power-UP" kártyákkal (például Blizzard vagy Cyberstorm) kiegészített Amigák
 IBM RS/6000, iSeries és pSeries rendszerek
 Pegasos I és II alaplapok
 számos beágyazott PowerPC platform
 SPARC és UltraSPARC: Sun 4-sorozat, SPARCstation/SPARCserver, Ultra, Blade és Fire sorozatú munkaállomások és szerverek, illetve a Tatung és mások által készített klónok.

A támogatott rendszerek teljes listája elérhető itt: Linux Ports.

Támogatott bináris formátumok 
A Linux 1.0 még csak az a.out bináris formátumot támogatta. Az 1.2 sorozatban jelent meg az ELF (Executable and Linkable Format) formátum támogatása, amellyel egyszerűbben lehet kezelni a megosztott könyvtárakat (shared library).

Eredetileg, a linux csak a kernel neve volt.
A "kernel" attribútumot olyan alacsony szintű rendszerprogramoknak adják,
amelyek tartalmaznak egy hardver absztrakciós réteget, lemez- és fájlrendszervezérlést, többfelhasználós üzemmódot, terheléskiegyenlítést, hálózati támogatást és biztonsági modulokat.

A kernel önmagában még nem teljes értékű operációs rendszer (a szó szoros értelmében).

A teljes rendszert, mely a Linux kernel köré épült, gyakran Linux operációs rendszerként említik, bár egyesek ragaszkodnak a GNU/Linux elnevezéshez és ez alapján alakult ki a GNU/Linux elnevezési vita.

Egyesek néha keverik a kernel és az operációs rendszer fogalmakat és ez számos téveszméhez vezet
pl ahhoz, mely szerint Torvalds valaha írt vagy karbantartott volna más részeket is a rendszerben, mint a kernel.

Logó 
A Linux kabala egy Tux nevű pingvin, akit Larry Ewing készített.

A Tux pingvinnek sok változata létezik, néhány 3 dimenzióban.

A kabala azért a pingvin, mert, ahogy Torvalds mondta, "Linus szereti a pingvineket. Ennyi." A Tux nevet a (T)orvalds (U)ni(X) rövidítéseként javasolták.

Források 
 Torvalds, Linus; Diamond, David (2001). Just For Fun: The Story of an Accidental Revolutionary. HarperBusiness.  (hardcover); HarperAudio  (audio tape, abridged ed., read by David Diamond) – on the beginnings of the Linux kernel
 , Nikolai Bezroukov. Portraits of Open Source Pioneers. Ch 4: A benevolent dictator (Softpanorama e-book).
 LinkSys and binary modules, LWN.net Weekly Edition, October 16, 2003.
 Revolution OS – a documentary on the history of Linux featuring several interviews with prominent hackers, including Torvalds
 LinkSys and binary modules, LWN.net Weekly Edition, October 16, 2003.

Jegyzetek

További információk 

 www.kernel.org – The Linux Kernel Archives, the official kernel repository
 Linux Kernel HowTo
 Kernel Traffic, a summary of the high-traffic Linux kernel mailing list
 KernelTrap
 LWN.net kernel page
 Linux Kernel Source Code Viewer
 Linux Kernel Janitor
 Linux Device Drivers, 3rd Edition
 Understanding the Linux Kernel, 2nd Edition
 Linux: The GPL And Binary Modules
 The Linux kernel in colour

The following are to be merged
 https://web.archive.org/web/19990117070510/www.forbes.com/forbes/98/0810/6203094a.htm
 http://old.lwn.net/2001/features/Timeline/
 http://www.nd.edu/~ljordan/linux/tuxhistory.html
 http://www.linuxjournal.com/article.php?sid=6000
 https://web.archive.org/web/20060910125820/https://netfiles.uiuc.edu/rhasan/linux/

Linux 2.6 
 Upgrade to 2.6 kernel
 The Wonderful World of Linux 2.6; Joseph Pranevich; 2003. december
 Understanding the Linux 2.6.8.1 CPU Scheduler; Josh Aas, 17th February 2005

Hivatkozások a kernellel kapcsolatos anyagokra 
 Linux kernel @ dmoz.org
 Linux kernel @ google
 http://www.linuxlinks.com/Kernel/
 http://www.topology.org/soft/lkernel.html
 http://loll.sourceforge.net/linux/links/Kernel/
 https://web.archive.org/web/20050924232356/http://www.linux.org/dist/kernel.html
 Kernel Newbies.org
 Linux Kernel Developers' e-mail list

Linux