Lanzamiento de MirageOS 3.6, una plataforma para ejecutar aplicaciones sobre un hipervisor

tuvo lugar lanzamiento del proyecto MirageOS 3.6, que le permite crear sistemas operativos para una sola aplicación, en la que la aplicación se entrega como un "unikernel" autónomo que se puede ejecutar sin el uso de sistemas operativos, un kernel de sistema operativo separado y cualquier capa. El lenguaje OCaml se utiliza para desarrollar aplicaciones. Código de proyecto distribuido por bajo la licencia ISC gratuita.

Toda la funcionalidad de bajo nivel inherente al sistema operativo se implementa en forma de una biblioteca adjunta a la aplicación. La aplicación se puede desarrollar en cualquier sistema operativo, después de lo cual se compila en un kernel especializado (el concepto unikernel), que puede ejecutarse directamente sobre hipervisores Xen, KVM, BHyve y VMM (OpenBSD), sobre plataformas móviles, como un proceso en un entorno compatible con POSIX o en entornos de nube de Amazon Elastic Compute Cloud y Google Compute Engine.

El entorno generado no contiene nada superfluo e interactúa directamente con el hipervisor sin controladores ni capas del sistema, lo que permite una reducción significativa de los costos generales y una mayor seguridad. Trabajar con MirageOS se reduce a tres etapas: preparar la configuración e identificar los que se utilizan en el entorno. Paquetes OPAM, construyendo el medio ambiente y lanzando el medio ambiente. El tiempo de ejecución para ejecutarse sobre Xen se basa en un kernel simplificado Mini sistema operativoy para otros hipervisores y sistemas basados ​​en kernel Solo5.

A pesar de que las aplicaciones y bibliotecas se crean en el lenguaje OCaml de alto nivel, los entornos resultantes demuestran un rendimiento bastante bueno y un tamaño mínimo (por ejemplo, el servidor DNS ocupa sólo 200 KB). También se simplifica el mantenimiento de entornos, ya que si es necesario actualizar el programa o cambiar la configuración, basta con crear y lanzar un nuevo entorno. Soportado varias docenas de bibliotecas en el lenguaje OCaml para realizar operaciones de red (DNS, SSH, OpenFlow, HTTP, XMPP, etc.), trabajar con almacenamiento y proporcionar procesamiento de datos paralelo.

Los principales cambios en la nueva versión están relacionados con brindar soporte para las nuevas funciones ofrecidas en el kit de herramientas. Solo5 0.6.0 (entorno de pruebas para ejecutar unikernel):

  • Se agregó la capacidad de ejecutar MirageOS unikernel en un entorno aislado. spt (“licitación de proceso en espacio aislado”) proporcionada por el kit de herramientas Solo5. Cuando se utiliza el backend spt, los kernels de MirageOS se ejecutan en procesos de usuario de Linux a los que se les aplica un aislamiento mínimo basado en seccomp-BPF;
  • Soporte implementado manifiesto de aplicación del proyecto Solo5, que le permite definir múltiples adaptadores de red y dispositivos de almacenamiento conectados a un unikernel de forma aislada en función de los backends hvt, spt y muen (el uso para los backends genode y virtio está actualmente limitado a un dispositivo);
  • Se ha reforzado la protección de backends basados ​​en Solo5 (hvt, spt), por ejemplo, se ha proporcionado la construcción en modo SSP (Stack Smashing Protection).

Fuente: opennet.ru

Añadir un comentario