Discos duros virtuales en Windows Virtual PC

Los discos duros virtuales ofrecen almacenamiento para una máquina virtual. En Windows Virtual PC cada máquina virtual puede tener como máximo 3 discos duros virtuales.

Los discos duros virtuales físicamente se almacenan en un único archivo con formato vhd (Virtual Hard Disk), que es el mismo usado en otras soluciones de virtualización de Microsoft como Microsoft Virtual PC 2007, Microsoft Virtual Server 2005 y Microsoft Hyper-V.

Nota: aunque los discos duros virtuales con formato vhd pueden ser accedidos desde cualquiera de estas soluciones de virtualización de Microsoft, y también pueden ser montados de forma nativa en sistemas operativos Windows 7 o Windows Server 2008 R2, esto no significa que un disco duro virtual, con un sistema operativo instalado, pueda ser usado para arrancar una máquina virtual desde una solución de virtualización distinta a aquella en la que fue creado. La compatibilidad es sólo de acceso a datos, no de uso de los sistemas operativos instalados en los discos duros virtuales. La compatibilidad entre sistemas operativos virtualizados con las distintas soluciones de Microsoft sólo es posible en algunos casos, y además en esos casos habitualmente no será una compatibilidad automática, sino que requerirá de un proceso de preparación previo.

Tipos de discos duros virtuales para Windows Virtual PC

i) Fijos: son discos duros virtuales que desde el momento de su creación ocupan, en el almacenamiento físico que los aloja, la totalidad del tamaño con que se definen, aunque estén vacíos.

Este tipo de discos requiere más tiempo para crearse inicialmente, y están poco optimizados en los referente al consumo de espacio, sin embargo tienen la ventaja de un mayor rendimiento en lectura y escritura de contenidos, ya que todo el espacio físico que ocupan es un bloque contiguo, y por lo tanto las operaciones de lectura y escritura físicas son más rápidas que si se tuvieran que usar bloques separados.

ii) De expansión dinámica, o simplemente dinámicos: se trata de discos duros virtuales que físicamente van aumentando de tamaño a medida que van aumentando sus contenidos. Aunque estos discos se definen con un tamaño, y desde el sistema operativo virtual aparecen con ese tamaño, en el almacenamiento físico que los soporta sólo ocupan el espacio necesario para la información que albergan, más una cantidad extra de información en forma de metadatos.

El dato del tamaño con que se define inicialmente sólo establece el tamaño máximo que puede llegar a tener el fichero VHD en el almacenamiento físico.

Estos discos tienen la ventaja del uso eficiente del espacio, y la desventaja de un peor rendimiento frente a los discos duros fijos, ya que el no disponer de espacio libre reservado obliga a usar bloques separados para almacenar la nueva información, lo cual ralentiza las operaciones físicas de lectura y escritura.

Otra desventaja de este tipo de discos es que pueden quedarse repentinamente sin espacio si se llena el almacenamiento físico que los contiene. Por este motivo Microsoft recomienda no usar discos duros dinámicos en entornos de producción.

iii) De diferenciación: un disco duro virtual de diferenciación, o diferencial, contiene todas las modificaciones hechas en el estado de otro disco duro virtual, denominado "padre".

De esta manera el estado actual de un VHD se representa por el conjunto del VHD padre y el VHD diferencial, que contiene todos los cambios que han producido en el estado del sistema con respecto al inicial, y que deberían haberse reflejado en el VHD padre, si no se hubiera creado el disco duro virtual diferencial.

Para que un disco duro virtual diferencial pueda ser usado en una máquina virtual, es necesario que el disco duro padre no haya sido alterado en modo alguno desde la creación del diferencial.

Creación de un disco duro virtual

Hay dos formas de crear un disco duro virtual desde Windows Virtual PC:

- Desde el asistente para creación de una nueva máquina virtual: permite crear discos duros virtuales vinculados a una máquina virtual nueva.

- Desde las opciones de configuración de una máquina virtual ya creada: permite crear discos duros virtuales vinculados a una máquina virtual existente.

En ambos casos el asistente de creación de discos duros virtuales es el mismo, pero desde el asistente para creación de máquinas virtuales también se dispone por separado de una opción rápida para crear un disco duro virtual de tipo dinámico de 127 GB.

Para iniciar el asistente de creación de disco duro virtual accedemos a las opciones de configuración de una máquina virtual desde el menú contextual de dicha máquina virtual.

Una vez abierta la consola de configuración seleccionamos una de las unidades de disco duro de la máquina virtual y entre las diversas opciones de edición aparece la de lanzar el asistente de creación de un nuevo disco duro.


Figura 1.- Inicio del asistente para creación de un disco duro virtual en Windows Virtual PC

El asistente permite crear discos duros de tipo fijo, expandibles dinámicamente o de diferenciación.


Figura 2.- Tipos de discos duros dinámicos en el asistente para creación de un disco duro virtual

Para los discos duros fijos y dinámicos el asistente pide un nombre para el fichero vhd, una ubicación y un tamaño.

Para los discos duros de diferenciación el asistente, además del nombre y la ubicación, pide un disco duro virtual para usar como disco "padre".

Modificación de discos duros virtuales

Windows Virtual PC ofrece la posibilidad de realizar ciertos tipos de modificaciones en discos duros virtuales.

Los cambios se pueden realizar mediante el Asistente para modificar discos duros virtuales.

Para iniciar el asistente accedemos a las opciones de configuración de una máquina virtual desde el menú contextual de dicha máquina virtual.

