ARTDEPARTMENT

Solicitar una consulta

El kernel de Linux lleva desarrollándose 34 años. Un debate sobre lenguajes de programación está logrando intoxicar el proyecto

Publicado el 
febrero 17, 2025

El expansión del kernel de Linux ha sido, históricamente, un ecosistema en constante cambio, en el que Linus Torvalds (creador, y líder de su equipo de desarrolladores) ha ido tomando decisiones que han permitido que el sistema eficaz fuera progresando hasta su estado presente.

Sin incautación, ahora las cosas parecen haberse 'gripado' un poco en el kernel de Linux. De todas las cosas que se habían tocado en el mismo, el idioma en el que está escrito nunca había estado en la letanía.

Pero ahora, la (supuestamente aprobada, aunque nadie lo diría) propuesta de integrar Rust como un segundo idioma de expansión, no sólo ha generado un profundo debate entre desarrolladores, sino que parece haberlo sembrado de minas.

Desde su propuesta en 2021 por Miguel Ojeda hasta las recientes dimisiones de ingenieros secreto, la controversia en torno a Rust ha escaso un punto crítico tras la dimisión de Héctor Martín, desarrollador de Asahi Linux. Ya os hablamos hace un par de días del propio Martín, pero ¿cómo le está afectando todo esto al ecosistema Linux?

La carrera de programador en 2017 y en el futuro (con Javier Santana)

¿De dónde venimos?

Rust es un idioma de programación diseñado para evitar errores de memoria y mejorar la seguridad en la concurrencia. Estas características suelen ser mucho valoradas en el expansión de sistemas críticos (como lo es el kernel de Linux), donde los errores de memoria pueden originar vulnerabilidades explotables.

En abril de 2021, Miguel Ojeda propuso un RFC (Request for Comments) para integrar Rust en el kernel. La idea central era que Rust se utilizara, al menos inicialmente, en el expansión de drivers, sin que eso supusiera reemplazar el código cojín en C.

Máxima tensión entre desarrolladores de Linux por el enfrentamiento C vs. Rust: Linus Torvalds ve un "tono casi religioso" en el debate

Sin incautación, la propuesta igualmente encontró resistor por diversas razones:

  • Curva de enseñanza: Los mantenedores de código tendrían que asimilar Rust para poder permanecer y depurar el código.
  • Impacto en el rendimiento: Los "wrappers" necesarios para la interoperabilidad con C podrían afectar el rendimiento.
  • Carga de mantenimiento: La coexistencia de dos lenguajes interiormente del kernel podría originar problemas a extenso plazo.
  • Compatibilidad con el maniquí de memoria de Linux: Rust utiliza el maniquí C11 de LLVM, diferente al del kernel de Linux, lo que plantea problemas de integración.

A cara de perro

A medida que avanzaban los debates, la comunidad de desarrolladores se dividió en dos grupos:

  1. Los defensores de Rust, entre ellos empresas tecnológicas como Google y Microsoft, que argumentan que la admisión de Rust mejorará la seguridad del kernel.
  2. Los opositores a Rust, encabezados por mantenedores secreto, quienes ven la entrada de un segundo idioma como un obstáculo para la estabilidad y mantenimiento del código.

Uno de los puntos más problemáticos ha sido la llamativo resistor de algunos desarrolladores a aceptar código escrito en Rust, incluso luego de que se diera oficialmente luz verde a la integración en el kernel de este nuevo idioma.

Así, se han reportado casos de ignorancia deliberada de parches, dilación extrema en las revisiones y críticas agresivas a los desarrolladores de Rust. Un ejemplo sobresaliente es el de Christoph Hellwig, quien ha rechazado rotundamente la inclusión de Rust en su radio de expansión, refiriéndose a este como "un cáncer que no debe propagarse al 'core' del kernel".

Esta ademán ha sido traza por algunos como una demostración de cierto sesgo por parte de Torvalds y el resto de líderes del plan, sobre todo teniendo en cuenta que, mientras otros desarrolladores han sido sancionados por "idioma inapropiado", Hellwig no ha recibido reprimenda alguna.

Un espectáculo lamentable

Uno de los acontecimientos más significativos de esta crisis ha sido la dimisión de Wedson Almeida Filho, ingeniero de Microsoft y uno de los principales impulsores de Rust en el kernel. Wedson renunció hace cinco meses, tras abriles de esfuerzo por integrar Rust, afirmando que el problema no era técnico, sino humano. Su salida fue seguida por declaraciones de apoyo de Lina, VRtuber y desarrolladora de Asahi Linux, que afirmó sentirse igual de frustrada por la ademán hostil de la comunidad.

Otros desarrolladores, como Greg Wettstein, igualmente han expresado su descontento con la errata de liderazgo en el tema: describió el conflicto como "un espectáculo lamentable" y criticó la pasividad de Linus Torvalds a la hora de diligenciar este problema.

Usar Rust en Linux está siendo muy polémico. En Android ya se han demostrado sus grandes virtudes reduciendo bugs

La (no) respuesta de Linus Torvalds

Y es que Linus Torvalds, creador de Linux y máxima autoridad en su expansión, ha mantenido una postura ambigua respecto a Rust: su comentario "on the whole I don't hate it" ("en genérico, no lo odio") ha sido interpretado de maneras muy distintas a uno y otro lados del debate.

Torvalds se encuentra en una confluencia: si apoya Rust, podría poner en su contra a veteranos mantenedores de código que se oponen firmemente a la idea; si lo rechaza, decepcionará a las empresas y desarrolladores que han invertido tiempo y capital en la iniciativa.

Esta indecisión ha generado incertidumbre, permitiendo que el conflicto escale sin una resolución definitiva y contribuido a la salida de varios desarrolladores. En definitiva, ha generado un dominio de innecesaria tensión interiormente de la comunidad.

Ya sabemos de dónde venimos. ¿Y ahora? ¿A dónde vamos?

La controversia ha demostrado que la integración de nuevas tecnologías en un plan tan conspicuo y antiguo como Linux no es un proceso sencillo. Sin un liderazgo claro y una resolución firme, la comunidad se arriesga a seguir perdiendo talento.

Si admisiblemente Rust ofrece beneficios en términos de seguridad, la forma en que se ha manejado su admisión ha dejado mucho que desear. La errata de un consenso claro y la resistor de algunos sectores (llegados a este punto, nadie parece muy dispuesto a transigir) podrían traducirse en el fracaso de esta iniciativa.

Una cosa es segura: lo que ocurra en los próximos meses podría concretar no solo el futuro del uso de Rust en el kernel, sino igualmente la civilización de expansión de uno de los proyectos de software rescatado más importantes del mundo.

Imagen  | Marcos Merino mediante IA

En Genbeta | Rust parecía el idioma ideal para programar videojuegos. Este estudio acabó abandonándolo tras tres abriles centrados en él

Source link

Compartir este artículo

[social_warfare]

Consultoria Personalizada

¡Si aun no tienes presencia en internet o 
necesitas ayuda con tus proyectos, por favor, escribenos!

Enviar Consulta Gratis

Más para leer

En ARTDEPARTMENT nos especializamos en brindar soluciones para que tu negocio, empresa o proyecto sea visible en internet.

Diseño WEB

Hosting

Google Ads

WordPress

Posicionamiento SEO

cloud-syncearthbullhorn linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram