Virtual Server architecture

Virtual Server architecture

Virtual Server 2005 is a multithreaded application that runs as a system service, with each virtual machine running in its own thread of execution. Input/output (I/O) occurs in child threads. Virtual Server derives two core functions from the host operating system: the underlying host operating system kernel schedules CPU resources, and device drivers of the host operating system provide access to system devices. Virtual Server's Virtual Machine Monitor (VMM) provides the software infrastructure to create virtual machines, manage instances, and interact with guest operating systems.

For a description of the hardware that Virtual Server emulates, see Emulated hardware. For more information about the components of Virtual Server, see Virtual Server Components. For more information about VMM, see Virtual Machine Monitor.

The following figure illustrates Virtual Server architecture.

Virtual Server architecture

The architecture of Virtual Server enables two key features: isolation and encapsulation.

Isolation. Isolation means to separate or insulate one entity from other entities. Virtual Server isolates virtual machines to prevent them from accessing resources or data owned by other virtual machines or the host operating system. VMM ensures that each virtual machine has its own dedicated 32-bit address space that is fully isolated from the address space of other virtual machines as well as the host operating system. If a virtual machine encounters a software failure, isolation enables other virtual machines and the host operating system to continue running. Isolation results in a robust and resilient architecture, which means that you can run even "badly behaved" applications in a stable, secure environment.

Encapsulation. Encapsulation means to package data and processing within a single object. In the case of virtual machines, this means that virtual machines are packaged into a single file, a virtual hard disk (.vhd) file, which you can easily move among host operating systems running Virtual Server. Decoupling applications from hardware through encapsulation simplifies capacity planning, deployment, and management tasks.

For more information about the architecture of Virtual Server, see Architecture.