Linux kernel: 40 millió sor kód, több ezer fejlesztő – mit jelent ez a gyakorlatban?

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A Linux kernel az egyik legnagyobb és legaktívabban fejlesztett nyílt forráskódú projekt a világon, és az elmúlt évtizedben a mérete és a közössége is látványosan megnőtt. A legfrissebb statisztikák alapján a kódmennyiség, a fejlesztők száma és a vállalati részvétel olyan szintet ért el, amely már önmagában is mérnöki teljesítmény. A Linux Mintet használó felhasználók számára mindez nem csak érdekesség: közvetlenül befolyásolja a hardvertámogatást, a stabilitást, a biztonságot és a teljesítményt.

A Linux kernel 6.14-rc1 kiadásával 2025 januárjára átlépte a 40 millió sornyi kódot, egészen pontosan 40 063 856 sort tartalmazott. Ez a mennyiség 2015 óta gyakorlatilag megduplázódott: a 4.1-es kernel idején nagyjából 19 millió sor körül járt a kódbázis. A növekedés mögött nem „felfújt” kód, hanem új hardverplatformok, fájlrendszerek, driverek, biztonsági funkciók és architektúrák támogatása áll.

Ha történeti távlatból nézzük, a kontraszt még látványosabb. A legelső, 0.01-es kernelverzió 1991-ben mindössze 10 239 sor kódot tartalmazott. A 1.0.0-s verzió 1994-ben már 170 ezer sor fölé nőtt, majd a 2.x és 3.x ágak alatt fokozatosan bővült, míg a 4.x korszakra (2015 körül) elérte a több tízmilliós nagyságrendet. 2024 végére a 6.12-es kernel már 39 819 522 sornál tartott, ezt lépte át a 6.14-rc1 a 40 milliós határ fölé.

A növekedés üteme is jól mérhető. A 2024-es fejlesztési évben a kernelbe 3 694 098 új sor került be, miközben 1 490 601 sort töröltek. A nettó növekedés így nagyjából 2,2 millió sor volt. Ez átlagosan körülbelül 400 000 sor kód két havonta – ami jól illeszkedik a tipikus, nagyjából 8–10 hetes kernel-kiadási ciklushoz. A kód nem csak nő, hanem folyamatosan tisztul is: a törölt sorok jelentős része régi driverek, elavult API-k, vagy átszervezett alrendszerek kódja.

A kódbázis szerkezetét vizsgálva kiderül, hogy a Linux kernel túlnyomó része nem a „mag” (scheduler, memóriakezelés, IPC), hanem a perifériák és platformok támogatása. A statisztikák szerint a teljes kódmennyiség mintegy 60%-át a device driver alrendszer teszi ki. Ebben találhatók a hálózati driverek, GPU driverek, multimédia és hang driverek, tárolóeszközök, USB, PCI, és rengeteg speciális ipari vagy beágyazott eszköz támogatása. Ez magyarázza, hogy a kernel miért nő ilyen gyorsan: minden új hardvergeneráció, minden új SoC, minden új GPU-széria újabb és újabb kódrészeket igényel.

Az architektúraspecifikus kód a teljes kódbázis körülbelül 15%-át adja, több mint 4,5 millió sorral. Itt található az x86, ARM, RISC-V, PowerPC és más architektúrák támogatása: bootkód, alacsony szintű inicializálás, megszakításkezelés, memóriatérképek, platform-specifikus optimalizációk. A fájlrendszerek nagyjából 8%-ot, a hálózati alrendszer 7%-ot tesz ki. Maga a „core” kernel – scheduler, memóriakezelés, kernel/ és mm/ alrendszerek – mindössze 5% körüli arányt képvisel. A maradék nagyjából 5% dokumentáció és egyéb segédkomponens.

Ez a struktúra a Linux Mint felhasználói szempontjából is kulcsfontosságú: a disztribúciók – így a Mint is – elsősorban a driver- és architektúratámogatásból profitálnak. Az, hogy egy új laptop Wi-Fi-je, egy friss AMD vagy NVIDIA GPU, egy új generációs NVMe SSD vagy egy ARM-alapú fejlesztői board „out of the box” működik, nagyrészt a kernel driver-erdő folyamatos bővülésének köszönhető.

A fejlesztői aktivitás szintén rekordokat dönt. A 6.18-as kernelverzió, amely 2025 végén jelent meg LTS (hosszú távú támogatású) kiadásként, 2 134 fejlesztőt vonzott – ez a valaha mért legmagasabb szám egyetlen kernelkiadás történetében. Ezzel megdöntötte a 2023-as 6.2-es verzió 2 090 fős rekordját. A teljes 2025-ös LTS-ciklus – a 6.12-től a 6.18-ig – 80 035 változtatási csomagot (changeset) tartalmazott, amelyet 5 275 egyedi fejlesztő jegyzett.

