Midori es el nombre que se le dio a un sistema operativo de código gestionado que fue desarrollado por Microsoft Research. Se ha especulado con que podría tratarse de una versión comercial del sistema operativo Singularity, un proyecto de investigación iniciado en 2003 para construir un sistema operativo de alta dependencia en el que el kernel, los controladores de dispositivos y las aplicaciones están todas escritas en código gestionado. Fue diseñado para trabajar en varias tareas de forma simultánea, y puede hacer funcionar aplicaciones en lugares distintos. También incluye un modelo de seguridad que es una novedad (para los sistemas operativos creados por Microsoft) que aísla los procesos del sistema para aumentar la seguridad. Microsoft ha trazado diversas vías de migración de Windows a Midori. En un posible enlace con la plataforma de aplicaciones Oslo, también desarrollado por Microsoft, el modelo de programación dependerá de metadatos, con el objetivo de que el sistema gestione sus aplicaciones de forma más fiable.
El código en lenguaje administrado es compilado a instrucciones nativas de la CPU antes o durante la instalación de las aplicaciones con un compilador optimizador global llamado Bartok.
El nombre clave de Midori se conoció en un principio a través de la presentación en PowerPoint CHESS: A systematic testing tool for concurrent software. Más de cien programadores de Microsoft trabajaron en este sistema operativo, en su punto de mayor actividad.
Además, se ha rumoreado en los medios especializados en Tecnologías de la Información que Midori podría ser un sustituto de Microsoft Windows y Windows CE.
En abril de 2009, Jonathan S. Shapiro, que jugó un papel importante en el desarrollo del lenguaje de programación BitC y el sistema operativo Coyotos,https://web.archive.org/web/20060205125008/http://coyotos.org/history.html anunció que había aceptado un puesto en Microsoft para trabajar en el proyecto Midori, y que después de agosto de 2009 ya no seguiría trabajando en BitC.
A pesar del cese de publicaciones públicas en 2009, el desarrollo del proyecto continuó internamente en Microsoft hasta su cancelación definitiva en 2015. Aunque Midori nunca llegó a comercializarse como un sistema operativo independiente, gran parte de su arquitectura orientada a la seguridad de memoria y concurrencia influyó en el desarrollo moderno de la plataforma .NET y del lenguaje C# (como las optimizaciones en el manejo de memoria y la estructura). Asimismo, los aprendizajes de Midori sirvieron de base para posteriores proyectos de investigación en Microsoft sobre seguridad de código nativo, como Project Verona.
Historia posterior y legado / discontinuación
Diversas fuentes señalan que Midori fue un proyecto de investigación e incubación interna que no llegó a convertirse en producto comercial y que terminó siendo discontinuado alrededor de 2015. El propio Joe Duffy —antiguo responsable técnico del proyecto— comenzó en noviembre de 2015 a documentar públicamente su arquitectura y aprendizajes, describiendo a Midori como una iniciativa orientada a “tres seguridades” (de tipos, de memoria y de concurrencia) y a una ejecución ampliamente asíncrona; dicha serie de textos se publicó cuando el esfuerzo ya había sido desmantelado como unidad independiente.
Microsoft Research indica que el código y el diseño de Singularity “evolucionaron” para convertirse en el proyecto avanzado Midori y que, aunque no hubo lanzamiento comercial, en algún momento Midori llegó a impulsar el servicio de búsqueda de lenguaje natural de Microsoft en la Costa Oeste de EE. UU. y Asia; esta trayectoria ayuda a explicar por qué varias de sus ideas técnicas se trasladaron posteriormente a otras iniciativas de la compañía.
Coberturas periodísticas publicadas años después sitúan el final del proyecto en torno a 2015 y apuntan a que Microsoft optó por incorporar aprendizajes y componentes de Midori en productos existentes (por ejemplo, en Windows y en plataformas de nube), en lugar de continuar con un sistema operativo separado. Entre esos reportes figuran notas que mencionan el traslado del equipo a una unidad de “sistema operativo unificado” y la decisión de cancelar el esfuerzo como vía alternativa a Windows.
En suma, la mayor parte de la documentación disponible sugiere que Midori funcionó como un laboratorio de arquitectura para un sistema operativo de código gestionado con microkernel y seguridad basada en capacidades, cuyas técnicas (p. ej., aislamiento fuerte, E/S sin copias y modelos de concurrencia asíncronos) influyeron en otras líneas de producto y servicios de Microsoft, pese a que el proyecto fue finalmente discontinuado como iniciativa independiente.
Véase también
Microsoft Windows Singularity, el precursor de Midori
Referencias
Categoría:Sistemas operativos de Microsoft