QEMU on avoimen läh­de­koo­din vir­tua­li­soin­tioh­jel­mis­to, joka mah­dol­lis­taa eri­lais­ten käyt­tö­jär­jes­tel­mien ja so­vel­lus­ten emu­loin­nin ja vir­tua­li­soin­nin eri lait­teis­toa­lus­toil­la.

Mikä on QEMU?

QEMU, lyhenne sanoista ”Quick Emulator”, on vir­tua­li­soin­tioh­jel­mis­to, jolla voidaan emuloida erilaisia lait­teis­to­ja. Avoimen läh­de­koo­din oh­jel­mis­to­na QEMU on vapaasti saa­ta­vil­la, ja sitä tukee laaja ke­hit­tä­jäyh­tei­sö ympäri maailmaa. Se mah­dol­lis­taa eri­lais­ten lait­teis­toark­ki­teh­tuu­rien emu­loin­nin, mukaan lukien x86, ARM, PowerPC ja monet muut. Tämä mo­ni­puo­li­suus tekee QEMU:sta erityisen arvokkaan oh­jel­moi­jil­le, tes­taa­jil­le ja jär­jes­tel­män­val­vo­jil­le, joiden on tes­tat­ta­va ja ajettava erilaisia käyt­tö­jär­jes­tel­miä tai oh­jel­mis­to­ja eri­lai­sil­la lait­teis­to­ko­koon­pa­noil­la.

QEMU:n käyttöä koskevat vaa­ti­muk­set

Jotta QEMU:ta voidaan käyttää te­hok­kaas­ti, on täy­tet­tä­vä seuraavat pe­rus­vaa­ti­muk­set:

  • Lait­teis­to: QEMU toimii lähes kaikilla ny­ky­ai­kai­sil­la tie­to­ko­neil­la, mutta suo­ri­tus­ky­ky riippuu suuresti käy­tet­tä­vis­sä olevista re­surs­seis­ta. Mo­ni­mut­kais­ten käyt­tö­jär­jes­tel­mien ja so­vel­lus­ten emu­loin­nis­sa tehokas pro­ses­so­ri ja riittävä määrä RAM-muistia ovat rat­kai­se­van tärkeitä. Esi­mer­kik­si x86-käyt­tö­jär­jes­tel­mien emu­loi­mi­nen vaatii yleensä vähintään 4 Gt RAM-muistia sujuvan toiminnan var­mis­ta­mi­sek­si, kun taas mo­ni­mut­kai­sem­mis­sa ti­lan­teis­sa, kuten ARM-pal­ve­li­men emu­loin­nis­sa, re­surs­si­tar­ve voi olla suurempi.
  • Käyt­tö­jär­jes­tel­mä: QEMU on mo­nia­lus­tai­nen ja toimii useilla käyt­tö­jär­jes­tel­mil­lä, kuten Linuxilla, Win­dow­sil­la ja macOS:lla. Asennus ja käyttö voivat kuitenkin vaihdella käyt­tö­jär­jes­tel­män mukaan. Op­ti­maa­li­sen ja sujuvan käytön var­mis­ta­mi­sek­si Linux-jär­jes­tel­mis­sä on suo­si­tel­ta­vaa valita Linux-jakelu, jonka pa­ket­ti­läh­teis­sä QEMU on jo mukana.
  • Oh­jel­mis­tot: Käyt­tö­jär­jes­tel­mäs­tä ja käyt­tö­tar­koi­tuk­ses­ta riippuen saattaa olla tarpeen asentaa li­sä­oh­jel­mis­to­pa­ket­te­ja tai kir­jas­to­ja. Linux-jär­jes­tel­mis­sä tämä voi olla esi­mer­kik­si libvirt vir­tu­aa­li­ko­nei­den hal­lin­taan tai virt-manager graafisen käyt­tö­liit­ty­män käyttöön.

Miten QEMU toimii?

QEMU toimii sekä emu­laat­to­ri­na että vir­tua­li­soin­tioh­jel­mis­to­na. Emu­laat­to­ri­na se mah­dol­lis­taa yhdelle lait­teis­toa­lus­tal­le suun­ni­tel­lun oh­jel­mis­ton suo­rit­ta­mi­sen täysin eri­lai­sel­la alustalla jäl­jit­te­le­mäl­lä lait­teis­toa oh­jel­mis­to­ta­sol­la. Esi­mer­kik­si QEMU voi emuloida ARM-pro­ses­so­rin x86-tie­to­ko­neel­la, jolloin ARM:lle kehitetyt käyt­tö­jär­jes­tel­mät ja ohjelmat toimivat sau­mat­to­mas­ti x86-lait­teis­tol­la.

