虚拟化技术基础原理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟化技术基础原理相关的知识,希望对你有一定的参考价值。
虚拟化技术:
虚拟化技术类型:
主机虚拟化:xen, kvm, virtualbox, ...
容器(用户空间隔离): lxc(LinuX Container), openvz, ...
系统库虚拟化:wine, ...
应用程序级虚拟化:jvm, pvm,...
主机虚拟化:
CPU:
模拟:emulation, 虚拟机的arch与物理平台的arch可以不相同;qemu;
虚拟:virtualization
完全虚拟化(full-virt)
BT: 二进制转换 (软件)
HVM:硬件辅助的虚拟化(硬件)
半(准)虚拟化 (para-virt)
GuestOS得明确知道自己运行于虚拟化技术
内存:
MMU virtualization:
Intel: EPT, Extended Page Table
AMD: NPT, Nested Page Table
TLB virtualization:
tagged TLB
IO:
Emulation
Para-virtualization
IO-through:IO透传
主机虚拟化的类型:
TYPE-I:
于硬件级别直接运行hypervisor;
xen, vmware ESX/ESXI
TYPE-II:
于硬件级别运行一个OS(Host OS),而此OS上运行一个VMM;
vmware workstation, virtualbox, kvm
Linux目前流行的开源虚拟化技术解决方案:
主机虚拟化:xen, kvm, virtualbox
容器级:lxc, libcontainer, runC, openvz
模拟器:qemu
KVM的组件:
kvm.ko:模块
API
qemu-kvm:用户空间的工具程序;
qemu-kvm is an open source virtualizer that provides hardware emulation for the KVM hypervisor.
libvirt:Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The main package includes the libvirtd server exporting the virtualization support.
C/S:
Client:
libvirt-client
virt-manager
Daemon:
libvirt-daemon
以上是关于虚拟化技术基础原理的主要内容,如果未能解决你的问题,请参考以下文章