Hardware Virtualization - Partial Virtualization

Partial Virtualization

In partial virtualization, including address space virtualization, the virtual machine simulates multiple instances of much of an underlying hardware environment, particularly address spaces. Usually, this means that entire operating systems cannot run in the virtual machine – which would be the sign of full virtualization – but that many applications can run. A key form of partial virtualization is address space virtualization, in which each virtual machine consists of an independent address space. This capability requires address relocation hardware, and has been present in most practical examples of partial virtualization.

Partial virtualization was an important historical milestone on the way to full virtualization. It was used in the first-generation time-sharing system CTSS, in the IBM M44/44X experimental paging system, and arguably systems like MVS and the Commodore 64 (a couple of 'task switch' programs). The term could also be used to describe any operating system that provides separate address spaces for individual users or processes, including many that today would not be considered virtual machine systems. Experience with partial virtualization, and its limitations, led to the creation of the first full virtualization system (IBM's CP-40, the first iteration of CP/CMS which would eventually become IBM's VM family). (Many more recent systems, such as Microsoft Windows and Linux, as well as the remaining categories below, also use this basic approach.)

Partial virtualization is significantly easier to implement than full virtualization. It has often provided useful, robust virtual machines, capable of supporting important applications. Partial virtualization has proven highly successful for sharing computer resources among multiple users.

However, in comparison with full virtualization, its drawback is in situations requiring backward compatibility or portability. It can be hard to anticipate precisely which features have been used by a given application. If certain hardware features are not simulated, then any software using those features will fail.

Read more about this topic:  Hardware Virtualization

Famous quotes containing the word partial:

    And meanwhile we have gone on living,
    Living and partly living,
    Picking together the pieces,
    Gathering faggots at nightfall,
    Building a partial shelter,
    For sleeping and eating and drinking and laughter.
    —T.S. (Thomas Stearns)