Vir­tua­li­soin­tioh­jel­mis­to­na QEMU hyödyntää olemassa olevaa lait­teis­toa vir­tua­li­soin­ti­ker­rok­sen luomiseen. Kun QEMU:ta käytetään yhdessä KVM:n kanssa hy­per­vi­so­ri­na, se voi hyödyntää pro­ses­so­rin laa­jen­nuk­sia ja ajaa vir­tu­aa­li­ko­nei­ta lähes na­tii­vis­ti, mikä parantaa suo­ri­tus­ky­kyä huo­mat­ta­vas­ti. Tätä me­ne­tel­mää kutsutaan pa­ra­vir­tua­li­soin­nik­si, ja se auttaa mak­si­moi­maan vir­tu­aa­li­ko­nei­den suo­ri­tus­ky­vyn antamalla niille suoran pääsyn fyysiseen lait­teis­toon.

QEMU:n tär­keim­mät käyt­tö­alu­eet

QEMU:ta käytetään monilla eri aloilla:

  • Oh­jel­mis­to­ke­hi­tys ja testaus: QEMU:n avulla oh­jel­mis­to­ja voidaan testata eri­lai­sil­la lait­teis­toark­ki­teh­tuu­reil­la ilman fyysisiä koneita, minkä ansiosta se sopii erin­omai­ses­ti alustojen väliseen ke­hi­tyk­seen ja useiden ark­ki­teh­tuu­rien tu­ke­mi­seen.
  • Pal­ve­li­mien ja työ­ase­mien­vir­tua­li­soin­ti: QEMU:ta käytetään yleisesti pal­ve­li­nym­pä­ris­töis­sä eri­lais­ten pal­ve­lui­den ajamiseen tar­koi­tet­tu­jen vir­tu­aa­li­ko­nei­den isäntänä.
  • Tutkimus ja koulutus: QEMU:n avulla opis­ke­li­jat ja tutkijat voivat kokeilla erilaisia käyt­tö­jär­jes­tel­miä ja lait­teis­to­ko­koon­pa­no­ja ilman kalliita fyysisiä laitteita.
  • Vanhojen jär­jes­tel­mien emulointi: QEMU voi emuloida vanhempia tai tuot­ta­mat­to­mia käyt­tö­jär­jes­tel­miä ja oh­jel­mis­to­ja, mikä helpottaa vanhojen jär­jes­tel­mien ylläpitoa ja käyttöä.

QEMU:n edut

  • Jous­ta­vuus ja mo­ni­puo­li­suus: QEMU tukee laajaa va­li­koi­maa lait­teis­toark­ki­teh­tuu­re­ja ja soveltuu sekä vir­tua­li­soin­tiin että emu­loin­tiin, mikä tekee siitä erittäin mo­ni­puo­li­sen työkalun eri­lai­siin käyt­tö­tar­koi­tuk­siin.
  • Ilmainen ja avoimen läh­de­koo­din oh­jel­mis­to: Avoimen läh­de­koo­din oh­jel­mis­to­na QEMU on ilmainen käyttää eikä siitä aiheudu li­sens­si­kus­tan­nuk­sia. Se hyötyy myös ak­tii­vi­ses­ta yh­tei­sös­tä, joka tarjoaa jat­ku­vas­ti pa­ran­nuk­sia ja tie­to­tur­va­päi­vi­tyk­siä.
  • Alustojen välinen tuki: QEMU toimii useilla käyt­tö­jär­jes­tel­mil­lä, mikä tarjoaa korkean yh­teen­so­pi­vuu­den ja jous­ta­vuu­den eri alustojen käyt­tä­jil­le.
  • Yh­dis­tet­tä­vyys KVM:n kanssa: Yh­dis­tet­ty­nä KVM:ään QEMU voi tarjota lähes natiivin suo­ri­tus­ky­vyn, mikä tekee siitä hou­kut­te­le­van valinnan pal­ve­li­mien ja työ­pöy­tien vir­tua­li­soin­tiin.

QEMU:n haitat

  • Suo­ri­tus­ky­ky täy­si­mit­tai­ses­sa emu­loin­nis­sa: Emu­loin­ti­ti­las­sa QEMU voi olla hitaampi kuin muut ratkaisut, koska lait­teis­to on emu­loi­ta­va kokonaan oh­jel­mis­tol­la, mikä lisää yli­kuor­mi­tus­ta ja hidastaa suo­ri­tus­ta.
  • Mo­ni­mut­kai­suus: QEMU:n asennus ja kon­fi­gu­roin­ti voi olla haastavaa aloit­te­li­joil­le, etenkin kun on lisättävä li­sä­kom­po­nent­te­ja, kuten KVM, libvirt tai verk­ko­sil­to­ja.
  • Käytön help­pou­den puute: Ver­rat­tu­na muihin vir­tua­li­soin­ti­rat­kai­sui­hin QEMU ei tarjoa natiivia, käyt­tä­jäys­tä­väl­lis­tä graafista käyt­tö­liit­ty­mää.
  • Ra­joi­tet­tu tuki 3D-kiih­dy­tyk­sel­le: Vaikka QEMU pystyy emu­loi­maan pe­rus­gra­fiik­ka­toi­min­to­ja, sen tuki 3D-kiih­dy­tyk­sel­le on ra­joi­tet­tu, mikä tekee siitä vähemmän ihan­teel­li­sen gra­fiik­kaa paljon vaa­ti­vil­le so­vel­luk­sil­le.
Siirry pää­va­lik­koon