Érdemes összevetni ezt az előző LTS-ciklussal (6.6–6.12), amelyben 86 715 changeset érkezett 5 111 fejlesztőtől. Bár a changesetek száma valamelyest csökkent, a fejlesztők száma nőtt. Ez arra utal, hogy a commitok átlagosan nagyobbak, átfogóbbak lettek, miközben a közösség szélesedett. A 2024-es év összesen 75 314 commitot hozott, ami kevesebb a 2023-as 87 993 commitnál, de a projekt aktivitása továbbra is nagyon magas, és a statisztikák szerint inkább a commitok jellegében, nem pedig a fejlesztés intenzitásában történt elmozdulás.

A belépő fejlesztők száma továbbra is stabil. A 6.12-es kernelben 335, a 6.18-asban 333 első alkalommal hozzájáruló fejlesztő jelent meg. A 6.14 volt a „legcsendesebb” ebből a szempontból 228 új közreműködővel, de ez még mindig jelentős utánpótlást jelent. Ez a nyitottság az, ami miatt a Linux kernel hosszú távon is fenntartható: a régi maintainer-ek mellé folyamatosan érkeznek új emberek, akik idővel alrendszerek felelőseivé válhatnak.

Az egyéni hozzájárulók között több név is kiemelkedik. Kent Overstreet 2024-ben közel 4 000 commitot jegyzett, elsősorban a Bcachefs fájlrendszerrel kapcsolatban. A Bcachefs egy modern, copy-on-write alapú, fejlett funkciókat (például checksumming, tömörítés, snapshotok) kínáló fájlrendszer, amelyet Overstreet hosszú évek óta fejleszt, és amelynek kernelbe integrálása jelentős mennyiségű kódot és refaktorálást igényel.

Uwe Kleine-König a Pengutronix-tól több mint 1 000 commitot adott le, főként a platform driver API refaktorálására koncentrálva. Az ilyen jellegű munka kevésbé látványos a felhasználók szemében, de kritikus a karbantarthatóság és a hosszú távú stabilitás szempontjából: egységesebb API-k, kevesebb duplikáció, tisztább interfészek.

Linus Torvalds maga 2024-ben 2 877 commitot vitt be, ezek döntő többsége merge commit. A kernel fejlesztési modelljében a maintainer-ek alrendszerenként gyűjtik a patch-sorozatokat, majd ezeket Torvalds integrálja a fő ágba. A merge commitok száma így jól tükrözi a beolvasztott alrendszeri fejlesztések mennyiségét. Greg Kroah-Hartman továbbra is a legaktívabb maintainer a stabil ágak és számos driver alrendszer kezelésével; az ő munkája kulcsfontosságú a disztribúciók – köztük a Linux Mint – számára, mivel a stabil kernelverziók karbantartása biztosítja a hosszú távú megbízhatóságot.

A vállalati részvétel ma már domináns a kernel fejlesztésében. A statisztikák szerint 2025-ben a commitok 84,3%-át vállalati fejlesztők írták, és több mint 1 780 szervezet vett részt a munkában. A cégek motivációja egyértelmű: a Linux kernel a szerverek, felhők, mobil eszközök, beágyazott rendszerek és szuperszámítógépek de facto szabványa, így a saját hardver és szolgáltatásportfólió támogatása stratégiai kérdés.

Intel továbbra is az első számú vállalati hozzájáruló a changesetek számát tekintve, nagyjából kétszer annyi változtatással, mint a második helyen álló Google. Az Intel számára a Linux kulcsfontosságú mind szerver-, mind desktop-, mind beágyazott fronton; a driverek, energiagazdálkodási funkciók, biztonsági javítások és teljesítmény-optimalizációk mind közvetlenül érintik az x86 ökoszisztémát.

A Google nem csak kódot küld, hanem jelentős sign-off aktivitást is mutat: a patchek körülbelül 12,5%-án szerepel Google-höz köthető aláírás. Ez azt jelzi, hogy a cég mérnökei aktívan részt vesznek a kódreview folyamatban is. Meta (Facebook) szintén fontos szereplő, mint maintainer-központ: a patchek mintegy 12,5%-a megy át Meta-affiliált reviewereken. Ez a nagy skálájú adatközponti és hálózati terhelések szempontjából kritikus: a cég saját igényeihez optimalizált fejlesztések jelentős része visszakerül a mainline kernelbe.

