QEMU 10.2.0 sosește cu migrarea cpr-exec, io_uring și suport ARM Versal

Puncte cheie:
  • Bucla principală a migrat la io_uring pentru a îmbunătăți performanța I/O pe Linux.
  • Noul mod de migrare cpr-exec care reutilizează resursele și conexiunile.
  • Suport pentru plăcile de bază AMD Versal și extensiile recente ale procesorului ARM.
  • Backend 9pfs actualizat cu suport pentru gazdele FreeBSD.
  • Pregătire criptografică pentru algoritmi post-cuantici (multi-certificate).

QEMU

Proiectul QEMU a anunțat disponibilitatea versiunii 10.2.0, O actualizare care se concentrează pe optimizarea performanței buclei principale de evenimente, îmbunătățirea capacităților de migrare live și extinderea suportului hardware pentru arhitecturile ARM, RISC-V și HPPA.

Pentru cei care nu cunosc QEMU, ar trebui să știe că estevă permite să rulați un program creat pentru o platformă hardware pe un sistem cu ao arhitectură complet diferită.

Principalele noutăți ale QEMU 10.2.0

Una dintre schimbările importante din această nouă versiune este migrarea buclei principale de evenimente QEMU. Pe sistemele gazdă care îl suportă (în principal sistemele Linux moderne), QEMU folosește acum interfața I/O asincronă io_uring. Aceasta Promite să reducă supraîncărcarea sistemului și să îmbunătățească latența. în operațiuni intensive de intrare/ieșire.

Pe lângă asta, A fost introdus un nou mod de migrare live numit cpr-exec. Acest mod este conceput pentru a reduce drastic consumul de resurse în timpul actualizărilor mașinilor virtuale (VM). Principalul său avantaj constă în capacitatea de a reutiliza stările și conexiunile existente, permițând mașinii virtuale să persiste sau să fie actualizată cu întreruperi minime, păstrând descriptorii de fișiere și memoria.

Știri de arhitectură

ARM și aarch64

Emulatorul ARM Adaugă noi caracteristici arhitecturale ale procesorului emulat:

  • FEAT_SCTLR2
  • FEAT_TCR2
  • CSSC_FUNCTION
  • FEAT_LSE128
  • FEAT_ATS1A
  • FUNCTION_RME_GPC2
  • FEAT_AIE
  • FEAT_MEC
  • FEAT_GCS

La nivel de procesor, Emularea mai multor extensii tehnice a fost implementată (FEAT_SCTLR2, FEAT_TCR2, FEAT_LSE128, printre altele), ceea ce permite dezvoltatorilor să testeze software care depinde de cele mai recente instrucțiuni din setul ARM.

RISC-V și PowerPC

  • RISC-V: OpenSBI (Open Supervisor Binary Interface) a fost actualizat la versiunea 1.7 și a fost implementat API-ul HMP MonitorDef.
  • PowerPC: A fost adăugată compatibilitatea cu procesoarele PowerNV11 și PPE42. Pentru sistemele pSeries, a fost implementat mecanismul FADUMP (Firmware Assisted Dump), care este crucial pentru analiza post-mortem în urma defecțiunilor sistemului.

HPPA și x86

La HPPA, datorită muncii depuse în cadrul Google Summer of Code, Emularea stației de lucru HP 715/64 a fost îmbunătățită., inclusiv controlerul SCSI NCR 53c710 și controlerul I/O HP LASI.

x86 introduce suport pentru un nou accelerator, MSHVAcest lucru vă permite să creați mașini virtuale dintr-un client Hyper-V fără a suporta penalizarea de performanță a virtualizării imbricate tradiționale. În plus, „blocarea mare QEMU” (BQL) pentru dispozitivul HPET a fost eliminată.

Sisteme de stocare și fișiere

capătul din spate 9pfs, folosit pentru partajarea sistemelor de fișiere între gazdă și invitat eficient, A fost actualizat pentru a suporta FreeBSD ca gazdă, Vești excelente pentru utilizatorii sistemului BSD.

În ceea ce privește dispozitivele bloc, a fost adăugată emularea RPMB (Replay Protected Memory Block) pentru dispozitivele eMMC, iar limitele blocurilor detectate prin comenzi QMP au fost expuse, îmbunătățind vizibilitatea pentru instrumentele de gestionare.

Securitate și criptografie

El Subsistemul criptografic acceptă acum încărcarea mai multor identități x509 cu certificate și chei.Acest lucru permite utilizarea certificatelor paralele cu algoritmi diferiți, facilitând o tranziție lină către noile standarde criptografice.

În plus, Politica de securitate a proiectului a fost actualizată. Se clarifică faptul că definiția „erorilor de securitate” în contextul virtualizării se aplică strict anumitor tipuri de mașini și configurații acceptate, care sunt acum enumerate explicit pentru a evita ambiguitatea.

Rugină și schimbări tehnice

El Suportul experimental pentru Rust continuă să progreseze. Versiunea minimă necesară este acum Rust 1.83. Deși utilizarea sa este încă limitată la dezvoltare, dispozitivele PL011 și HPET implementate în Rust au atins deja paritatea caracteristicilor cu omologii lor C.

Elemente șterse sau învechite:

  • Opțiunea din linia de comandă -old-param a fost eliminată.
  • Familia de procesoare ARM pxa a fost retrasă definitiv.
  • Comenzile wavcapture, stopcapture și info capture au fost marcate ca fiind învechite.

În cele din urmă, dacă sunteți interesați să aflați mai multe despre acest subiect, puteți găsi detalii în următorul link.