Microsoft tiene su propia «Agenda 2030» para Windows: cambiar todo su código fuente y meter más IA y WebView2

Microsoft lleva tiempo buscando la forma de reforzar la seguridad de todo su sistema Windows. Y es que muchas de las vulnerabilidades que nos encontramos hoy en día en el sistema se deben a fallos de programación heredados del uso de lenguajes antiguos como C o C++. Aunque poco a poco se van corrigiendo estos fallos de seguridad, esto no es más que una solución temporal. Por ello, el gigante de Redmond se ha propuesto empezar con uno de los cambios más ambiciosos de la historia del sistema operativo: reescribir grandes partes de Windows en un lenguaje de programación diferente: Rust.

La mayor parte del código fuente de Windows está escrito en C y C++, los dos lenguajes de programación más usados en los años 80. Aunque los problemas heredados del uso de estos lenguajes han dado más de un dolor de cabeza a Microsoft, reescribir partes del código de Windows, que utilizan lenguaje heredado, desde cero es una tarea prácticamente imposible para una compañía. O, al menos lo era hasta la llegada de la Inteligencia Artificial.

La IA, nos guste más o menos, ha abierto un nuevo mundo de posibilidades, tanto para los usuarios domésticos que la utilizan en el día a día como, sobre todo, para empresas. La llegada de los asistentes de programación, por ejemplo, permiten a las empresas desarrollar proyectos que antes eran totalmente inviables. Microsoft, por supuesto, ha visto en esta IA una oportunidad de oro. Y no solo para hacer más dinero con ella, sino también para llevar a cabo proyectos que antes no podía por falta de presupuesto, personal y recursos. Y uno de los más ambiciosos ya es oficial: cambiar grandes partes del código fuente de Windows a Rust.

Captura de pantalla del Menú Inicio de Windows 11, un ejemplo de componente de la interfaz que podría utilizar la tecnología WebView2.
El Menú Inicio es uno de los elementos de la interfaz de Windows 11 que ya utiliza o podría expandir el uso de WebView2 para renderizar su contenido. Foto: Captura de SoftZone.

Rust + WebView2, el futuro de Windows

El objetivo de Microsoft es claro: eliminar cada línea de C y C++ de Microsoft para 2030. Para ello, Microsoft confía en que la combinación de automatización, herramientas y agentes de IA les permita reescribir código de forma masiva a una velocidad que, con métodos tradicionales, sería impensable. Este objetivo va acompañado también de un lema interno que describe muy bien los objetivos de los trabajadores: «1 ingeniero, 1 mes, 1 millón de líneas de código»

¿Y por qué Microsoft ha escogido Rust? Muy sencillo: porque este lenguaje está diseñado para ser seguro por defecto. En su diseño, Rust apuesta por algo crucial: ofrecer garantías fuertes de seguridad de memoria por defecto. Es decir, a la hora de programar, salvo que se use explícitamente «unsafe», el lenguaje verifica en tiempo de compilación que el acceso a la memoria sea seguro. De esta forma, eliminamos vulnerabilidades comunes en C/C++, como los desbordamientos de búfer (buffer overflows) o las condiciones de carrera (race conditions).

Además de la seguridad, Rust aporta mucho otro valor añadido al sistema, ya que se trata de un lenguaje más moderno, más compatible, y con muchas más posibilidades que los lenguajes antiguos. Eso sí, traducir código no es lo mismo que mantener su intención original, algo especialmente delicado en un sistema operativo.

¿Cómo nos afecta el cambio?

En cuanto a los usuarios, el cambio de C / C++ a Rust no debería suponer nada más que una mejora en seguridad (y, probablemente, en estabilidad y rendimiento). Si todo sale bien, podríamos ver un Windows con menos fallos críticos relacionados con memoria y, a medio plazo, una mejora real en la seguridad base. Pero Microsoft sí que prepara otro cambio que, la verdad, no acaba de convencer: aumentar la presencia de WebView2 en toda la interfaz. Ya hay algunos elementos (como el centro de notificaciones) que utiliza tecnología web para renderizar el contenido. Pero si se cambia todo el código a Rust, buena parte de lo que «vemos» podría acabar usando tecnologías Edge/WebView2. Microsoft separaría por completo la interfaz del motor del sistema, dejando una filosofía «nativo/seguro por abajo, web/reutilizable por arriba».

