Un estudio desmonta el aura de "perfección" de Linux: "Hay errores que tardan años en detectarse, uno de ellos ha pasado desapercibido más de 20 años"

La investigación pone de manifiesto la dificultad que acostumbra a existir para descubrir algunos fallos del sistema operativo. A veces durante lustros o décadas.
Hace apenas unos meses surgía la noticia de que el kernel de Linux evolucionaba para facilitar aún más las tareas de programación. Sin embargo, no todo son buenas noticias para el sistema operativo. O al menos, así lo asegura un nuevo estudio que, desde un punto de vista tan crítico como minucioso, pretende evidenciar sus debilidades y desmontar su supuesta "perfección".
La noticia no ha dejado de sacudir el mundo de la informática. No es ningún secreto que el núcleo de Linux siempre ha destacado por su robustez, además de por mejorar constantemente sus prestaciones. Si la investigación está en lo cierto, no obstante, una buena parte de sus errores pasarían desapercibidos durante años. En ocasiones, incluso décadas.
Los fallos de Linux al descubierto
El estudio, llevado a cabo por It’s FOSS se tomó su tiempo para analizar en profundidad el tema. Según publica el propio medio, sus responsables analizaron más de 125.000 errores corregidos en el kernel de Linux a lo largo de veinte años. ¿Y qué descubrieron al hacerlo? Pues que el tiempo habitual para detectar uno de estos errores solía ser de 2,1 años, haciendo una media.
Pero la cosa no termina ni mucho menos ahí, porque hay letra pequeña. El mismo informe pone de manifiesto que el 13,5% de los errores tardó 5 años o más en ser identificado. Por su parte, el 4,2 % permaneció oculto más de una década. En un caso en particular, relacionado con un error de desbordamiento de búfer en código de red, permaneció sin descubrir durante más de dos décadas.
Básicamente, lo que los expertos parecen poner de manifiesto es la dificultad de detectar ciertos problemas en un código que cuenta con millones de líneas y miles de contribuyentes. Es decir, donde la complejidad y el tamaño son un desafío en sí mismos en la gran mayoría de las ocasiones. Más allá de debates arbitrarios, los números están ahí, señalan los especialistas.
De la misma forma, el trabajo también encontró diferencias a tener en cuenta según los submódulos del kernel. Los módulos de CAN bus tuvieron un promedio de 4,2 años antes de que los bugs fueran detectados. Por el contrario, componentes más visibles y ampliamente probados, como drivers de GPU o filtros BPF, tenían tiempos de descubrimiento bastante más cortos: alrededor de un año.
El tiempo siempre es importante
A priori, los resultados del estudio podrían resultar simplemente llamativos o anecdóticos. Sin embargo, los propios creadores del mismo recuerdan que no se trata solamente de eso: también tienen implicaciones prácticas. Por ejemplo, no puede descartarse que un bug oculto sea explotado por cualquier hacker antes de ser descubierto.
Además, también se pone en relieve la dependencia de herramientas automatizadas. En especial porque muchos problemas solo se detectan bajo condiciones muy específicas o tras combinaciones de uso poco comunes.
