Dimensiunea nucleului Linux a atins 40 de milioane de linii de cod sursă. Dintre cele 40 de milioane de linii, 24 de milioane se referă la codul driverelor (de exemplu, codul driverelor pentru GPU AMD ocupă aproximativ 5 milioane de linii), iar 4,4 milioane sunt specifice pentru diferite arhitecturi hardware (pentru a susține arhitectura x86 sunt folosite aproximativ 500 de mii de linii).
Începând din iulie 2024, dimensiunea nucleului a crescut cu 5 milioane de linii. Pragul de 30 de milioane de linii a fost depășit în vara anului 2022, 20 de milioane de linii - în toamna anului 2015, iar 10 milioane - în toamna anului 2008. Spre comparație, lansarea nucleului 0.0.1 a inclus doar 10 mii de linii de cod, iar 1.0.0 - 176 de mii de linii.
Dinamica creșterii bazei de cod (numărul de linii de cod sursă) a nucleului:
- 0.0.1 - septembrie 1991, 10 mii de linii de cod;
- 1.0.0 - martie 1994, 176 de mii de linii de cod;
- 1.2.0 - martie 1995, 311 mii de linii de cod;
- 2.0.0 - iunie 1996, 778 mii de linii de cod;
- 2.2.0 - ianuarie 1999, 1.8 milioane de linii de cod;
- 2.4.0 - ianuarie 2001, 3.4 milioane de linii de cod;
- 2.6.0 - decembrie 2003, 5.9 milioane de linii de cod;
- 2.6.28 - decembrie 2008, 10.2 milioane de linii de cod;
- 2.6.35 - august 2010, 13.4 milioane de linii de cod;
- 3.0 - august 2011, 14.6 milioane de linii de cod;
- 3.5 - iulie 2012, 15.5 milioane de linii de cod;
- 3.10 - iulie 2013, 15.8 milioane de linii de cod;
- 3.16 - august 2014, 17.5 milioane de linii de cod;
- 4.1 - iunie 2015, 19.5 milioane de linii de cod;
- 4.7 - iulie 2016, 21.7 milioane de linii de cod;
- 4.12 - iulie 2017, 24.1 milioane de linii de cod;
- 4.18 - august 2018, 25.3 milioane de linii de cod;
- 5.2 - iulie 2019, 26.55 milioane de linii de cod;
- 5.8 - august 2020, 28.4 milioane de linii de cod;
- 5.13 - iunie 2021, 29.2 milioane de linii de cod;
- 5.19 - august 2022, 30.5 milioane de linii de cod;
- 6.4 - iunie 2023, 32.9 milioane de linii de cod.
- 6.10 - iulie 2024, 35.1 milioane de linii de cod.
- 6.13 - ianuarie 2025, 39.8 milioane de linii de cod.
Ca o variantă pentru a reduce baza de cod a nucleului, s-a propus separarea driverelor într-un depozit diferit, însă această propunere nu este luată în serios din cauza complicării proceselor de testare și verificare a calității, precum și a apariției unor costuri suplimentare pentru sincronizarea interfețelor programatice. În timpul dezvoltării driverelor în cadrul nucleului principal, multe regressii care afectează driverele sunt imediat identificate în timpul revizuirii de către cei care asistă. În cazul separării dezvoltării, există pericolul ca codul driverelor să primească mai puțină atenție.
Sursa: opennet.ro
