One: What is virtualization
Virtualization is a generalized term, and in computer terms it usually means that the computing component runs on a virtual basis rather than on a real basis. Virtualization technology can expand the capacity of the hardware, simplifying the software reconfiguration process. CPU Virtualization technology can simulate multi-CPU parallelism on a single CPU, allowing one platform to run multiple operating systems at the same time, and applications can be run independently of each other, thereby significantly increasing the productivity of the computer. --Baidu Encyclopedia
Summary: Place the underlying computer resources. Virtual into a separate computer resource. Each resource must have all the devices of the computer's five major parts.
Two: The difference between analog and virtual words.
Virtualized CPUs do only the appropriate allocation management. The CPU's architecture is consistent with the CPU of the virtual machine. The simulated CPU can be any type.
Three: Virtualization classification
1) Semi-virtualized: virtual machines know that their I/O is virtual.
Semi-virtualized products: XEN KVM
650) this.width=650; "src=" Http://s3.51cto.com/wyfs02/M02/4C/A7/wKioL1RDX93BvECvAAB9zrebqIs146.jpg "title=" Virtualize one. png "alt=" wkiol1rdx93bvecvaab9zrebqis146.jpg "/>
The virtual machine runs directly on the hardware. Architecture and virtual hardware are consistent. Also known as type-one virtualization
p) OS level Virtualization: Virtual machines run on the operating system and share the same kernel with the operating system.
OS Virtualization Products: Open vz, LXC
650) this.width=650; "src=" Http://s3.51cto.com/wyfs02/M00/4C/A8/wKioL1RDYefxSBrfAAB3E97YF9w480.jpg "title=" OS virtual machine. png "alt=" wkiol1rdyefxsbrfaab3e97yf9w480.jpg "/>
3) Full virtualization: Virtual machines do not know that they are working in a virtual environment
4) Library Virtualization: You can install Windows programs on Linux
Wine
5) Application Virtualization: JVM
Four: Virtualization of computer Parts
1) Virtualization of the CPU
BT Technology accelerates performance: Binary translation technology that enables virtual CPUs to run directly on the physical CPU via binary acceleration technology.
HVM: Hardware-assisted acceleration technology that allows the CPU of a virtual machine to work directly on the 0 ring. The physical 0 ring becomes-1 ring. Calling a hardware drive device or passing a 1 loop is required.
When invoking the CPU in para-virtualization, go directly through the Hypercall
2) Memory Virtualization
The linear space is the virtual memory space. The mapping between the linear space and the physical space is controlled by the MMU in the CPU. In order to improve the hit ratio of the mapping relationship. The TLB cache appears, In the case of semi-virtualized TLB cache, the same name corresponds to a different result phenomenon. Therefore, each time you switch the virtual machine, the TLB is emptied. In order to solve these problems, the Tlb,mmu virtualization is proposed.
The implementation of the MMU virtualization GVA-HPA the GPA is omitted.
TLB Virtualization Taggedtlb: Tag the GVA-HPA mappings for each virtual machine.
3) Virtualization of I/O devices
Simulation (software): There is no big difference between simulation and full virtualization.
Semi-virtualized: IO Fronted--io Backend
Transmission Technology IO: Direct chunked physical hard disk to virtual machine
Display device: Frame buffering mechanism
Keyboard Mouse: Snaps through focus.
V: Virtualized Networks
Bridging: Treat the host Nic as a bridge. The network card of the virtual machine is connected to the bridge. Communicate with the outside world.
Host only: In host-only mode, the virtual host is not able to communicate with the external host, only the virtual host between the virtual host and the host communication (in a pure software way to create a virtual switch, a virtual machine connected to the virtual switch).
NAT Forwarding: The virtual machine communicates with the external host by translating the source address into the IP address of the Cheng host via NAT translation
TUN: Simulates the network layer device. Operation on the third level.
TAP: equivalent to an Ethernet device. Work on the second floor.
This article is from the "Slayer" blog, make sure to keep this source http://slayer.blog.51cto.com/4845839/1565667
Virtualization of Linux