Ahora solo queda esperar a ver cómo lleva Microsoft el cambio. Y lo más importante: ver si Microsoft pone todas las medidas necesarias para que la migración del código usando agentes de IA no traiga regresiones difíciles de detectar y no convierta a todo el sistema en un «caldo de cultivo de bugs».

Componente del Plan Beneficio Esperado (Para el Usuario) Riesgo o Inconveniente Potencial
Migración del Código a Rust
  • Eliminación de vulnerabilidades de gestión de memoria responsables del 70% de exploits
  • Mayor estabilidad y rendimiento sin garbage collector
  • Drivers más seguros, previniendo ataques a nivel kernel
  • Reducción de 40% en tiempos de despliegue
  • Curva de aprendizaje pronunciada para desarrolladores acostumbrados a C++
  • Vulnerabilidades descubiertas en Rust (inyección de comandos en Windows, CVE-2024-24576)
  • Ecosistema de librerías aún en maduración comparado con C++
  • Tiempo de migración masivo y complejo (hasta 2030)
Uso de IA para la Migración
  • Automatización de la conversión de millones de líneas de código
  • Reducción significativa de tiempo y costos operativos
  • Aceleración del timeline hacia 2030
  • Consistencia en patrones de conversión
  • Riesgo de generar código vulnerable si la IA no valida correctamente
  • Falta de contexto empresarial en decisiones de arquitectura automatizadas
  • Dependencia de librerías mantenidas; falta de mantenimiento expone a riesgos críticos
  • Necesidad de auditoría exhaustiva posterior (duplicando esfuerzo)
Mayor Uso de WebView2
  • Modernización de interfaces con tecnologías web (HTML, CSS, JavaScript)
  • Compatibilidad cross-platform mejorada
  • Desarrollo más ágil de componentes visuales
  • Convergencia con ecosistema web estándar
  • Separación arquitectónica entre interfaz y motor del sistema, debilitando integración profunda histórica
  • Posible incremento de consumo de recursos (WebView2 requiere más memoria que controles nativos)
  • Mayor superficie de ataque en componentes web embebidos
  • Pérdida de coherencia visual y comportamental nativa de Windows

Preguntas clave sobre el futuro de Windows

¿Por qué Microsoft quiere cambiar el código de Windows?
El objetivo principal es mejorar la seguridad. Gran parte del código actual está escrito en lenguajes antiguos como C y C++, que son propensos a vulnerabilidades de gestión de memoria. La migración a Rust busca eliminar de raíz este tipo de fallos.

¿Qué es Rust y por qué se ha elegido este lenguaje?
Rust es un lenguaje de programación moderno diseñado para ser seguro por defecto, especialmente en la gestión de la memoria. Evita muchos de los errores comunes que ocurren en C y C++, lo que lo hace ideal para construir un sistema operativo más robusto y fiable.

¿Cómo me afectará este cambio como usuario?
A largo plazo, deberías experimentar un Windows más seguro, estable y potencialmente más rápido. El principal cambio visible podría ser una mayor presencia de la tecnología WebView2 en la interfaz, lo que podría modificar la apariencia y el rendimiento de algunas ventanas y aplicaciones del sistema.

¿Cuándo se completará esta transición?
Es un proyecto a muy largo plazo. Microsoft ha marcado el año 2030 como objetivo para haber reescrito grandes partes del sistema operativo, pero la transición será gradual.

¿Existen riesgos en este proceso de migración con IA?
Sí. Aunque la IA acelera enormemente el proceso, existe el riesgo de introducir nuevos errores o ‘regresiones’ difíciles de detectar al traducir el código. Microsoft deberá implementar un riguroso control de calidad para asegurar que la nueva versión sea más segura y estable que la original.