Έκδοση του εξομοιωτή QEMU 6.1

Παρουσιάστηκε η κυκλοφορία του έργου QEMU 6.1. Ως εξομοιωτής, το QEMU σάς επιτρέπει να εκτελέσετε ένα πρόγραμμα μεταγλωττισμένο για μια πλατφόρμα υλικού σε ένα σύστημα με εντελώς διαφορετική αρχιτεκτονική, για παράδειγμα, να εκτελέσετε μια εφαρμογή ARM σε υπολογιστή συμβατό με x86. Στη λειτουργία εικονικοποίησης στο QEMU, η απόδοση της εκτέλεσης κώδικα σε ένα απομονωμένο περιβάλλον είναι κοντά σε αυτήν ενός συστήματος υλικού λόγω της άμεσης εκτέλεσης εντολών στην CPU και της χρήσης του Xen hypervisor ή της μονάδας KVM.

Το έργο δημιουργήθηκε αρχικά από τον Fabrice Bellard για να παρέχει τη δυνατότητα εκτέλεσης εκτελέσιμων αρχείων Linux που έχουν μεταγλωττιστεί για την πλατφόρμα x86 σε αρχιτεκτονικές που δεν είναι x86. Με τα χρόνια ανάπτυξης, προστέθηκε υποστήριξη για πλήρη εξομοίωση για 14 αρχιτεκτονικές υλικού, ο αριθμός των εξομοιούμενων συσκευών υλικού ξεπέρασε τις 400. Κατά την προετοιμασία της έκδοσης 6.1, έγιναν περισσότερες από 3000 αλλαγές από 221 προγραμματιστές.

Βασικές βελτιώσεις που προστέθηκαν στο QEMU 6.1:

  • Η εντολή "blockdev-reopen" προστέθηκε στο QMP (QEMU Machine Protocol) για να αλλάξετε τις ρυθμίσεις μιας ήδη δημιουργημένης συσκευής μπλοκ.
  • Το Gnutls χρησιμοποιείται ως πρόγραμμα οδήγησης κρυπτογράφησης προτεραιότητας, το οποίο είναι μπροστά από άλλα προγράμματα οδήγησης όσον αφορά την απόδοση. Το πρόγραμμα οδήγησης που βασίζεται σε libgcrypt που προσφερόταν προηγουμένως από προεπιλογή έχει μετακινηθεί στις τάξεις των επιλογών και το πρόγραμμα οδήγησης που βασίζεται σε τσουκνίδα παραμένει ως εναλλακτική επιλογή, που χρησιμοποιείται απουσία GnuTLS και Libgcrypt.
  • Προστέθηκε υποστήριξη για πολυπλέκτης PMBus και I2C (pca2, pca9546) στον εξομοιωτή I9548C.
  • Από προεπιλογή, είναι ενεργοποιημένη η υποστήριξη για προσθήκες στην κλασική γεννήτρια κώδικα TCG (Tiny Code Generator). Προστέθηκαν νέα πρόσθετα execlog (ημερολόγιο εκτέλεσης) και μοντελοποίηση κρυφής μνήμης (προσομοίωση της συμπεριφοράς της προσωρινής μνήμης L1 στην CPU).
  • Ο εξομοιωτής ARM έχει προσθέσει υποστήριξη για πλακέτες που βασίζονται σε τσιπ Aspeed (rainier-bmc, quanta-q7l1), npcm7xx (quanta-gbs-bmc) και Cortex-M3 (stm32vldiscovery). Προστέθηκε υποστήριξη για μηχανές κρυπτογράφησης υλικού και κατακερματισμού που παρέχεται στα τσιπ Aspeed. Προστέθηκε υποστήριξη για εξομοίωση εντολών SVE2 (συμπεριλαμβανομένου του bfloat16), τελεστών πολλαπλασιασμού μήτρας και εντολών έκπλυσης μεταφραστικού-συνδυαστικού buffer (TLB).
  • Στον εξομοιωτή αρχιτεκτονικής PowerPC για μηχανήματα εξομοίωσης ψευδών, έχει προστεθεί υποστήριξη για την ανίχνευση αστοχιών κατά την προσθήκη hot-plugging συσκευών σε νέα περιβάλλοντα επισκέπτη, το όριο στον αριθμό των CPU έχει αυξηθεί και έχει εφαρμοστεί εξομοίωση ορισμένων οδηγιών που αφορούν τους επεξεργαστές POWER10 . Προστέθηκε υποστήριξη για πλακέτες που βασίζονται σε μάρκες Genesi/bPlan Pegasos II (pegasos2).
  • Ο εξομοιωτής RISC-V υποστηρίζει την πλατφόρμα OpenTitan και την εικονική GPU virtio-vga (βασισμένη στο virgl).
  • Ο εξομοιωτής s390 έχει προσθέσει υποστήριξη για την CPU 16ης γενιάς και τις διανυσματικές επεκτάσεις.
  • Η υποστήριξη για νέα μοντέλα CPU της Intel έχει προστεθεί στον εξομοιωτή x86 (Skylake-Client-v4, Skylake-Server-v5, Cascadelake-Server-v5, Cooperlake-v2, Icelake-Client-v3, Icelake-Server-v5, Denverton- v3, Snowridge- v3, Dhyana-v2), που υλοποιούν την εντολή XSAVES. Ο εξομοιωτής chipset Q35 (ICH9) υποστηρίζει τη σύνδεση συσκευών PCI. Βελτιωμένη εξομοίωση επεκτάσεων εικονικοποίησης που παρέχονται σε επεξεργαστές AMD. Προστέθηκε η επιλογή bus-lock-ratelimit για τον περιορισμό της έντασης του μπλοκαρίσματος του λεωφορείου από το σύστημα επισκεπτών.
  • Προστέθηκε υποστήριξη για χρήση ως επιταχυντής για τον NVMM hypervisor που αναπτύχθηκε από το έργο NetBSD.
  • Στο GUI, η υποστήριξη για έλεγχο ταυτότητας κωδικού πρόσβασης κατά τη χρήση του πρωτοκόλλου VNC είναι πλέον ενεργοποιημένη μόνο κατά τη δημιουργία με εξωτερικό κρυπτογραφικό backend (gnutls, libgcrypt ή nettle).

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο