El desarrollo del kernel de Linux sigue avanzando hacia su próxima versión, y entre las novedades más llamativas se encuentra una propuesta para habilitar por defecto las extensiones de Microsoft C, conocidas como -fms-extensions, en la rama de desarrollo kbuild-next. Estas extensiones, compatibles tanto con GCC como con Clang, permiten al compilador reconocer construcciones no estándar del lenguaje C inspiradas en Microsoft Visual C++, como el uso de estructuras y uniones anónimas dentro de otras estructuras.
La medida, orientada a simplificar y hacer más legible el código fuente del kernel, busca aprovechar ciertas características de Microsoft C que pueden resultar beneficiosas en contextos específicos del desarrollo del sistema operativo.
Aunque históricamente se ha mostrado cierta resistencia a adoptar elementos vinculados al ecosistema de Microsoft, la presencia de estos parches en kbuild-next indica que el cambio está cerca de ser aceptado para la ventana de fusión de Linux 6.19.
Un paso más hacia la integración
Los dos parches propuestos introducen la opción de compilación -fms-extensions de forma predeterminada en todo el proceso de construcción del kernel. Esto significa que todas las arquitecturas y componentes del sistema, al compilarse con GCC o LLVM/Clang, tendrán acceso a estas extensiones.
El desarrollador Rasmus Villemoes, uno de los impulsores de la propuesta, explicó que habilitar estas extensiones permitiría crear “un código más elegante y limpio”, al eliminar la necesidad de usar indicadores de compilación adicionales cada vez que se requiere una funcionalidad de Microsoft C. Villemoes argumenta que, al activarlas globalmente, se evitaría el debate caso por caso sobre su uso, facilitando un estilo de desarrollo más homogéneo dentro del kernel.
El respaldo implícito de Linus Torvalds
Aunque en el pasado propuestas similares no lograron superar la revisión en la lista de correo del kernel, esta vez la situación parece distinta. Linus Torvalds, creador de Linux, ha participado en la discusión y no ha mostrado objeciones a la activación de las extensiones -fms.
Esto sugiere que el cambio podría consolidarse de forma oficial en Linux 6.19, siempre y cuando no surjan objeciones de otros desarrolladores destacados. Uno de los parches asociados al sistema de compilación kbuild asegura que la opción -fms-extensions se aplique también a las arquitecturas que utilizan CFLAGS personalizadas, manteniendo la coherencia del compilado en todo el ecosistema del kernel.
La adopción de -fms-extensions representa un paso técnico más dentro de la evolución constante del kernel de Linux. Aunque puede parecer un detalle menor, la capacidad de admitir construcciones no estándar ofrece mayor flexibilidad en la escritura del código, sobre todo en estructuras complejas.
No obstante, parte de la comunidad ha expresado reservas sobre depender de características asociadas a Microsoft, temiendo que esto pueda afectar la portabilidad o la pureza del código C empleado en Linux. Aun así, la iniciativa cuenta con el respaldo de varios desarrolladores que consideran que las ventajas superan con creces las posibles desventajas.
Avances recientes en el kernel
Además de las discusiones en torno a las extensiones de Microsoft C, el kernel Linux 6.19 también incluirá correcciones en el controlador del sistema de archivos Minix, un formato con más de cuatro décadas de historia. Se han identificado errores de corrupción en este controlador, y las correcciones previstas mejorarán la gestión y recuperación de imágenes dañadas, haciendo que el sistema sea más robusto ante errores de lectura o escritura.
Esta mejora demuestra el compromiso continuo de los desarrolladores de Linux con el mantenimiento de compatibilidad retroactiva y la estabilidad de sistemas que, aunque antiguos, aún son utilizados en contextos educativos o experimentales.
Mientras se perfila la versión 6.19, el equipo del kernel continúa trabajando en las actualizaciones previas. Linux 6.18, actualmente en su quinta versión candidata (6.18-rc5), mejora el subsistema HID con nuevas funciones, como compatibilidad con paneles táctiles hápticos, mejor gestión del audio del controlador DualSense de Sony y mayor flexibilidad en HID-BPF.
También incorpora una seguridad reforzada en las llamadas ioctl de hidraw, nuevas funciones hápticas PIDFF y configuraciones avanzadas para Intel QuickI2C. Estas optimizaciones buscan ofrecer una mejor experiencia de usuario y aumentar la compatibilidad de hardware frente a los sistemas operativos propietarios.
Fuente: https://git.kernel.org/
Continúar leyendo...