Un vistazo a la composición del kernel Linux
El kernel Linux es un monstruo de la programación, compuesto por más de 61.000 archivos y más de 25 millones de líneas de código incluyendo documentación, ayudas, utilidades, etc., aportadas por más de 19.000 personas durante los más de 27 años que lleva disponible. Y la cabeza de los cambios, que no de las aportaciones de código, sigue su creador, Linus Torvalds, con en torno al 3% de commits.
Esto son cifras de 2018, de hace apenas un par de meses, según recogían en Phoronix a mediados del pasado septiembre, después de adiciones y retiradas masivas de código a lo largo del tiempo. Son estadísticas extraídas del sistema que incorpora GitHub, donde el repositorio del kernel Linux tiene su principal réplica.
Pero las estadísticas de GitHub permiten hacer más cosas y de eso va un pequeño e incipiente proyecto que ya pulula por la forja de software y que, a falta de avanzar, nos deja con una curiosa imagen. El proyecto es kernelstats, una aplicación Rust que extrae estadísticas sobre lanzamientos de Linux y que mediante Jupyter permite crear visualizaciones de los datos y la imagen es la siguiente.
Como se puede ver, la imagen no abarca toda la historia de Linux, pero sí bastante: desde la versión 2.6.12 lanzada a mediados de 2005 hasta la última que ha salido, Linux 4.19. Cuenta millones de líneas de código, pero lo interesantes es la distinción entre las diferentes áreas del kernel: arquitecturas, controladores, sistemas de archivos…
En definitiva, una imagen curiosa que nos enseña cómo y dónde ha ido engordando el kernel en todos estos años, o qué versiones han sido las que más contenido han recibido, por ejemplo Linux 4.2, que añadió la fiolera de más de un millón de líneas de código, o más recientemente Linux 4.12.