Una vez abierta la consola de configuración seleccionamos una de las unidades de disco duro de la máquina virtual y entre las diversas opciones de edición aparece la de elegir un disco duro virtual y la de lanzar el asistente de modificación sobre dicho disco duro virtual.


Figura 3.- Inicio del asistente para modificación de un disco duro virtual en Windows Virtual PC

Según el tipo del disco duro virtual seleccionado el asistente permite realizar los siguientes tipos de modificaciones:

- Compactar: permite reducir el tamaño del archivo vhd usado por un disco de diferenciación o un disco duro virtual de expansión dinámica.
En general resulta beneficioso compactar un disco duro virtual después de haber eliminado gran cantidad de datos, ya que la simple eliminación de los datos en la máquina virtual no se traduce en una reducción del tamaño físico del archivo vhd.

Nota: en el caso de discos dinámicos, se debe ejecutar desde el sistema operativo virtualizado la herramienta "Precompactador" (disponible como un archivo de tipo ISO en la carpeta de instalación de Windows Virtual PC) antes de compactar el disco duro virtual desde el asistente. En caso contrario, el proceso externo de compactación no reducirá el tamaño del archivo vhd.

- Convertir: permite convertir discos duros virtuales fijos en discos duros virtuales de expansión dinámica y a la inversa.

Nota: antes de intentar convertir un disco duro virtual de expansión dinámica en un disco duro virtual fijo, se debe comprobar si hay suficiente espacio físico de almacenamiento para el archivo del disco duro virtual, ya que el proceso de conversión crea un disco duro virtual de tamaño fijo cuyo tamaño coincide con el máximo especificado originalmente para el disco duro virtual de expansión dinámica. En consecuencia, el archivo de disco duro virtual de tamaño fijo podría ser mucho mayor que el archivo de disco duro virtual de expansión dinámica.

- Combinar: permite combinar el contenido almacenado en un disco de diferenciación con el contenido del disco duro virtual "padre". La combinación puede hacerse tanto en el disco primario como en un nuevo disco duro virtual.
Cuando la combinación se realiza en el disco "padre", se le aplican a este todos los cambios almacenados en el disco de diferenciación y, a continuación, se elimina el disco de diferenciación.
Cuando la combinación se realiza en un nuevo disco duro virtual, tanto el disco "padre" como el disco de diferenciación se mantienen en su estado actual, y por lo tanto el disco duro de diferenciación puede seguir siendo usado.


Figura 4.- Opciones de modificación para un disco duro virtual de diferenciación en Windows Virtual PC

Discos para deshacer

Discos para deshacer es una característica de Windows Virtual PC que guarda los cambios que deberían aplicarse a un disco duro virtual en un archivo especial separado, llamado disco para deshacer, permitiendo disponer de la opción de no aplicar dichos cambios, y por lo tanto dejar el disco duro virtual en su estado inicial.

La opción Discos para deshacer no se aplica a los discos duros virtuales por separado, sino que se aplica a la máquina virtual en su conjunto, es decir, afecta a todos los discos duros virtuales de una máquina virtual.

Cuando se ejecuta una máquina virtual que usa Discos para deshacer, los cambios sobre el contenido de los discos duros virtuales se almacenan temporalmente en un archivo de Disco para deshacer, que es un archivo con formato vud. Este archivo se almacena siempre en la misma ubicación en la que reside el archivo de definición de la máquina virtual (archivo vmc).

La característica Discos para deshacer se puede activar o desactivar desde las opciones de configuración de cada máquina virtual. También es posible habilitar esta característica en el asistente para creación de máquinas virtuales.

Cuando se finaliza la ejecución de la máquina virtual se dispone de tres opciones con respecto a los cambios:

i) Aplicarlos: los cambios se aplican al disco duro virtual y el disco para deshacer se elimina.

ii) Descartarlos: el disco virtual permanece inalterado, con lo cual cuando se vuelva a poner la máquina en ejecución lo hará en el estado previo a las modificaciones descartadas. El disco para deshacer se elimina.

iii) Mantenerlos: el disco para deshacer permanece y cuando se vuelva a iniciar la máquina virtual lo hará en el mismo estado en que se apagó; los cambios se seguirán añadiendo en el Disco para deshacer.

Las opciones de mantener los cambios o de descartarlos están ambas presentes en el menú de cierre de una máquina virtual que se está ejecutando:

- Las opciones "Apagar" y "Cerrar", apagan  la máquina virtual y mantiene los cambios en el disco para deshacer. La diferencia estriba en que "Apagar" cierra la máquina inmediatamente, con lo cual las aplicaciones que estén en ejecución no guardan el trabajo, mientras que "Cerrar" realiza un cierre ordenado del sistema.

- La opción "Apagar y descartar los cambios" elimina el disco para deshacer y deja el disco virtual inalterado, con lo cual la máquina virtual vuelve a su estado anterior a los cambios que se acaban de descartar.


Figura 5.- Opciones de disco para deshacer en el menú de apagado de máquina virtual de Windows Virtual PC

Nota: con respecto al disco para deshacer las opciones "Cerrar" e "Hibernar" se comportan como la opción "Apagar", ya que también mantienen los cambios almacenados y no los aplican al disco duro virtual.

Una vez apagada la máquina virtual se puede acceder a la opción de aplicar cambios del disco para deshacer, y también de nuevo a la opción de descartar cambios, desde la consola de configuración de la máquina virtual.


Figura 6.- Opciones de disco para deshacer en la configuración de máquinas virtuales en Windows Virtual PC