QEMU 4.0 emulatora izlaišana

Veidojas projekta izlaidums QEMU 4.0. Kā emulators QEMU ļauj palaist programmu, kas kompilēta vienai aparatūras platformai sistēmā ar pavisam citu arhitektūru, piemēram, palaist ARM lietojumprogrammu ar x86 saderīgā datorā. Virtualizācijas režīmā QEMU koda izpildes veiktspēja izolētā vidē ir tuvu vietējai sistēmai, pateicoties tiešai instrukciju izpildei CPU un Xen hipervizora vai KVM moduļa izmantošanai.

Projektu sākotnēji izveidoja Fabriss Belards, lai ļautu Linux izpildāmajiem failiem, kas izveidoti x86 platformai, darboties citās arhitektūrās, kas nav x86. Izstrādes gadu laikā pilns emulācijas atbalsts ir pievienots 14 aparatūras arhitektūrām, emulēto aparatūras ierīču skaits pārsniedzis 400. Gatavojoties versijai 4.0, no 3100 izstrādātājiem veiktas vairāk nekā 220 izmaiņas.

Atslēga uzlabojumipievienots QEMU 4.0:

  • ARM arhitektūras emulatoram ir pievienots atbalsts ARMv8+ instrukciju paplašinājumiem: SB, PredInv, HPD, LOR, FHM, AA32HPD,
    PAuth, JSConv, CondM, FRINT un BTI. Pievienots atbalsts Musca un MPS2 dēļu emulēšanai. Uzlabota ARM PMU (Power Management Unit) emulācija. Uz platformu tikums pievienota iespēja izmantot vairāk nekā 255 GB RAM un atbalsts u-boot attēliem ar “noload” tipu;

  • x86 arhitektūras emulatorā virtualizācijas paātrinājuma dzinējā HAX (Intel Hardware Accelerated Execution) pievienoja atbalstu POSIX saderīgiem resursdatoriem, piemēram, Linux un NetBSD (iepriekš tika atbalstīta tikai Darwin platforma). Q35 mikroshēmojuma emulatorā (ICH9) galvenajiem PCIe portiem tagad pēc izvēles var deklarēt PCIe 16 specifikācijā definēto maksimālo ātrumu (32GT/s) un savienojuma līniju skaitu (x4.0) (lai nodrošinātu saderību, 2.5GT ir instalēta pēc noklusējuma vecāka tipa QEMU mašīnām /s un x1). Ir iespējams ielādēt Xen PVH attēlus ar opciju “-kernel”;
  • MIPS arhitektūras emulatoram ir pievienots atbalsts vairāku pavedienu emulācijai, izmantojot klasisko TCG (Tiny Code Generator) koda ģeneratoru. Pievienots arī atbalsts CPU I7200 (nanoMIPS32 ISA) un I6500 (MIPS64R6 ISA) emulācijai, iespēja apstrādāt CPU tipa pieprasījumus, izmantojot QMP (QEMU Management Protocol), pievienots atbalsts SAARI un SAAR konfigurācijas reģistriem. Uzlabota virtuālo mašīnu veiktspēja ar Fulong 2E tipu. Atjaunināta Interthread komunikācijas vienības ieviešana;
  • PowerPC arhitektūras emulatorā ir pievienots atbalsts XIVE pārtraukumu kontrollera emulēšanai, POWER9 atbalsts ir paplašināts, bet P sērijai ir pievienota iespēja hot plug PCI resursdatora tiltus (PHB, PCI host bridge). Aizsardzība pret Spectre un Meltdown uzbrukumiem ir iespējota pēc noklusējuma;
  • RISC-V arhitektūras emulatoram ir pievienots atbalsts PCI un USB emulācijai. Iebūvētais atkļūdošanas serveris (gdbserver) tagad atbalsta reģistru sarakstu norādīšanu XML failos. Pievienots atbalsts mstatus laukiem TSR, TW un TVM;
  • S390 arhitektūras emulatoram ir pievienots atbalsts z14 GA 2 CPU modelim, kā arī atbalsts instrukciju paplašinājumu emulēšanai peldošā komata un vektoru operācijām. Vfio-ap ir pievienota iespēja karstās pieslēgšanas ierīcēm;
  • Tensilica Xtensa saimes procesora emulators ir uzlabojis SMP atbalstu operētājsistēmai Linux un pievienojis atbalstu FLIX (elastīga garuma instrukciju paplašinājumam);
  • Grafiskajam interfeisam ir pievienota opcija 'display spice-app', lai konfigurētu un palaistu Spice attālās piekļuves klienta versiju, kuras dizains ir līdzīgs QEMU GTK interfeisam;
  • VNC servera ieviešanai pievienots atbalsts piekļuves kontrolei, izmantojot tls-authz/sasl-authz opcijas;
  • QMP (QEMU Management Protocol) pievienoja atbalstu centralizētai/ārējai (Out-of-band) komandu izpildei un ieviesa papildu komandas darbam ar blokierīcēm;
  • VFIO ir pievienots EDID interfeiss atbalstītajiem mdevs (Intel vGPU), kas ļauj mainīt ekrāna izšķirtspēju, izmantojot xres un yres opcijas;
  • Xen ir pievienota jauna 'xen-disk' ierīce, kas var neatkarīgi izveidot diska aizmuguri priekš Xen PV (bez piekļuves xenstore). Xen PV diska aizmugursistēmas veiktspēja ir palielināta un ir pievienota iespēja mainīt diska izmēru;
  • Tīkla bloku ierīcēs ir paplašinātas diagnostikas un izsekošanas iespējas, kā arī uzlabota klientu savietojamība ar problemātiskām NBD serveru ieviešanām. Pievienotas opcijas “--bitmap”, “--list” un “--tls-authz” qemu-nbd;
  • Pievienots PCI IDE režīma atbalsts emulētajai IDE/izmantotajai ierīcei;
  • Pievienots atbalsts lzfse algoritma izmantošanai dmg attēlu saspiešanai. Formātā qcow2 ir pievienots atbalsts ārējo datu failu savienošanai. qcow2 izpakošanas darbības tiek pārvietotas uz atsevišķu pavedienu. Pievienots atbalsts operācijai “blockdev-create” vmdk attēlos;
  • Virto-blk bloka ierīcei ir pievienots atbalsts operācijām DISCARD (informēšana par bloku atbrīvošanu) un WRITE_ZEROES (loģisko bloku diapazona nulles noteikšana);
  • Pvrdma ierīce atbalsta RDMA pārvaldības datugrammu pakalpojumus (MAD);
  • Iesniegts izmaiņas, pārkāpjot atpakaļejošu saderību. Piemēram, "-fsdev" un "-virtfs" opcijas "rokturis" vietā izmantojiet opcijas "local" vai "proxy". Tika noņemtas opcijas “-virtioconsole” (aizstāts ar “-device virtconsole”), “-no-frame”, “-clock”, “-enable-hax” (aizstāts ar “-accel hax”). Noņemta ierīce "ivshmem" (jāizmanto "ivshmem-doorbell" un "ivshmem-plain"). Atbalsts veidošanai ar SDL1.2 ir pārtraukts (jums ir jāizmanto SDL2).

Avots: opennet.ru

Pievieno komentāru