Rilascio dell'emulatore QEMU 7.2

È stato presentato il rilascio del progetto QEMU 7.2. Come emulatore, QEMU consente di eseguire un programma compilato per una piattaforma hardware su un sistema con un'architettura completamente diversa, ad esempio eseguire un'applicazione per ARM su un PC compatibile con x86. In modalità di virtualizzazione, le prestazioni dell'esecuzione del codice in un ambiente isolato sono vicine a quelle di un sistema hardware grazie all'esecuzione diretta delle istruzioni sulla CPU e all'uso di un hypervisor Xen o del modulo KVM.

Il progetto è stato inizialmente creato da Fabrice Bellard per garantire la possibilità di eseguire file eseguibili Linux compilati per la piattaforma x86 su architetture diverse da x86. Nel corso degli anni di sviluppo è stato aggiunto il supporto per una piena emulazione di 14 architetture hardware, e il numero di dispositivi hardware emulati ha superato 400. In preparazione della versione 7.2 sono state apportate oltre 1800 modifiche da 205 sviluppatori.

Miglioramenti chiave aggiunti in QEMU 7.2:

  • Nell'emulatore dell'architettura x86, nel generatore di codice classico TCG, è stato aggiunto il supporto per le istruzioni AVX, AVX2, F16C, FMA3 e VAES, e sono stati ottimizzati le prestazioni relative all'uso delle istruzioni SSE. Per KVM è stato aggiunto il supporto per il meccanismo di tracciamento dell'uscita dalla macchina virtuale ("notify vmexit"), che consente di eludere errori nella CPU che potrebbero portare a un blocco.
  • Nell'emulatore ARM è stato implementato il supporto per la CPU Cortex-A35 e le estensioni della CPU ETS (Enhanced Translation Synchronization), PMUv3p5 (PMU Extensions 3.5), GTG (Guest Translation Granule 4KB, 16KB, 64KB), HAFDBS (gestione hardware del flag di accesso e dello stato "dirty") ed E0PD (prevenzione dell'accesso EL0 a mappe di indirizzi condivise).
  • Nell'emulatore LoongArch è stato aggiunto il supporto per fw_cfg DMA, il hotplug della memoria e l'emulazione dei dispositivi TPM (Trusted Platform Module).
  • Nell'emulatore dell'architettura OpenRISC è stata implementata la piattaforma 'virt' per testare i dispositivi e per l'uso in sistemi di integrazione continua. È stato implementato il supporto per l'esecuzione multithreading nel generatore di codice classico TCG (Tiny Code Generator).
  • Nell'emulatore dell'architettura RISC-V, nelle macchine emulati 'virt', è stata realizzata la possibilità di caricare il firmware da pflash in modalità S (S-mode). È stato migliorato il supporto per il device tree.
  • Nell'emulatore dell'architettura 390x è supportato l'ampliamento MSA5 (Message-Security-Assist Extension 5 con l'istruzione PRNO per la generazione di numeri pseudo-casuali), le istruzioni KIMD/KLM (implementazione SHA-512) e l'interpretazione avanzata zPCI per sistemi guest basati su hypervisor KVM.
  • Nei backend per la gestione della memoria è stato implementato un pre-allocazione della memoria in considerazione dell'architettura NUMA.
  • È stata rinforzata la verifica degli header dei dispositivi di blocco criptati LUKS e aggiunta la possibilità di creare immagini LUKS in macOS.
  • Nel backend 9pfs, che consente di utilizzare il file system di rete Plan 9 per accedere a una macchina virtuale da un'altra, è stata effettuata la transizione all'uso dell'hash GHashTable nella tabella degli identificatori, il che ha portato, in alcune situazioni, a un aumento delle prestazioni da 6 a 12 volte.
  • Sono stati aggiunti nuovi backend netdev stream e dgram.
  • Nell'agente per sistemi guest basati su architettura ARM è stato aggiunto il supporto per FreeBSD.
  • Nelle build GUI per macOS è stata garantita la possibilità di includere in un unico file eseguibile interfacce basate su Cocoa e SDL/GTK.
  • È stato rimosso il sottomodulo integrato "slirp", per il quale è consigliato utilizzare la libreria di sistema libslirp.
  • A causa dell'impossibilità di effettuare test, il supporto per i sistemi host con processori MIPS a 32 bit che utilizzano l'ordine dei byte "Big endian" è stato dichiarato obsoleto.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster