MAQUINA VIRTUALES.
Enviado por tomas • 20 de Mayo de 2018 • 1.498 Palabras (6 Páginas) • 494 Visitas
...
-
Aplicaciones de las máquinas virtuales de sistema
Varios sistemas operativos distintos pueden coexistir sobre la misma computadora, en sólido aislamiento el uno del otro, por ejemplo para probar un sistema operativo nuevo sin necesidad de instalarlo directamente.
La máquina virtual puede proporcionar una arquitectura de instrucciones (ISA) que sea algo distinta de la verdadera máquina. Es decir, podemos simular hardware.
Varias máquinas 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 máquina de manera completamente aislada y compartiendo los recursos de una única computadora. La consolidación 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 virtualización es una excelente opción hoy día, ya que las máquinas actuales (Laptops, desktops, servidores) en la mayoría de los casos están 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 máquinas en una ya existente permite un ahorro considerable de los costos asociados (energía, mantenimiento, espacio, etc).
-
Máquinas virtuales de proceso
En inglés Process Virtual Machine, una máquina virtual de proceso, a veces llamada "máquina virtual de aplicación", se ejecuta como un proceso normal dentro de un sistema operativo y soporta un solo proceso. La máquina se inicia automáticamente cuando se lanza el proceso que se desea ejecutar y se detiene para cuando éste finaliza. Su objetivo es el de proporcionar un entorno de ejecución independiente de la plataforma de hardware y del sistema operativo, que oculte los detalles de la plataforma subyacente y permita que un programa se ejecute siempre de la misma forma sobre cualquier plataforma.
El ejemplo más conocido actualmente de este tipo de máquina virtual es la máquina virtual de Java. Otra máquina virtual muy conocida es la del entorno .Net de Microsoft que se llama "Common Language Runtime".
-
Máquina virtual java
Una máquina virtual Java (en inglés Java Virtual Machine, JVM) es una máquina virtual de proceso nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar y ejecutar instrucciones expresadas en un código binario especial (el bytecode Java), el cual es generado por el compilador del lenguaje Java.
El código binario de Java no es un lenguaje de alto nivel, sino un verdadero código máquina de bajo nivel, viable incluso como lenguaje de entrada para un microprocesador físico. Como todas las piezas del rompecabezas Java, fue desarrollado originalmente por Sun.
La JVM es una de las piezas fundamentales de la plataforma Java. Básicamente se sitúa en un nivel superior al hardware del sistema sobre el que se pretende ejecutar la aplicación, y este actúa como un puente que entiende tanto el bytecode como el sistema sobre el que se pretende ejecutar. Así, cuando se escribe una aplicación Java, se hace pensando que será ejecutada en una máquina virtual Java en concreto, siendo ésta la que en última instancia convierte de código bytecode a código nativo del dispositivo final.
La gran ventaja de la máquina virtual java es aportar portabilidad al lenguaje, de manera que desde Sun Microsystems se han creado diferentes máquinas virtuales java para diferentes arquitecturas, y, así, un programa .class escrito en Windows puede ser interpretado en un entorno Linux. Tan solo es necesario disponer de dicha máquina virtual para dichos entornos. De ahí el famoso axioma que sigue a Java: "escríbelo una vez, ejecútalo en cualquier parte", o "Write once, run anywhere".
La máquina virtual de Java puede estar implementada en software, hardware, una herramienta de desarrollo o un Web browser; lee y ejecuta código pre compilado bytecode que es independiente de la plataforma multiplataforma.
REFERENCIAS
[2] Jesús Niño Camazón,”Sistemas operativos monopuesto”
(Editex, 2011) [En línea].
Disponible en: http://books.google.es
.
[3]Juan Antonio Pérez Campanero Atanasio, “Conceptos de Sistemas Operativos” (Univ Pontifica Comillas, 2002) [En línea]
Disponible en: http://books.google.es
[4] Xavier Cardona Peris, 2009 “Sistemas Operativos Monopuesto” [En linea]
Disponible en: http://books.google.es
[5] ANDREW S AUTOR TANENBAUM “Sistemas Operativos Modernos” [En linea]
Disponible en: http://books.google.es
...