AMD elsősorban a GPU driverekre koncentrál, különösen az amdgpu driver regiszterdefinícióira és funkcióbővítéseire. Ez közvetlenül érinti a Linux Mint felhasználókat is: a modern Radeon kártyák nyílt meghajtóinak fejlődése a kernelben zajlik. Red Hat a core kernel és vállalati funkciók (virtualizáció, storage, skálázhatóság) területén aktív, míg Linaro az ARM architektúra támogatására specializálódott, ami az ARM-alapú laptopok, SBC-k (Raspberry Pi, stb.) és szerverek szempontjából fontos.

Huawei stabilan a top 5 vállalati hozzájáruló között maradt a vizsgált időszakban, különösen az ARM és hálózati technológiák területén. Oracle pedig a core kernel (fs/, mm/, kernel/ könyvtárak) hozzájárulásai között ért el top 5-ös helyezést a 6.2–6.15-ös verziókban, és az első helyet szerezte meg a 6.4, 6.10 és 6.13 verziókban, ahol a core hozzájárulások 12,3–17,3%-át adta. Ez jól mutatja, hogy a nagyvállalati Linux-disztribúciók mögött álló cégek nem csak „fogyasztják”, hanem aktívan formálják is a kernelt.

A kiadási ciklusok intenzitása is változott az utóbbi időben. A 6.14-es kernel a 4.0 óta a „leglassabb” ciklusnak számított, mindössze 11 003 changesettel. Ezzel szemben a 6.15-ös kiadás már ismét egy nagyon aktív periódust jelzett 14 612 changesettel, ami a 6.7 óta a legmozgalmasabb release volt. A 6.12-es LTS kiadás 13 344 changesetet és 2 074 fejlesztőt, a 6.13-as 12 928 changesetet és 2 001 fejlesztőt, míg a 6.18-as LTS 13 710 changesetet és 2 134 fejlesztőt vonzott.

A minőségbiztosítás szempontjából fontos mutató a kódreview és tesztelés jelölése. A 6.18-as kernelben a commitok 49,2%-a tartalmazott Reviewed-by taget, ami azt jelzi, hogy a patch legalább egy másik fejlesztő formális átnézésén átesett. 9,3% tartalmazott Tested-by taget, ami explicit tesztelési visszajelzést dokumentál. Daniel Wheeler (AMD) 6.3 óta a legaktívabb tesztelőként szerepel a statisztikákban, ami jól mutatja, hogy a GPU és grafikus stack fejlesztése intenzív tesztelést igényel.

A kód eloszlása alrendszerek szerint jól rávilágít arra, hogy a Linux kernel miért tud ennyi különböző felhasználási területet lefedni. A device driver dominancia azt jelenti, hogy a kernel valójában egy óriási, moduláris hardverabstrakciós réteg, amelyre a disztribúciók – így a Linux Mint is – ráépítik a saját felhasználói terüket. A fájlrendszerek 8%-os aránya mögött olyan technológiák állnak, mint az ext4, XFS, Btrfs, F2FS, és az újabb fejlesztések, például a már említett Bcachefs. A hálózati alrendszer 7%-a biztosítja, hogy a Linux egyaránt otthonosan mozogjon a desktop Wi-Fi kapcsolatoktól a nagyvállalati adatközpontok spine–leaf topológiáiig.

A jövőre nézve a statisztikák alapján több tendencia is kirajzolódik. A kódmennyiség várhatóan tovább nő, de a növekedés egyre inkább a driverek és architektúraspecifikus kód irányába tolódik, miközben a core alrendszerek inkább finomhangolást és refaktorálást kapnak. A vállalati részvétel valószínűleg továbbra is 80% felett marad, de a több ezer egyéni fejlesztő és az évente több száz új közreműködő biztosítja, hogy a projekt ne váljon egyetlen szereplő foglyává.

A Linux Mint felhasználók számára mindez a gyakorlatban jobb hardvertámogatást, gyorsabb hibajavításokat, fejlettebb fájlrendszereket és stabilabb rendszermagokat jelent. A disztribúciók kernelválasztása – LTS vagy mainline közeli verziók – közvetlenül kapcsolódik ezekhez a trendekhez. Az, hogy a kernel ma már 40 millió sornyi kódot és több ezer aktív fejlesztőt fog össze, nem csupán statisztikai érdekesség: ez az a mérnöki háttér, amelyre a modern Linux desktop, így a Linux Mint is épül.