El tamaño del núcleo de Linux ha alcanzado el umbral de 40 millones de líneas de código fuente. De los 40 millones de líneas, 24 millones pertenecen al código de controladores (por ejemplo, el código de los controladores para GPU AMD ocupa alrededor de 5 millones de líneas), y 4.4 millones son específicos para diversas arquitecturas de hardware (para soportar la arquitectura x86 se utilizan aproximadamente 500 mil líneas).
Desde julio de 2024, el tamaño del núcleo ha aumentado en 5 millones de líneas. La marca de 30 millones de líneas se superó en el verano de 2022, 20 millones de líneas en otoño de 2015 y 10 millones en otoño de 2008. Para comparación, la versión del núcleo 0.0.1 incluía solo 10 mil líneas de código, mientras que la 1.0.0 incluía 176 mil líneas.
Dinámica de crecimiento de la base de código (número de líneas de código fuente) del núcleo:
- 0.0.1 — septiembre de 1991, 10,000 líneas de código;
- 1.0.0 — marzo de 1994, 176,000 líneas de código;
- 1.2.0 — marzo de 1995, 311,000 líneas de código;
- 2.0.0 — junio de 1996, 778,000 líneas de código;
- 2.2.0 — enero de 1999, 1.8 millones de líneas de código;
- 2.4.0 — enero de 2001, 3.4 millones de líneas de código;
- 2.6.0 — diciembre de 2003, 5.9 millones de líneas de código;
- 2.6.28 — diciembre de 2008, 10.2 millones de líneas de código;
- 2.6.35 — agosto de 2010, 13.4 millones de líneas de código;
- 3.0 — agosto de 2011, 14.6 millones de líneas de código;
- 3.5 — julio de 2012, 15.5 millones de líneas de código;
- 3.10 — julio de 2013, 15.8 millones de líneas de código;
- 3.16 — agosto de 2014, 17.5 millones de líneas de código;
- 4.1 — junio de 2015, 19.5 millones de líneas de código;
- 4.7 — julio 2016, 21.7 millones de líneas de código;
- 4.12 — julio 2017, 24.1 millones de líneas de código;
- 4.18 — agosto 2018, 25.3 millones de líneas de código;
- 5.2 — julio 2019, 26.55 millones de líneas de código;
- 5.8 — agosto 2020, 28.4 millones de líneas de código;
- 5.13 — junio 2021, 29.2 millones de líneas de código;
- 5.19 — agosto 2022, 30.5 millones de líneas de código;
- 6.4 — junio 2023, 32.9 millones de líneas de código.
- 6.10 — julio 2024, 35.1 millones de líneas de código.
- 6.13 — enero de 2025, 39.8 millones de líneas de código.
Como una de las opciones para reducir la base de código del núcleo, se ha propuesto extraer los controladores a un repositorio separado, pero esta propuesta aún no se considera seriamente debido a la complicación de los procesos de prueba y verificación de calidad, así como a la aparición de cargas de trabajo adicionales para la sincronización de interfaces de programación. Durante el desarrollo de controladores dentro del núcleo principal, muchas regresiones que afectan a los controladores se detectan de inmediato en el proceso de revisión por parte de los acompañantes. En caso de dividir el desarrollo, existe el peligro de que se preste menos atención al código de los controladores.
Fuente: opennet.ru
