热门问题
时间线
聊天
视角
基於核心的虛擬機器
用于Linux内核中的虚拟化基础设施 来自维基百科,自由的百科全书
Remove ads
基於核心的虛擬機器(英語:Kernel-based Virtual Machine,縮寫為KVM)是一種用於Linux核心中的虛擬化基礎設施,可將Linux核心轉化為一個虛擬機器監視器。KVM於2007年2月5日被併入Linux 2.6.20核心中。[1]KVM需要支援硬體虛擬化拓展特性的處理器。[2]。
KVM起初支援x86平台處理器並隨後被移植到了S/390、[3]PowerPC、[4]和IA-64平台上。在3.9核心合併時也匯入了ARM移植版。[5]
在KVM上可以執行諸多客戶作業系統,包括Linux的諸多發行版、BSD、Solaris、Windows、Haiku、ReactOS、Plan 9、AROS研究作業系統[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半虛擬化 在Linux、OpenBSD、[10]FreeBSD、[11] NetBSD、[12]Windows上支援對部分裝置的半虛擬化。這項特性支援半虛擬化的網卡、半虛擬化的磁碟控制器、[13]用於調整客戶端主記憶體使用的氣球裝置(Balloon device)和使用獨立計算環境簡單協定的VGA圖形介面。
Remove ads
內部結構

KVM提供抽象的裝置,但不類比處理器。它開放了/dev/kvm介面,供使用者模式的主機使用:
- 設定客戶虛擬機器的位址空間。宿主機同樣也需使用者可用於引導進主作業系統的韌體鏡像(通常為類比PC時的自訂BIOS)。
- 為客戶機類比I/O。
- 將客戶機的影片顯示對映回系統宿主機上。
在Linux上,QEMU版本0.10.1及更新版就是一個使用者層主機。QEMU使用KVM以近乎原生的速度虛擬化客戶機,若無KVM的話則將僅使用軟體類比。
授權
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)在一家名為Qumranet的初創企業開始了KVM的研發工作[17],隨後此公司於2008年被紅帽公司收購。[18]
KVM被合併入Linux核心版本2.6.20的主流分支,於2007年2月5日釋出。[1]
KVM現由保羅·邦齊尼(Paolo Bonzini)維護。[19]
圖形管理工具

- Kimchi – 網頁版KVM虛擬化管理工具
- Virtual Machine Manager – 支援建立、編輯、啟動與停止基於KVM的虛擬機器,同時也支援對宿主之間的即時或冷拖拽虛擬機器遷移。
- Proxmox虛擬環境 – 一項開源的虛擬化管理包,包括KVM與LXC。同時它還有裸機安裝器、網頁版遠端管理介面、HA叢集堆疊、統一儲存、柔性網路及可選的商業支援。
- OpenQRM – 用於管理不同資料中心基礎設施的平台。
- GNOME 機櫃 – Linux上用於管理libvirt客戶機的Gnome介面。
- oVirt – 用於管理基於libvirt的KVM開源工具。
類比硬體
另請參閱
- CloudStack
- 虛擬化軟體對比
- 核心同頁合併 (KSM)
- Lguest
- libguestfs
- libvirt
- 開放虛擬化聯盟
- OpenNebula
- OpenStack
- oVirt
- Vx32
- Xen
參考文獻
書刊目錄
外部連結
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads