Kernel-based Virtual Machine

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
Kernel-based Virtual Machine
Kvmbanner-logo2 1.png
Kvm running various guests.png
プログラミング言語 C
対応OS Linuxカーネルの一部
プラットフォーム x86(インテル、AMD)
VTまたはSVM
サポート状況 開発中
種別 仮想化
ライセンス GPL または LGPL
公式サイト www.linux-kvm.org
テンプレートを表示

Kernel-based Virtual Machine (KVM) は、Linuxカーネル仮想化基盤。Linuxカーネル 2.6.20 以降に標準搭載されている。

概要[編集]

Intel VTまたはAMD-Vを使ったネイティブ仮想化をサポートしている。またLinuxおよびWindowsをゲストOSとして、準仮想化を限定的にサポートしている。これには準仮想ネットワークドライバ[1]、ゲストOSの仮想記憶管理の動作を変更するバルーンドライバ[2]、Linuxゲスト向けのCPU最適化などが含まれる。KVMは今のところローダブル・カーネル・モジュールとして実装されている。

他のアーキテクチャへの移植としては、s390[3]PowerPC[4]IA-64[5]がある。2007年2月、KVMの最初のバージョンが Linux 2.6.20 に含まれる形となった[6]。また、FreeBSDにもローダブル・カーネル・モジュールとして移植されている[7]

KVM上で動作するゲストOSは幅広く、各種Linux、BSD、SolarisWindowsHaikuReactOSAROS Research Operating System などが動作する[8]。また、パッチを当てれば Mac OS X が動作する[9]

KVM自体はAPICなど一部を除いて周辺装置のエミュレーションをしない。/dev/kvm インタフェースを使うユーザープログラムがゲストのアドレス空間を設定し、周辺装置のエミュレーションを提供し、ゲストのI/OをホストのI/Oにマッピングする。この機能を担うプログラムとしては、QEMU(0.10.0 以降)がある。

KVMの各部品は、以下のように様々なGNUライセンスでライセンスされている[10]

  • 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 あるいはそれ以降

KVMの保守は Avi Kivity が行っており、Qumranet(KVMを使った企業向けソリューションを提供する会社)が援助している[11]。Qumranetは、現在はレッドハットの子会社となっている[12]

グラフィカルな管理ツール[編集]

  • Virtual Machine Manager - KVMベースの仮想機械の生成、編集、起動、停止をサポート
  • ConVirt - KVMベースの仮想機械の生成、編集、起動、停止をサポート。また、ドラッグ・アンド・ドロップによってVMを移動させることができる。
  • Proxmox Virtual Environment - フリーな仮想化ソフトウェア。KVMとOpenVZを同梱。管理用GUIを含み、オプションで有償サポートがある。
  • Karesansui

エミュレート対象ハードウェア[編集]

前述のように周辺装置のエミュレーションのほとんどはQEMUにより提供される。そのため 利用可能な周辺装置のバリエーションはQEMUのものと同じになる。

クラス デバイス
ビデオカード VGA[13]
サウンドカード Sound Blaster 16[14]
イーサネット ネットワークカード AMD Am79C970A (and Am7990?)[15], E1000 (Intel 82540EM, 82573L, 82544GC) [16], NE2000[17], Realtek 8139[18]

脚注・出典[編集]

  1. ^ Gmane - Mail To News And Back Again 2007年4月12日
  2. ^ 3.2 Ballooning
  3. ^ Gmane - Mail To News And Back Again 2007年4月26日
  4. ^ KVM PowerPC support
  5. ^ KVM Status
  6. ^ Linux: 2.6.20 Kernel Released”. KernelTrap. 2012年7月23日時点のオリジナルよりアーカイブ。2009年6月23日閲覧。
  7. ^ FreeBSD Quarterly Status Report: Porting Linux KVM to FreeBSD”. 2009年6月23日閲覧。
  8. ^ KVM wiki: Guest support status”. 2007年5月27日閲覧。
  9. ^ Virtualizing an x86 Mac OS X”. 2009年6月23日閲覧。
  10. ^ Ubuntu 7.04 /usr/share/doc/kvm/copyright からのライセンス情報
  11. ^ Interview: Avi Kivity on KernelTrap
  12. ^ Red Hat press release on Qumranet purchase 2008年9月
  13. ^ kvm-85/qemu/hw/vga.c
  14. ^ kvm-85/qemu/hw/sb16.c
  15. ^ kvm-85/qemu/hw/pcnet.c
  16. ^ kvm-85/qemu/hw/e1000.c
  17. ^ kvm-85/qemu/hw/ne2000.c
  18. ^ kvm-85/qemu/hw/rtl8139.c

関連項目[編集]

外部リンク[編集]