基于内核的虚拟机
模板:Distinguish 模板:NoteTA 模板:Infobox software
基于内核的虚拟机(模板:Lang-en,縮寫為模板:Lang)是一种用於Linux內核中的虛擬化基礎设施,可將Linux內核轉化為一個虚拟机监视器。KVM于2007年2月5日被導入Linux 2.6.20核心中。[1]KVM需要支持模板:Tsl特性的处理器。[2]。
KVM起初支持x86平台处理器并随后被移植到了模板:Tsl、[3]PowerPC、[4]和IA-64平台上。在3.9内核合并时也导入了ARM移植版。[5]
在KVM上可以运行诸多客户操作系统,包括Linux的诸多发行版、BSD、Solaris、Windows、Haiku、ReactOS、Plan 9、模板:Tsl[6]和OS X。[7]除此之外,还支持Android 2.2、GNU/Hurd[8](Debian K16)、Minix 3.1.2a、Solaris 10 U3和Darwin 8.0.1,而其他操作系统或新版操作系统都支持KVM,仅仅存在一些限制而已。[9]
VirtIO模板:Tsl 在Linux、OpenBSD、[10]FreeBSD、[11] NetBSD、[12]Windows上支持对部分设备的模板:Tsl。这项特性支持半虚拟化的网卡、半虚拟化的磁盘控制器、[13]用于调整客户端内存使用的气球设备(Balloon device)和使用獨立計算環境簡單協議的VGA图形接口。
内部结构[编辑]
KVM提供抽象的設備,但不模擬處理器。它開放了/dev/kvm接口,供使用者模式的主機使用:
- 设置客户虚拟机的地址空间。宿主机同样也需用户可用于引导进主操作系统的固件镜像(通常为模拟PC时的自定义BIOS)。
- 为客户机模拟I/O。
- 将客户机的视频显示映射回系统宿主机上。
在Linux上,QEMU版本0.10.1及更新版就是一个用户层主机。QEMU使用KVM以近乎原生的速度虚拟化客户机,若无KVM的话则将仅使用软件模拟。
KVM内部使用模板:Tsl作为对16位x86 BIOS的开源模拟。[15]
授权[编辑]
KVM的组件使用多个GNU协议授权:[16]
- KVM内核模块:GPL v2
- KVM用户模块:LGPL v2
- QEMU虚拟CPU内核库(libqemu.a)和QEMU PC系统模拟器:LGPL
- Linux用户模式QEMU模拟器:GPL
- BIOS文件(bios.bin、vgabios.bin和vgabios-cirrus.bin):LGPL v2或更新
历史[编辑]
阿维·齐维迪(Avi Kivity)在一家名为模板:Tsl的初创企业开始了KVM的研发工作[17],随后此公司于2008年被紅帽公司收购。[18]
KVM被合并入Linux内核版本2.6.20的主流分支,于2007年2月5日发布。[1]
KVM现由保罗·邦齐尼(Paolo Bonzini)维护。[19]
图形管理工具[编辑]

- 模板:Tsl模板:Snd网页版KVM虚拟化管理工具
- Virtual Machine Manager模板:Snd支持创建、编辑、启动与停止基于KVM的虚拟机,同时也支持对宿主之间的实时或冷拖拽虚拟机迁移。
- Proxmox虚拟环境模板:Snd一项开源的虚拟化管理包,包括KVM与LXC。同时它还有裸机安装器、网页版远程管理界面、HA集群堆栈、统一存储、柔性网络及可选的商业支持。
- 模板:Tsl模板:Snd用于管理不同数据中心基础设施的平台。
- GNOME 機櫃模板:SndLinux上用于管理libvirt客户机的Gnome界面。
- 模板:Tsl模板:Snd用于管理基于libvirt的KVM开源工具。
模拟硬件[编辑]
分类 | 设备 |
---|---|
显示卡 | Cirrus CLGD 5446 PCI VGA卡,具有Bochs与VESA拓展的虚拟VGA卡[20],QXL顯示卡,使用模板:Tsl作为虚拟3D CPU。[21] |
外设组件互连标准 | 模板:Tsl主机及PCI桥与模板:Tsl [20];Intel Q35與ICH9。 |
输入设备 | PS/2键鼠[20],USB鍵鼠 |
声卡 | 模板:Tsl、ENSONIQ AudioPCI 模板:Tsl、模板:Tsl、CS4231A兼容设备[20],Intel HD Audio |
以太网 网卡 | AMD Am79C970A (模板:Tsl)、E1000(Intel 82540EM, 82573L, 82544GC)、NE2000、瑞昱模板:Tsl、Red Hat VirtIO |
儲存裝置 | IDE、SATA、SCSI、SAS、NVMe、USB和VirtIO |
看門狗計時器 | 英特尔6300ESB或IB700 |
随机存取存储器 | 介于50 MB与32 TB之间 |
中央处理器 | 1 – 160 个CPU |
另请参阅[编辑]
外部链接[编辑]
- 模板:Official website
- Best practices for the Kernel-based Virtual Machine (页面存档备份,存于-{zh-cn:互联网档案馆;zh-tw:網際網路檔案館;zh-hk:互聯網檔案館;zh-sg:互联网档案馆;}-), IBM, second edition, April 2012
- Virtio-blk Performance Improvement, KVM Forum 2012, November 8, 2012, by Asias He
- Wikibook QEMU & KVM
Kernel-based Virtual Machine
引用错误:<ref>
标签存在,但没有找到<references/>
标签