Articulo de referencia

ZeroVM

ZeroVM es una tecnología de virtualización y aislamiento de procesos ligera y de código abierto . Virtualiza un único proceso utilizando la plataforma Google Native Client . Dad...

ZeroVM es una tecnología de virtualización y aislamiento de procesos ligera y de código abierto . Virtualiza un único proceso utilizando la plataforma Google Native Client . Dado que solo se virtualiza un único proceso (en lugar de un sistema operativo completo), el tiempo de arranque es del orden de 5 ms. [ 2 ]

Sandboxing

ZeroVM crea un entorno aislado alrededor de un único proceso, [ 3 ] utilizando tecnología basada en Google Native Client (NaCl). Este entorno aislado garantiza que la aplicación ejecutada no pueda acceder a los datos del sistema operativo anfitrión, lo que permite ejecutar código no confiable de forma segura. Los programas ejecutados en ZeroVM deben compilarse previamente para la plataforma NaCl. ZeroVM solo puede ejecutar código NaCl compilado para la plataforma x86-64 , no para el formato Native Client portátil (PNaCl).

El código ejecutado en ZeroVM no puede realizar llamadas al sistema normales y, en principio, no puede interactuar con el entorno del host. Toda la comunicación con el mundo exterior se realiza a través de canales , que deben declararse antes de que se inicie el programa. Fuera del entorno aislado, un canal puede conectarse a un archivo local, a una tubería o a otra instancia de ZeroVM. [ 4 ] Dentro del entorno aislado, el programa ve el canal como un descriptor de archivo . El programa en el entorno aislado puede leer/escribir datos desde/hacia el canal, pero no sabe dónde está conectado el canal en el host.

Los programas compilados para ZeroVM pueden usar opcionalmente la biblioteca de tiempo de ejecución de ZeroVM llamada ZRT. Esta biblioteca tiene como objetivo proporcionar al programa un entorno POSIX . [ 5 ] Lo hace reemplazando partes de la biblioteca estándar de C. En particular, ZRT reemplaza las funciones de entrada/salida de archivos de C, como fopeny , opendircon versiones que operan en un sistema de archivos en memoria. El sistema de archivos raíz se proporciona como un archivo tar. Esto permite que un programa "vea" un entorno Unix normal.

El ZRT también reemplaza las funciones de fecha y hora de C para timebrindar a los programas un entorno fijo y determinista . Con entradas fijas, se garantiza que cada ejecución dará el mismo resultado. Incluso los programas no funcionales se vuelven deterministas en este entorno restringido. [ 6 ] Esto facilita la depuración de los programas, ya que su comportamiento es fijo.

Integración con Swift

ZeroVM se ha integrado con Swift , el componente de almacenamiento de objetos distribuidos de OpenStack . [ 7 ] Cuando se instala el middleware ZeroCloud en Swift, un cliente puede realizar una solicitud a Swift que contenga un programa ZeroVM. El programa se ejecuta directamente en los nodos de almacenamiento. Esto significa que el programa tiene acceso directo a los datos.

Historia

ZeroVM fue desarrollado por LiteStack, una startup israelí. El primer commit en el repositorio zerovmGit se agregó en noviembre de 2011. [ 8 ] LiteStack fue comprado por Rackspace en octubre de 2013. [ 2 ] [ 9 ] [ 10 ] ZeroVM participó en el programa de incubación Techstars Cloud 2013 y obtuvo $ 500 000 en financiación inicial. [ 11 ] [ 12 ] La primera Cumbre de Diseño de ZeroVM se celebró en enero de 2014 en la Universidad de Texas en San Antonio . [ 13 ]

Véase también

Referencias

  1. "Versión 1.0" . 20 de marzo de 2014. Consultado el 23 de julio de 2018 .
  2. 1 2 Lindberg, Van. "ZeroVM: más pequeño, más ligero, más rápido" . Blog de Rackspace . Archivado del original el 19 de septiembre de 2015. Recuperado el 14 de abril de 2014 .
  3. Yegulalp, Serdar (23 de octubre de 2013). "ZeroVM virtualiza aplicaciones, no máquinas" . InfoWorld . Consultado el 14 de abril de 2014 .
  4. "Canales ZeroVM" . GitHub . Consultado el 14 de abril de 2014 .
  5. "ZRT Readme" . GitHub . Consultado el 14 de abril de 2014 .
  6. "Arquitectura ZeroVM" . Archivado del original el 8 de febrero de 2014. Consultado el 14 de abril de 2014 .
  7. "ZeroCloud" . GitHub . Consultado el 14 de abril de 2014 .
  8. Gilyadov, Camuel. "Primer Commit" . GitHub . Consultado el 18 de abril de 2014 .
  9. Shamah, David (24 de octubre de 2013). "Rackspace adquiere el hipervisor 'diseñado para la nube' de ZeroVM" . ZDNet . Consultado el 14 de abril de 2014 .
  10. Clark, Jack (25 de octubre de 2013). "Rackspace llega a Israel y adquiere una nueva y sofisticada arma para la guerra de la nube" . The Register . Consultado el 14 de abril de 2014 .
  11. Idan, Henn (3 de noviembre de 2013). "ZeroVM israelí adquirida por RackSpace" . Geektime . Archivado del original el 30 de marzo de 2014. Recuperado el 14 de abril de 2014 .
  12. Lorek, Laura (19 de abril de 2013). "ZeroVM crea software para computación en la nube" . Silicon Hills News . Consultado el 14 de abril de 2014 .
  13. Rackspace. "Cumbre de diseño ZeroVM" . YouTube . Consultado el 18 de abril de 2014 .
  • Sitio web oficialEdita esto en Wikidata
  • en GitHub
  • Paquetes estables de Ubuntu
  • Últimos paquetes de Ubuntu