La virtualización multiplataforma es una forma de virtualización de computadoras que permite que el software compilado para un conjunto de instrucciones y un sistema operativo específicos se ejecute sin modificaciones en computadoras con diferentes CPU y / o sistemas operativos, a través de una combinación de traducción binaria dinámica y mapeo de llamadas del sistema operativo.
Dado que el software se ejecuta en un equivalente virtualizado de la computadora original, no requiere recompilación o migración , lo que ahorra tiempo y recursos de desarrollo. Sin embargo, la sobrecarga de procesamiento de la traducción binaria y el mapeo de llamadas impone una penalización en el rendimiento, en comparación con el software compilado de forma nativa. Por esta razón, la virtualización multiplataforma se puede utilizar como una solución temporal hasta que haya recursos disponibles para portar el software. Alternativamente, la virtualización multiplataforma se puede utilizar para admitir código heredado, que al ejecutarse en una máquina más nueva y más rápida aún mantiene un rendimiento adecuado incluso con la sobrecarga de virtualización.
Al crear una capa de abstracción capaz de ejecutar software compilado para un sistema informático diferente, la virtualización multiplataforma caracteriza los requisitos de virtualización de Popek y Goldberg descritos por Gerald J. Popek y Robert P. Goldberg en su artículo de 1974 "Requisitos formales para arquitecturas de tercera generación virtualizables". ". [1] La virtualización multiplataforma es distinta de la emulación simple y la traducción binaria , que implican la traducción directa de un conjunto de instrucciones a otro, ya que la inclusión del mapeo de llamadas del sistema operativo proporciona un entorno virtualizado más completo. La virtualización multiplataforma también es complementaria a la virtualización de servidores y las soluciones de virtualización de escritorio , ya que estas suelen estar limitadas a un solo conjunto de instrucciones, como x86 o Power ISA . Las variantes modernas de virtualización multiplataforma pueden emplear técnicas de aceleración de hardware [2] para compensar parte del costo incurrido en la traducción del sistema huésped a host.
Ver también
Referencias
- ^ Gerald J. Popek y Robert P. Goldberg (1974). "Requisitos formales para arquitecturas de tercera generación virtualizables". Comunicaciones de la ACM . 17 (7): 412–421. doi : 10.1145 / 361011.361073 .
- ^ Spink, Tom; Wagstaff, Harry; Franke, Björn (28 de diciembre de 2016). "Virtualización de sistema completo de arquitectura cruzada acelerada por hardware" . Transacciones ACM sobre arquitectura y optimización de código . 13 (4): 36. doi : 10.1145 / 2996798 . ISSN 1544-3566 .