X86 virtualization

AMD Phenom Die
Intel Core i7 (Bloomfield) CPU
A Linux kernel log showing AMD-Vi information

Use of hardware-assisted virtualization capabilities on an x86/x86-64 CPU.

- X86 virtualization

141 related topics

Relevance

Hardware-assisted virtualization

Platform virtualization approach that enables efficient full virtualization using help from hardware capabilities, primarily from the host processors.

Computer simulation, one of the main cross-computing methodologies.

Hardware-assisted virtualization was added to x86 processors (Intel VT-x or AMD-V) in 2005 and 2006 (respectively).

Xen

Type-1 hypervisor, providing services that allow multiple computer operating systems to execute on the same computer hardware concurrently.

Xen running NetBSD and three Linux distributions
Xen running NetBSD and three Linux distributions

User domains may either be traditional operating systems, such as Microsoft Windows under which privileged instructions are provided by hardware virtualization instructions (if the host processor supports x86 virtualization, e.g., Intel VT-x and AMD-V), or paravirtualized operating systems whereby the operating system is aware that it is running inside a virtual machine, and so makes hypercalls directly, rather than issuing privileged instructions.

Protection ring

In computer science, hierarchical protection domains, often called protection rings, are mechanisms to protect data and functionality from faults (by improving fault tolerance) and malicious behavior (by providing computer security).

Privilege rings for the x86 available in protected mode

A renewed interest in this design structure came with the proliferation of the Xen VMM software, ongoing discussion on monolithic vs. micro-kernels (particularly in Usenet newsgroups and Web forums), Microsoft's Ring-1 design structure as part of their NGSCB initiative, and hypervisors based on x86 virtualization such as Intel VT-x (formerly Vanderpool).

Protected mode

Operational mode of x86-compatible central processing units .

An Intel 80386 microprocessor
Example of privilege ring usage in an operating system using all rings
Virtual segments of 80286
Common method of using paging to create a virtual address space
Paging (on Intel 80386) with page size of 4K

Hardware x86 virtualization required for virtualizing the protected mode itself, however, had to wait for another 20 years.

VMware

For the 1980s/mainframe software company see VM Software (company)

Original logo from 1998 to 2009.

VMware's products predate the virtualization extensions to the x86 instruction set, and do not require virtualization-enabled processors.

Hypervisor

Computer software, firmware or hardware that allows partitioning the resource of a CPU among multiple operating systems or independent programs.

Type-1 and type-2 hypervisors

Since 2005, CPU vendors have added hardware virtualization assistance to their products; for example, Intel VT-x (code-named Vanderpool) and AMD-V (code-named Pacifica).

Intel Atom

Brand name for a line of IA-32 and x86-64 instruction set ultra-low-voltage processors by Intel Corporation designed to reduce electric consumption and power dissipation in comparison with ordinary processors of the Intel Core series.

Logo since 2020
Intel Atom N2800

Centerton adds features previously unavailable in Atom processors, such as Intel VT virtualization technology and support for ECC memory.

Virtualization

Act of creating a virtual (rather than actual) version of something at the same abstraction level, including virtual computer hardware platforms, storage devices, and computer network resources.

Example of 15th-century Latin manuscript text with scribal abbreviations

Over time, more architectures gain required hardware support; for example, since the Haswell microarchitecture (announced in 2013), Intel started to include VMCS shadowing as a technology that accelerates nested virtualization.

X86-64

64-bit version of the x86 instruction set, first released in 1999.

AMD Opteron, the first CPU to introduce the x86-64 extensions in April 2003
The five-volume set of the x86-64 Architecture Programmer's Manual, as published and distributed by AMD in 2002
AMD64 logo
State diagram of the x86-64 operating modes
An area chart showing the representation of different families of microprocessors in the TOP500 supercomputer ranking list, from 1993 to 2019.

However, such programs may be started from an operating system running in long mode on processors supporting VT-x or AMD-V by creating a virtual processor running in the desired mode.

Virtual memory

Memory management technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine" which "creates the illusion to users of a very large memory".

Virtual memory combines active RAM and inactive memory on DASD to form a large range of contiguous addresses.
The University of Manchester Atlas Computer was the first computer to feature true virtual memory.

Early non-hardware-assisted x86 virtualization solutions combined paging and segmentation because x86 paging offers only two protection domains whereas a VMM, guest OS or guest application stack needs three.