Method for dynamic configuration of virtual machine
0 Assignments
0 Petitions
Accused Products
Abstract
A set of programs enable the start and the efficient and secure operation of an operating system (OS) installed on a virtual hard disk that is stored on an external storage device. When the external storage device is connected to a host system, a user can start the OS in a virtual machine on the host system. The virtual machine execution is controlled by a virtual machine monitor (VMM) installed on the host system. At startup of the program, the type of VMM installed on the host system is autodetected. Host system parameters that are relevant for an optimal configuration of the virtual machine, such as the amount of available physical memory, are captured. Before launch of the virtual machine the OS installed on the virtual hard disk is dynamically modified to support hardware emulated by the selected VMM. Configuration templates and scripts for supported VMM types are stored on the external storage device. The template or script that corresponds to the autodetected VMM is used to create an optimized virtual machine configuration. Virtual machine configuration parameters that depend upon host settings are adapted. The created virtual machine configuration includes a specific storage configuration: The virtual machine is configured to use three virtual hard disks for system, user, and paging data. The virtual hard disks for system and user data are configured to use copy-on-write (COW) functionality supported by the respective VMM. With the COW configuration the virtual machine'"'"'s write operations are redirected to a location in a file system on an internally attached storage medium. The non-persistent virtual hard disk used for the page data is entirely stored in the temporary location as an expanding virtual hard disk and is erased after shutdown. If data persistence is required for user and/or system data the respective overlay files are merged with the corresponding virtual hard disk base files on the external storage device after shutdown of the virtual machine. When the program managing the configuration and launch process is closed after shutdown of the virtual machine, all temporary files are deleted. The dynamic COW configuration with deferred, consolidated write operations to the external storage device offers the benefits of improved write performance and security and extended lifetime of the external storage device. The latter is particularly important for flash-memory-based devices with a finite number of sustainable write/erase cycles per storage block.
-
Citations
25 Claims
-
1-10. -10. (canceled)
-
11. A method for dynamically creating a configuration for a virtual machine on a computer running a host operating system that has read and write access to at least one file system on an internal storage device and on which a virtual machine monitor is installed, said virtual machine monitor supporting the emulation of said virtual machine, said virtual machine supporting the execution of a guest operating system and said virtual machine monitor supporting copy on write behavior for virtual hard disks attached to said virtual machine with each virtual hard disk comprising at least one virtual hard disk overlay file and at least one virtual hard disk base file after launch of said guest operating system and, comprising:
-
a. providing an external storage device from which data can be read and to which data can be written by said host operating system and said external storage device being connected to said computer, b. storing one or more virtual hard disks on said external storage device at least one of said virtual hard disks containing a guest operating system installation containing at least one hardware dependent configuration file, and c. providing a plurality of instructions that are executable on said computer said instructions comprising the steps of; 1. detecting said virtual machine monitor installed on said host operating system; 2. creating a virtual machine configuration for said virtual machine monitor for running one guest operating system installation of said guest operating system installations stored on said virtual hard disks, configuring copy on write behavior for the virtual hard disk storing said guest operating system installation and configuring a location in a file system on one of said internal storage devices for storing overlay files that correspond to said virtual hard disk containing said guest operating system installation; and 3. providing data persistence for said virtual hard disk storing said guest operating system installation by merging said virtual hard disk overlay files with the corresponding virtual hard disk base files after shutdown of said virtual machine, whereby said virtual machine running said guest operating system will deliver better runtime performance than with a configuration where said guest operating system directly accesses a virtual hard disk stored on said external storage device providing lesser write performance. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method for dynamically configuring a guest operating system that is installed on a virtual hard disk, said guest operating system containing one or more hardware dependent configuration files said configuration files enabling the execution of said guest operating system in a virtual machine on a virtual machine monitor type out of a plurality of virtual machine monitor types, to enable execution of said guest operating system in a virtual machine controlled by an instance of a second virtual machine monitor type out of said plurality of virtual machine monitor types, said instance of a second virtual machine monitor type being installed on a computer that runs a host operating system that has read and write access to said virtual hard disk and providing a plurality of instructions that are executable by said computer, said instructions comprising the steps of:
-
a. detecting the type of said instance of a second virtual machine monitor type installed on said host operating system running on said computer; b. copying said hardware dependent configuration files out of said virtual hard disk; c. modifying said hardware dependent configuration files to support a hardware emulated by said instance of a second virtual machine monitor type; and d. copying said hardware dependent configuration files back into said virtual hard disk, whereby said guest operating system is prepared for running on a virtual machine emulated by said instance of a second virtual machine monitor type detected on said computer. - View Dependent Claims (18, 19, 20)
-
-
21. A portable virtual machine comprising:
-
a. a portable external storage device that is connected to a computer running a host operating system that provides read and write accesses to at least one file system on an internal storage device, said portable external storage device being also accessible for read and write operations by said host operating system and said portable external storage device storing one or more virtual hard disks in one of a plurality of virtual hard disk formats at least one of said virtual hard disks containing a guest operating system installation containing at least one hardware dependent configuration file; b. a first computer program stored on said portable external storage device comprising a plurality of instructions for detecting the presence and type of one or more installations of virtual machine monitor types out of a plurality of virtual machine monitor types on said host operating system, said installations supporting the emulation of a virtual machine and said installations supporting copy on write behavior for virtual hard disks attached to said virtual machine with each virtual hard disk comprising at least one virtual hard disk overlay file and at least one virtual hard disk base file after launch of said guest operating system installation; c. a second computer program stored on said portable external storage device whose execution is contingent upon a detection of at least one installation instance of a virtual machine monitor type out of said plurality of virtual machine monitor types on said host operating system comprising a plurality of instructions for; 1. copying said hardware dependent configuration files out of a virtual hard disk storing a guest operating system that is to be launched; 2. modifying said hardware dependent configuration files to support the virtual machine hardware emulated by a first installation of a virtual machine monitor type out of said plurality of virtual machine monitor types on said host operating system; 3. copying said hardware dependent configuration files back into said virtual hard disk; 4. creating a virtual machine configuration for a virtual machine emulated by said first installation configuring copy on write behavior for the virtual hard disk storing said guest operating system installation and configuring a location in a file system on one of said internal storage devices for storing overlay files corresponding to said virtual hard disk; and 5. providing data persistence for said virtual hard disk storing said guest operating system installation by merging said virtual hard disk overlay files with the corresponding virtual hard disk base files after shutdown of said virtual machine, Whereby said guest operating system stored on said portable external storage device can be launched on any system having one instance of said plurality of virtual machine monitor types installed, delivering better runtime performance than with a configuration where said guest operating system directly accesses a virtual hard disk stored on said portable external storage device providing lesser write performance. - View Dependent Claims (22, 23, 24, 25)
-
Specification