Sistemas operativos II
Investigacin de: -Maquinas virtuales Integrante: Brenda Domnguez Obando Docente: Sonia Velzquez
INTRODUCCION: Una mquina virtual en el mundo de la informtica es un software que emula a un ordenador y puede ejecutar programas como si fuese un ordenador real. En otras palabras, estaramos teniendo un ordenador (virtual) dentro de nuestro ordenador y, en consecuencia, poder realizar esta actividad en los ordenadores trae un montn de beneficios. CARACTERISTICAS DE LAS MAQUINAS VIRTUALES: - Dispone de una capacidad de almacenamiento mxima de 20 Gb. Por lo tanto no Se pueden instalar programas a discrecin debido a esta limitacin. - Trabaja con una RAM simulada de 1Gb y trabaja con un procesador. - Para la ejecucin de la MV es necesario haber instalado previamente el VMwareplayer, Tanto en el equipo de origen (gestor), como en el de destino (uso). Para ello Seguir los pasos que se apuntan a continuacin. - Cuando se est trabajando en el equipo de origen se recomienda copiar la carpeta donde est la MV original. Una vez hecho esto, sobre la nueva carpeta ejecutar la MV y realizar las instalaciones que sean necesarias. Esta carpeta copia ser la que hay que llevarse a los equipos de destino. Conviene darle un nombre aclaratorio de qu tipo de MV es.
APROVECHAMIENTO DEL HARDWARE: En cuanto a aprovechamiento del hardware, un mal extendido en los CPDs actuales es el gran nmero de servidores, muchos de ellos infrautilizados. Si se virtualiza un nmero de esos sistemas infrautilizados en un solo servidor fsico, se ahorrar energa, espacio, capacidad de refrigeracin y administracin, debido a que se ha reducido el nmero de servidores fsicos.
LA VIRTUALIZACION: Aislamiento: las mquinas virtuales son totalmente independientes, entre s y con el hypervisor. Por tanto un fallo en una aplicacin o en una mquina virtual afectar nicamente a esa mquina virtual. El resto de mquinas virtuales y el hypervisor seguirn funcionando normalmente. Seguridad: cada mquina tiene un acceso privilegiado (root o administrador) independiente. Por tanto, un ataque de seguridad en una mquina virtual slo afectar a esa mquina. Flexibilidad: podemos crear las mquinas virtuales con las caractersticas de CPU, memoria, disco y red que necesitemos, sin necesidad de comprar un ordenador con esas caractersticas. Tambin podemos tener mquinas virtuales con distintos sistemas operativos, ejecutndose dentro de una misma mquina fsica. Agilidad: la creacin de una mquina virtual es un proceso muy rpido, bsicamente la ejecucin de un comando. Por tanto, si necesitamos un nuevo servidor lo podremos tener casi al instante, sin pasar por el proceso de compra, configuracin, etc.
Portabilidad: toda la configuracin de una mquina virtual reside en uno o varios ficheros. Esto hace que sea muy fcil clonar o transportar la mquina virtual a otro servidor fsico, simplemente copiando y moviendo dichos ficheros que encapsulan la mquina virtual. Si en el PC de nuestra casa creamos mquinas virtuales, estaremos ms protegidos ante posibles virus que puedan introducirse por la conexin a Internet Recuperacin rpida en caso de fallo: si se dispone de una copia de los ficheros de configuracin de la mquina virtual, en caso de desastre la recuperacin ser muy rpida, simplemente arrancar la mquina virtual con los ficheros de configuracin guardados. No es necesario reinstalar, recuperar backups y otros procedimientos largos que se aplican en las mquinas fsicas. Como dice el refrn, No hay vaca gorda que no pese. Por tanto, todas estas ventajas tienen un precio, que consiste fundamentalmente en una prdida de rendimiento, es decir, una aplicacin generalmente correr ms despacio en una mquina virtual que en un servidor fsico. La degradacin depender de la tecnologa de virtualizacin utilizada, de la configuracin realizada a nivel hypervisor y de la propia aplicacin. Por regla general, las aplicaciones que ms repercuten la prdida de rendimiento son las que realizan operaciones frecuentes de entrada/salida. Otro aspecto a tener en cuenta es que la mquina fsica deber contar con suficiente memoria para poder arrancar todas las mquinas virtuales. Si queremos crear, por ejemplo, 20 mquinas virtuales en un servidor fsico y que estn funcionando simultneamente, hay tecnologas que permiten hacerlo con 1 sola CPU fsica (HP Integrity Virtual Machines). Pero al menos necesitaremos 1 GB de memoria para cada mquina virtual, ms la requerida por el hypervisor, lo que dara lugar a unos requerimientos de unos 22 GB de memoria. Es decir, necesitaramos un servidor con 1 CPU y 22 GB de memoria (lo que es una configuracin bastante extraa). Estos beneficios pueden obtenerse tanto en casa como en las empresas. Por ejemplo, si en el PC de nuestra casa creamos mquinas virtuales, estaremos ms protegidos ante posibles virus que puedan introducirse por la conexin a Internet (slo infectaran una mquina virtual) o de que se nos borren las fotos de las vacaciones (porque los datos estn encapsulados en un fichero).
utilizacin media de CPU del 60%. Si consolidamos sin virtualizacin, podramos tener 70 servidores con una utilizacin media del 40% (los nmeros son meramente ilustrativos). Muchas compaas se encuentran actualmente inmersas en proyectos de consolidacin de servidores, pero por qu consolidar, y no seguir con el modelo de servidores independientes? Si preguntsemos a un empleado del departamento de informtica de cualquier compaa que nos describiera el CPD, seguramente lo hara basndose en los servidores existentes. Nos mencionara, por ejemplo, el servidor de base de datos, el servidor del correo electrnico, el servidor de CRM Y tambin nos comentara que cada servidor es de un fabricante diferente y cuenta con sistemas operativos diferentes. Por tanto, tambin se necesitan administradores formados en las diversas tecnologas existentes, y herramientas de gestin especficas, porque (digamos) lo que vale para monitorizar los servidores con Windows, no vale para los servidores con Unix. Esta morfologa se ha originado porque los CPDs actuales han ido creciendo basndose en silos aislados, en funcin de las necesidades del negocio. Si haba que montar una nueva base de datos X, se examinaban las distintas comparativas (benchmarks) y se compraba el servidor ms potente para esa base de datos X, del fabricante y sistema operativos indicados. Si seguidamente haba que montar un servicio de atencin al cliente, se comprara el servidor mejor para la aplicacin de CRM elegida, muy posiblemente de otro fabricante y otros sistema operativo. Y as sucesivamente. La virtualizacin no es una moda, sino la respuesta a una necesidad que tienen los CPDs actuales.
Despus de dcadas de un crecimiento de este tipo, los CPDs han llegado a un punto en que se han vuelto inmanejables, debido al alto nmero de servidores, la dificultad para coordinar cambios en esos CPDs, las mltiples consolas que es necesario visualizar para conocer exactamente cmo se est comportando el CPD, etc. Para empeorar ms la situacin, estos CPDs generan unos costes altsimos. Cada mquina ocupa un espacio y consume electricidad para su alimentacin y refrigeracin. Los productos estn licenciados para todo el hardware (CPUs) presente en los servidores, cuando los estudios demuestran que la utilizacin media de cada servidor est en torno al 30%. Esto quiere decir que en est pagando por un 70% de mquina que no usamos normalmente, con sus costes asociados de licencias, mantenimiento, soporte, etc. Por ltimo, diversos estudios muestran que aproximadamente el 75% del presupuesto de TI de una compaa se gasta en mantenimiento de la estructura existente, mientras que tan slo el 25% se dedica a innovacin.
Afortunadamente, la virtualizacin nos puede ayudar a cambiar todo esto. La virtualizacin no es una moda, sino la respuesta a una necesidad que tienen los CPDs actuales. La virtualizacin permite a las empresas evolucionar desde el CPD tradicional, basado en hierro, a un CPD de nueva generacin, basado en software, en el que un pool de recursos compartidos se asigna dinmicamente a las aplicaciones que lo necesiten. Este nuevo CPD permitir a los administradores centrarse en el servicio y no en la operacin, mediante la abstraccin del hardware y eliminacin la gestin fsica de dispositivos. Curiosamente, lo contrario a la virtualizacin, llamada agregacin de servidores o grid computing, es otra forma de virtualizacin. Consiste en que diversos servidores funcionen como uno solo, y tambin nos puede ayudar a construir el nuevo CPD.
puede realizarse a todos los niveles del CPD: desde los servidores de entrada o de aplicaciones (front-end), a los servidores que contienen las aplicaciones crticas para el negocio o las bases de datos (back-end), pasando por servidores de desarrollo o pruebas. De la gran variedad de soluciones comerciales de virtualizacin, algunas estn ms orientadas a virtualizar los servidores de negocio, mientras que otras son ms adecuadas para servidores no crticos.
Por ejemplo, las soluciones de VMWare, pioneras en virtualizacin y muy bien valoradas por los usuarios, son ms adecuadas para el front-end por diversos motivos. Por mencionar algunos, el hardware sobre el que se ejecutan (arquitectura x86) no es capaz de direccionar tantos datos de una sola vez como otras arquitecturas (porque no es una arquitectura nativa 64 bits). Esto se traduce en un menor rendimiento para cargas de trabajo pesadas (p.e., consulta a una base de datos grande). Y este hardware tiene caractersticas de fiabilidad y disponibilidad medias (RAS Reliability Availability Serviceability), es decir, se estropea con ms frecuencia y su reparacin es ms complicada que otras arquitecturas. En el plano de software, las mquinas virtuales VMWare no admiten sistemas operativos unix estables tradicionales de las aplicaciones crticas, como AIX o HPUX. Por todos estos motivos, VMWare no es la solucin ptima para virtualizar las aplicaciones crticas, que corrern por ejemplo en HP-UX, necesitarn rendimientos muy buenos y minimizar la paradas debido a averas hardware. Las soluciones ptimas para virtualizar los servidores crticos son las que se ejecutan en servidores de alta gama, por ejemplo HP Integrity Virtual Machines. Esta solucin permite crear mquinas virtuales sobre servidores con arquitectura Itanium. Itanium proporciona estupendas caractersticas de rendimiento (procesador 64 bits puro, con enormes cachs, etc.), fiabilidad y disponibilidad a la altura de los grandes ordenadores o mainframes. En HP Integrity Virtual Machines es posible ejecutar sistemas operativos estables como HP-UX. IMPORTANCIA DE LA VIRTUALIZACION:
En el apartado anterior analizbamos la importancia de elegir de la tecnologa ms adecuada para virtualizar correctamente el servidor que deseemos; tanto o ms importante es disponer de una buena herramienta de gestin. La virtualizacin presenta mltiples ventajas para los CPDs, principalmente desde el punto de vista de simplificacin de la infraestructura fsica y conexiones. Pero al realizarse por software lo que antes se haca por hardware, se introducen una nueva problemtica que no existan en los entornos fsicos. Por ejemplo, si una mquina virtual puede ejecutarse en distintos servidores fsicos, debemos saber en qu servidor fsico se est ejecutado en cada momento. O si un servidor fsico cuenta con varias mquinas virtuales que pueden estar arrancadas o no, debemos conocer en todo momento el estado de esas mquinas virtuales. Normalmente, en un CPD convivirn servidores fsicos y virtuales, por lo que la herramienta de gestin deber permitir la gestin de los dos tipos de plataformas, idealmente en una nica consola. Adems, si se utilizan diversas tecnologas de virtualizacin, desde esta consola debern poderse invocar de manera transparente todas las herramientas de gestin especficas de cada plataforma. Es idealmente, debera tratarse de una herramienta de gestin de la infraestructura integrable con herramientas de gestin empresarial, que nos avisasen de la repercusin que un problema en una mquina virtual puede tener en el negocio. Un ejemplo, si se para la mquina virtual que contiene la base de datos de clientes, se generara una alerta en la herramienta de gestin de la infraestructura virtual, alerta que se redirigir a la herramienta de gestin empresarial informando de que el servicio Atencin al cliente est indisponible.
Virtualizacin y negocio
Si adems queremos ligar totalmente nuestra infraestructura virtual con el negocio, no slo a nivel de alertas, sino para asegurar que se satisfacen todos los compromisos de la compaa con sus clientes, podemos utilizar las denominadas herramientas de Automatizacin. Las herramientas de Automatizacin permiten definir una serie de mtricas que deben cumplirse siempre en una mquina virtual, y si la herramienta detecta que se va a incumplir una mtrica, es capaz de reconfigurar las mquinas virtuales para que esto no llegue a ocurrir. Esta mtrica puede ser una medida de infraestructura (% consumo de CPU, MB de memoria libres) o una mtrica de negocio (tiempo de respuesta, duracin de un trabajo batch). Supongamos una mquina fsica que alberga varias mquinas virtuales. Si una de estas mquinas virtuales contiene una aplicacin cuyo tiempo de respuesta debe estar siempre por debajo de 2 segundos, pero la herramienta de automatizacin detecta que el tiempo de respuesta es de 1,9 segundos y es muy probable que en breve sobrepase los 2 segundos de mximo, la herramienta reconfigurar la mquina virtual asignndole, por ejemplo, ms CPU. Esta CPU la puede obtener tomndola prestada de otra mquina virtual que se est ejecutando en la misma mquina fsica (que no est utilizando la CPU que tiene asignada), activando CPUs presentes pero desactivadas de la mquina fsica o moviendo la mquina virtual a otra mquina fsica con ms CPU libre disponibles, entre otras opciones.
El trmino SLA (Service Level Agreement o Acuerdo de Nivel de Servicio) se emplea mucho en las compaas, para referirse al contrato que tiene esa compaa con otras partes (normalmente clientes) de proporcionar un servicio con determinadas caractersticas de calidad. Por ejemplo, una compaa de telefona que ofrezca a sus clientes de lnea ADSL un compromiso de slo 30 minutos de indisponibilidad al ao. Lo primero que hay que tener en cuenta es que la consolidacin total es algo slo terico, que no es posible en el mundo real. La consolidacin total implicara reutilizar todo el hardware existente, que no hubiera ningn tipo de traba poltica, de licenciamiento, ni de aislamiento entre aplicaciones, y lamentablemente esto no es as. Para cumplir el SLA, la compaa tendr que vigilar una serie de mtricas, que sern las que definirn si se cumple o no es SLA. Estas mtricas se conocen con el nombre de SLOs (Service Level Objectives). Volviendo al ejemplo de la ADSL, un SLO podra ser que la aplicacin que asigna dinmicamente direcciones IP a los routers domsticos de ADSL, debe proporcionar la IP en un tiempo de 5 segundos como mximo. Podramos decir que un SLA (contrato) est formado por SLOs (mtricas). Si en la herramienta de Automatizacin se definen mtricas que correspondan con los SLOs, la compaa tendr su infraestructura virtual totalmente ligada con los SLAs, y por tanto, con el negocio.
El camino a la virtualizacin
Lo primero que hay que tener en cuenta es que la consolidacin total es algo slo terico, que no es posible en el mundo real. La consolidacin total implicara reutilizar todo el hardware existente, que no hubiera ningn tipo de traba poltica, de licenciamiento, ni de aislamiento entre aplicaciones, y lamentablemente esto no es as. En el otro extremo, si se decide no consolidar, los problemas de dispersin de servidores, tiempos largos de puesta en produccin de servicios, etc., no slo no se solucionarn, sino que se irn agravando y lo ms probable es que esa compaa deje de ser competitiva. En el trmino medio est la virtud, y por ese motivo las compaas se estn planteando proyectos de consolidacin, en los que se reutiliza slo parte del hardware existente, y que se aplica nicamente a determinados entornos (tpicamente los no productivos) o aplicaciones. Este tipo de consolidacin ya ofrece unos beneficios notables en cuanto a ahorro de costes y agilidad. Una vez que una compaa decide abordar un proyecto de consolidacin mediante virtualizacin, los pasos generales a seguir seran los siguientes: Planificacin: como en cualquier otro proyecto, el punto de partida de la consolidacin ser realizar la planificacin. La planificacin consta de dos etapas: anlisis y diseo. El anlisis consiste en realizar un estudio del CPD, que contenga un inventario de los servidores, aplicaciones y uso de estas ltimas. Esto nos permitir identificar
las aplicaciones candidatas a ser virtualizadas (recordemos que algunas aplicaciones son especialmente sensibles a la sobrecarga que introduce la virtualizacin o ya contienen algn tipo de virtualizacin ya embebida como Oracle RAC, por lo que no es recomendable virtualizarlas). El diseo consiste en seleccionar el hardware adecuado para usar como mquinas fsicas y definir las caractersticas de las mquinas virtuales que albergarn las aplicaciones: CPUs virtuales, memoria, etc. Existen herramientas comerciales que sirven de ayuda en esta fase inicial. En general, se trata de herramientas que recopilan informacin de la utilizacin de recursos de las aplicaciones antes de la consolidacin (CPU, memoria, disco, red), y empleando de esa informacin, permiten simular cmo se comportara esa aplicacin en otra plataforma, en una mquina virtual o lo que nos queramos inventar. Un ejemplo de este tipo de herramientas es HP Capacity Advisor. Migracin: una vez diseada la plataforma final, se configuran las mquinas virtuales y se realiza la migracin de las aplicaciones. Esta conversin de fsico a virtual se conocer con el nombre Migracin Physical to Virtual o, de manera abreviada, P2V. La migracin se puede realizar manualmente o ayudado por herramientas que permiten replicar los entornos de mquinas fsicas a mquinas virtuales. Un ejemplo sera p2vassist, utilidad proporcionada por la ltima versin de mquinas virtuales HP Integrity. Gestin: una vez las mquinas virtuales estn operativas, es necesario disponer de herramientas que incorporen procedimientos de monitorizacin y gestin para las mquinas virtuales. Existen mltiples soluciones comerciales para ello, por ejemplo, HP Virtualization Manager o VMWare Virtual Center. Automatizacin: esta ltima etapa es opcional. Sin embargo, ya se ha explicado que es clave si se desea disponer de una infraestructura virtual dinmica, que se reorganice sin intervencin humana y en tiempo real segn las demandas del negocio. La Automatizacin puede estar embebida la propia tecnologa de virtualizacin, o ser proporcionada por aplicaciones adicionales que permitan que los servidores virtuales respondan a diversas mtricas, que pueden ser de negocio.
o Est la compaa preparada para concebir el departamento de TI como un proveedor de servicio, y no como alguien que gestiona los sistemas? La virtualizacin supone tambin un cambio significativo en los procesos de negocio. El movimiento hacia un entorno ms centralizado podra requerir que TI tambin consolidase sus procesos, herramientas y software. ALGUNOS VENEFICIOS DE LAS MAQUINAS VIRTUALES: No hay necesidad de tener otro ordenador (fsico) para instalar o probar software.
Configuracin de la mquina virtual a tu antojo, segn con los recursos que cuente tu ordenador (memoria, disco duro, etc.). La posibilidad de tener distintos sistemas operativos sin necesidad de crear particiones o tener ms discos duros. La posibilidad de probar software que an no es estable (versiones beta, alfa, etc.) y tener la certeza que no afectara a nuestro sistema operativo base.
Las mquinas virtuales se pueden clasificar en dos grandes categoras segn su funcionalidad y su grado de equivalencia a una verdadera mquina.
Mquinas virtuales de sistema (en ingls System Virtual Machine) Mquinas virtuales de proceso (en ingls Process Virtual Machine)
Varios sistemas operativos distintos pueden coexistir sobre la misma computadora, en slido aislamiento el uno del otro, por ejemplo para probar un sistema operativo nuevo sin necesidad de instalarlo directamente. La mquina virtual puede proporcionar una arquitectura de instrucciones (ISA) que sea algo distinta de la verdadera mquina. Es decir, podemos simular hardware. Varias mquinas virtuales (cada una con su propio sistema operativo llamado sistema operativo "invitado" o "guest"), pueden ser utilizadas para consolidar servidores. Esto permite que servicios que normalmente se tengan que ejecutar en computadoras distintas para evitar interferencias, se
puedan ejecutar en la misma mquina de manera completamente aislada y compartiendo los recursos de una nica computadora. La consolidacin de servidores a menudo contribuye a reducir el coste total de las instalaciones necesarias para mantener los servicios, dado que permiten ahorrar en hardware. La virtualizacin es una excelente opcin hoy da, ya que las mquinas actuales (Laptops, desktops, servidores) en la mayora de los casos estn siendo "sub-utilizados" (gran capacidad de disco duro, memoria RAM, etc.), llegando a un uso de entre 30% a 60% de su capacidad. Al virtualizar, la necesidad de nuevas mquinas en una ya existente permite un ahorro considerable de los costos asociados (energa, mantenimiento, espacio, etc).
Tcnicas
Monitor de tipo I.
el tipo 1 se ejecuta directamente sobre el hardware el tipo 2 se ejecuta sobre otro sistema operativo.
Cada mquina virtual puede ejecutar cualquier sistema operativo soportado por el hardware subyacente. As los usuarios pueden ejecutar dos o ms sistemas operativos distintos simultneamente en computadoras "privadas" virtuales. El sistema pionero que utiliz este concepto fue la CP-40, la primera versin (1967) de la CP/CMS de IBM (1967-1972) y el precursor de la familia VM de IBM (de 1972 en adelante). Con la arquitectura VM, la mayor parte de usuarios controlan un sistema operativo monousuario relativamente simple llamado CMS que se ejecuta en la mquina virtual VM. Actualmente tanto Intel como AMD han introducido prestaciones a sus procesadores x86 para permitir la virtualizacin de hardware.
Algunas mquinas virtuales emulan hardware que slo existe como una especificacin. Por ejemplo:
La mquina virtual P-Code que permita a los programadores de Pascal crear aplicaciones que se ejecutasen sobre cualquier computadora con esta mquina virtual correctamente instalada. La mquina virtual de Java. La mquina virtual del entorno .NET. Open Firmware
Esta tcnica permite que cualquier computadora pueda ejecutar software escrito para la mquina virtual. Slo la mquina virtual en s misma debe ser portada a cada una de las plataformas de hardware.
AMD-V (anteriormente llamado Pacifica) ARM TrustZone Boston Circuits gCore (grid-on-chip) con ncleos 16 ARC 750D y mdulo de virtualizacin de hardware Time-machine. Freescale PowerPC MPC8572 y MPC8641D IBM System/370, System/390 y mainframes ZSeries Intel VT (anteriormente llamado Vanderpool) SPARC de Sun Microsystems
Common Language Runtime C#, Visual Basic .NET, J#, Managed C++ EiffelStudiopara el lenguaje de programacin Eiffel
VThere (de Sentillion, Inc. [1]) ATL (A MTL Virtual Machine) Bochs emulador de PC x86 y AMD64, porttil y open source
Lenguaje de programacin Erlang Forth virtual machine - Forth Glulx - Glulx, Z-code Harbour - Harbour virtual machine Hec - Hasm Assembler Inferno - Limbo Java virtual machine - Java, Nice, NetREXX Low Level Virtual Machine (LLVM) - actualmente C, C++, Stacker Lua Macromedia Flash Player - SWF MMIX - MMIXAL Neko virtual machine actualmente Neko y haXe O-code machine - BCPL P-code machine - Pascal Parrot - Perl 6 Perl virtual machine - Perl Portable.NET - C#, Visual Basic .NET, J#, Managed C++ YARV - Ruby Rubinius - Ruby ScummVM - Scumm SECD machine - ISWIM, Lispkit Lisp Sed the stream-editor can also be seen as a VM with 2 storage spaces. Smalltalk virtual machine Smalltalk SQLite virtual machine - SQLite opcodes Squeak virtual machine - Squeak SWEET16 TrueType virtual machine -
CoLinux Open Source Linux inside Windows Denali, uses paravirtualization of x86 for running para-virtualized PC operating systems. FAUmachine Hercules emulator, free System/370, ESA/390, z/Mainframe Integrity Workstation Green Hills Software[2] LilyVM is a lightweight virtual machineAn introduction Microsoft Virtual PC y Microsoft Virtual Server OKL4 Parallels Workstation, virtualizacin de x86 para ejecutar sistemas operativos Parallels Desktop for Mac, virtualizacin de x86 para ejecutar mquinas virtuales en Mac OS X QEMU, muy popular en entornos Linux SheepShaver. Simics SVISTA Trango Virtual Processors TwoOStwo User-mode Linux VirtualBox Virtual Iron (Virtual Iron 3.1) Virtual Operating System de Star Virtual Machines VM de IBM VMware (ESX Server, Fusion, Virtual Server, Workstation, Player y ACE) Xen
TrueType
KVM
Valgrind - chequeo de accesos a IBM POWER SYSTEMS memoria y "leaks" en x86/x86-64 Mquinas virtuales a nivel de sistema code under Linux operativo VX32 virtual machine OpenVZ application-level virtualization for Virtuozzo native code FreeVPS Virtual Processor (VP) from Tao Group (UK). Linux-VServer Waba - similar a Java, para dispositivos pequeos Warren Abstract Machine Prolog, CSC GraphTalk Z-machine - Z-Code Zend Engine - PHP
Adeos es una Capa de Abstraccin de Hardware que puede ser cargado como un mdulo del ncleo Linux. Esto permite la carga de un ncleo en tiempo real como mdulo, al mismo tiempo que se ejecuta Linux, pero con una prioridad ms alta. Denali utiliza la para virtualizacin para proporcionar mquinas virtuales de alto rendimiento sobre procesadores x86. OKL4 utiliza el software libre L4 (microncleo) como un hypervisor para proporcionar una solucin de virtualizacin de alto rendimiento para sistemas embebidos. OpenVZ para Linux Parallels QEMU puede emular una variedad de arquitecturas de CPU sobre muchas plataformas distintas. Virtual Iron Virtuozzo VMware Xen KVM