Kernel-based Virtual Machine
Kernel-based Virtual Machine | |
---|---|
![]() |
|
![]() KVM ajamassa Opensolarista, NetBSD:tä ja Kubuntua Arch Linux -isännällä. |
|
Kehittäjä | Open Virtualization Alliance (OVA) |
Kehityshistoria | |
Ensijulkaisu | 2007 |
Tiedot | |
Alusta | Linux |
Lisenssi | GNU GPL, GNU LGPL |

Kernel-based Virtual Machine eli KVM on Linux-ytimeen rakennettu tuki virtualisoinnille. KVM on julkaistu Linux versiossa 2.6.20 helmikuussa 2007.[1] KVM projektista ilmoitti ensimmäisen kerran sen aloittaja Avi Kivity 19. lokakuuta 2006 viestissä Linux Kernel -postituslistalle.[2] KVM on tyypin 1 (suoraan laitteistolla ajettava) hypervisor, joka hyödyntää Linux-ytimen ominaisuuksia ja suorittaa virtuaalikoneita tavallisina prosesseina.[3] KVM tukee virtualisointia ilman muutoksia vieraskäyttöjärjestelmiin.[4]
KVM vaatii suorittimelta tukea virtualisoinnille käskykantalaajennuksien avulla.[5] KVM ei suorita eri suorittimen tai muun laitteiston emulointia vaan tämä on erillisen käyttäjäavaruudessa sijaitsevan ohjelman tehtävä.[2] Käyttäjäavaruudessa käytettävä osa on QEMU:ssa.[6][2]
KVM on kehitetty aluksi Intelin Intel VT (VMX) ja AMD:n AMD-V (SVM) käskyille.[5][2] Useat suoritinvalmistajat ovat tukeneet KVM:n kehitystä: Intel lisäsi tuen IA64-alustalle; IBM lisäsi tuen S/390- ja POWER-alustoille; ARM Holdings ja Linaro tukivat ARM-version kehitystä; Imagination Technologies lisäsi MIPS-alustan tuen.[2]
KVM on tuettu IBM Z -alustalla.[7] RISC-V-suorittimen tuki on työn alla.[8]
IBM on julkaissut KVM:ään Power-arkkitehtuurilla käytettävän tuen suojatuille virtuaalikoneille ultravisor-virtualisoinnilla.[9][10][11] AMD:n SEV-tuella voidaan salata virtuaalikoneiden muistit yksilöllisellä avaimella esimerkiksi pilvipalveluympäristöissä.[12]
Useat eri käyttöjärjestelmät toimivat KVM:n kanssa täydellä virtualisoinnilla vieraskäyttöjärjestelminä.[13] KVM ei tue suorittimen paravirtualisointia, mutta tukee laiteajurien kanssa virtio-rajapinnalla.[14][15][16]
Katso myös
Lähteet
- ↑ Linux 2 6 20 kernelnewbies.org. Viitattu 25.11.2017.
- ↑ a b c d e Amit Shah: Ten years of KVM lwn.net. 2.11.2016. Viitattu 5.3.2020. (englanniksi)
- ↑ What is KVM? redhat.com. Viitattu 11.9.2020. (englanniksi)
- ↑ Irfan Habib: Virtualization with KVM linuxjournal.com. 1.2.2008. Viitattu 5.3.2020. (englanniksi)
- ↑ a b What do I need to use KVM? linux-kvm.org. Viitattu 19.2.2017. (englanniksi)
- ↑ Kernel Virtual Machine linux-kvm.org. Viitattu 5.3.2020. (englanniksi)
- ↑ Linux on KVM IBM. Viitattu 17.8.2019. (englanniksi)
- ↑ [PATCH v8 00/19 KVM RISC-V Support] lkml.org. 3.10.2019. Viitattu 3.10.2019. (englanniksi)
- ↑ Linux 5.5 KVM Adds POWER Support For Secure Guests/VMs phoronix.com. Viitattu 19.12.2019. (englanniksi)
- ↑ [GIT PULL Second batch of KVM changes for 5.5 merge window] lkml.iu.edu. Viitattu 19.12.2019. (englanniksi)
- ↑ Supporting protected computing on IBM Power Architecture developer.ibm.com. Viitattu 19.12.2019. (englanniksi)
- ↑ AMD Secure Encrypted Virtualization (AMD-SEV) Guide documentation.suse.com. 25.9.2020. Viitattu 30.9.2020. (englanniksi)
- ↑ Virtualization with KVM linux-kvm.org. Viitattu 5.3.2020. (englanniksi)
- ↑ What is the difference between KVM and Xen? linux-kvm.org. Viitattu 7.3.2020. (englanniksi)
- ↑ Chapter 10. KVM Paravirtualized (virtio) Drivers Red Hat Enterprise Linux 6 access.redhat.com. Viitattu 7.3.2020. (englanniksi)
- ↑ An API for virtual I/O: virtio lwn.net. Viitattu 7.3.2020. (englanniksi)
Aiheesta muualla
- KVM-projektin kotisivu (englanniksi)
- Memory protection in Android using KVM (englanniksi)
- The Definitive KVM (Kernel-based Virtual Machine) API Documentation (englanniksi)