QEMU

Screenshot Λογισμικό:
QEMU
Στοιχεία Λογισμικού:
Εκδοχή: 2.12.0 επικαιροποιημένο
Ανεβάστε ημερομηνία: 22 Jun 18
Προγραμματιστής: Fabrice Bellard
Άδεια: Δωρεάν
Δημοτικότητα: 51

Rating: nan/5 (Total Votes: 0)

Το QEMU είναι ένα λογισμικό ανοικτής πηγής και πολύ γρήγορης εικονικοποίησης που επικεντρώνεται στη δυναμική μετάφραση για να επιτύχει λογικές επιδόσεις, ενώ ταυτόχρονα είναι εύκολο να μεταβιβαστεί σε νέους κεντρικούς επεξεργαστές (επεξεργαστές).


Ένας ισχυρός εξομοιωτής μηχανών και virtualizer

Είναι επίσης γνωστός ως εξομοιωτής μηχανής, σχεδιασμένος για να μιμείται ένα πλήρες σύστημα, συμπεριλαμβανομένου ενός επεξεργαστή και των περιφερειακών του. Το τμήμα εξομοίωσης υποστηρίζει λειτουργικά συστήματα και προγράμματα που έχουν δημιουργηθεί για μια ενιαία πλατφόρμα υλικού, αλλά λειτουργούν πάνω από διαφορετικό υπολογιστή με διαφορετική αρχιτεκτονική.

Από την άλλη πλευρά, όταν η εφαρμογή χρησιμοποιείται ως virtualizer, μπορεί να επιτύχει σχεδόν εγγενείς επιδόσεις, εκτελώντας τον κωδικό επισκέπτη κατευθείαν στον κεντρικό επεξεργαστή. Υποστηρίζει τον υπομενού Xen και την ενότητα πυρήνα KVM (Kernel Virtual Machine).


Υποστηρίζει εικονικοποίηση πολυάριθμων πλατφορμών υλικού

Εάν προτιμάται η KVM, η εφαρμογή θα είναι σε θέση να virtualization μηχανών x86 (32-bit), s390, PowerPC, ARM, m68k, MIPS, CRIS, Microblaze, MIPSEL ή32 και SPARC. Μπορεί να μιμηθεί τα συστήματα Windows XP, FreeDOS και SunOS, καθώς και Virtio, USB Root Hubs, συσκευές δικτύωσης, εισόδου, βίντεο και αποθήκευσης.

Μετά από το VirtualBox και το VMware, το QEMU είναι το τρίτο μεγαλύτερο λογισμικό εικονικοποίησης για πλατφόρμες Linux, αλλά το πρώτο και ισχυρότερο για το οικοσύστημα ανοικτού κώδικα. Βασικό χαρακτηριστικό του είναι η δυνατότητα να τρέχει ως εγγενής εικονική μηχανή σε αρχιτεκτονικές 64 bit ή 32 bit, ή ως καθαρός εξομοιωτής.


Υποστηριζόμενα λειτουργικά συστήματα

Πρόκειται για ένα λογισμικό γραμμής εντολών και τρέχει σε λειτουργικά συστήματα που βασίζονται στο Linux, καθώς και Microsoft Windows και διάφορες γεύσεις UNIX. Ένα αρχείο προέλευσης παρέχεται στην ειδική ενότητα λήψης, επιτρέποντας στους χρήστες να διαμορφώνουν, να μεταγλωττίζουν και να εγκαθιστούν το πρόγραμμα σε οποιαδήποτε διανομή Linux, καθώς και σε συστήματα OpenBSD, Solaris, AIX, MinGW και Cygwin.


Συμπέρασμα

Είτε θέλετε να δοκιμάσετε λογισμικό, δοκιμάστε διάφορα λειτουργικά συστήματα ή απλά εκτελέστε εφαρμογές που δεν υποστηρίζονται στην πλατφόρμα σας, το QEMU παρέχει στους χρήστες μία από τις πιο γρήγορες μηχανές virtualization και emulator.

Τι νέο υπάρχει σε αυτήν την έκδοση:

  • Εξομοίωση συστήματος:
  • Μη συμβατές αλλαγές:
  • Ο αριθμός των επιτρεπόμενων γεφυρών υποδοχής PCI για το μηχάνημα pSeries μειώθηκε από 256 σε 31 (μπορεί να ρυθμιστεί περισσότερο με τη ρύθμιση των παραθύρων MMIO με μη αυτόματο τρόπο).
  • Αφαιρέθηκε η υποστήριξη για το tftp: // στο στρώμα μπλοκ, καθώς αυτό έχει παραβιαστεί για πάντα για αρχεία μεγαλύτερα από 256KB.
  • Μελλοντικές μη συμβατές αλλαγές:
  • Τρεις επιλογές χρησιμοποιούν διαφορετικά ονόματα στη γραμμή εντολών και στο αρχείο ρυθμίσεων. Συγκεκριμένα:
  • Το "acpi" η ενότητα αρχείου ρυθμίσεων αντιστοιχεί στην επιλογή γραμμής εντολών & quot; acupitable & quot ;,
  • Τα "boot-opts" η ενότητα αρχείου ρυθμίσεων αντιστοιχεί στην επιλογή γραμμής εντολών & boot & quot;
  • Τα "smp-opts" η ενότητα αρχείου ρυθμίσεων αντιστοιχεί στην επιλογή γραμμής εντολών "smp".
  • -readconfig θα τυποποιήσει στο όνομα της επιλογής γραμμής εντολών.
  • Η συμπεριφορά του αυτόματου υπολογισμού της τοπολογίας SMP όταν παραλείπονται ορισμένες επιλογές τοπολογίας SMP για το -smp (πρίζες, πυρήνες, κλωστές) στο μέλλον. Εάν ο επισκέπτης ABI χρειάζεται να διατηρηθεί στις αναβαθμίσεις κατά τη χρήση των επιλογών τοπολογίας SMP, οι χρήστες θα πρέπει είτε να ορίσουν ρητά όλες τις επιλογές (πρίζες, πυρήνες, κλωστές) είτε να το παραλείψουν.
  • Συσκευές "allwinner-a10", "pc87312", "ssi-sd" θα ρυθμιστεί με ρητές ιδιότητες αντί για σιωπηρά. Αυτό είναι απίθανο να επηρεάσει τους χρήστες.
  • Η εντολή QDE blockdev-add εξακολουθεί να είναι έργο σε εξέλιξη. Δεν υποστηρίζει όλους τους οδηγούς αποκλεισμού, δεν διαθέτει αντίστοιχο blockdev-del και πολλά άλλα. Μπορεί να αλλάξει ασυμβίβαστα.
  • Για το x86, καθορίζοντας ένα χαρακτηριστικό CPUID με "+ feature / -feature" και "χαρακτηριστικό = on / off" θα προκαλέσει προειδοποίηση. Η τρέχουσα συμπεριφορά για αυτόν τον συνδυασμό ("χαρακτηριστικό γνώρισμα / χαρακτηριστικό" κερδίζει πάνω από "χαρακτηριστικό = on / off") θα αλλάξει έτσι ώστε το στοιχείο "+ χαρακτηριστικό" και "φαινόταν" θα είναι συνώνυμα για το "feature = on" και "χαρακτηριστικό = εκτός" αντίστοιχα).
  • ARM:
  • Βελτιώσεις στην πλακέτα Aspeed.
  • Υποστήριξη παγίδων HLT ημιδορυχείων σε λειτουργία AArch32 (τόσο ARM όσο και Thumb).
  • Οι πίνακες ACPI για το αρχείο "virt" τύπος μηχανής υποστηρίζει ITS.
  • Η συσκευή Cadence GEM υποστηρίζει πλέον πολλαπλές ουρές προτεραιότητας μέσω της ιδιότητας queues προτεραιότητας num
  • .
  • Ο πίνακας STM32F2xx (Netduino 2) περιλαμβάνει τώρα συσκευές ADC και SPI.
  • MIPS:
  • Υποστήριξη επεξεργαστών 24KEc.
  • PowerPC:
  • Υποστήριξη επεξεργαστών POWER9.
  • Βελτιώσεις για το νέο "powernv" πλατφόρμα.
  • pSeries:
  • Οι γέφυρες υποδοχής PCI μπορούν να συσχετιστούν με NUMA κόμβους.
  • Υποστήριξη για περισσότερα από 1 TiB μνήμης επισκεπτών.
  • Υποστήριξη για περισσότερα από 64 GiB του παραθύρου MMIO σε μια γέφυρα υποδοχής PCI.
  • Υποστήριξη για το "-prom-env" παράμετρος
  • s390:
  • Υποστήριξη μοντέλων CPU.
  • Υποστήριξη για την έκδοση 2 virtio-ccw.
  • x86:
  • Υποστήριξη για πολλές νέες λειτουργίες του CPUID που σχετίζονται με τις επεκτάσεις των συνόλων οδηγιών AVX-512.
  • Η προσομοίωση του IOAPIC (που χρησιμοποιείται από την TCG και, με την KVM, αν η επιλογή "kernel_irqchip" έχει την τιμή "off" ή "split") τώρα έχει προεπιλεγεί στην έκδοση 0x20, να διακόψετε μηνύματα.
  • Υποστήριξη λειτουργίας εκτεταμένης διακοπής (EIM) στη συσκευή intel_iommu. Το EIM απαιτεί KVM (Linux v4.7 ή νεότερη για υποστήριξη x2APIC) και "-machine kernel-irqchip = split". είναι ενεργοποιημένη αυτόματα αν είναι ενεργοποιημένη η αναδιάταξη διακοπής ("-machine kernel-irqchip = split -device intel_iommu, intremap = on").
  • Υποστήριξη έως και 288 CPU με τους τύπους μηχανών Q35. 256 ή περισσότερες CPU υποστηρίζονται μόνο εάν έχουν ενεργοποιηθεί τα IOMMU και EIM.
  • Xen:
  • Υποστήριξη για την αποσύνδεση του δίσκου SCSI.
  • Υποστήριξη για αποσύνδεση συμβατής συσκευής συμβατής με το SUSE xenlinux.
  • Εξομοίωση συσκευής και αντιστοίχιση:
  • Το QEMU περιλαμβάνει τώρα μια ψευδοσυσκευή γενικής φόρτωσης που σας επιτρέπει να φορτώσετε πολλαπλές εικόνες ή τιμές στη μνήμη κατά την εκκίνηση. Αυτή η συσκευή τεκμηριώνεται στο docs / generic-loader.txt.
  • ACPI:
  • Υποστήριξη για hotplugging συσκευών NVDIMM (_FIT)
  • Συσκευές δικτύου:
  • Υποστήριξη για ανοχή σφάλματος βασισμένη σε χονδρόκοκκο βήμα ασφάλισης (COLO).
  • PCI / PCIe:
  • Η συσκευή δείγματος EDU υποστηρίζει τώρα MSI.
  • Η τεκμηρίωση PCI Express Guidelines έχει προστεθεί για συμβουλές σχετικά με την τοπολογία και PCI vs PCIe.
  • virtio:
  • Νέα συσκευή vhost-vsock.
  • Η αρχική υποστήριξη για την ευγενική διαχείριση των σφαλμάτων guest (δηλ. το QEMU δεν θα πρέπει να βγαίνει στα σφάλματα των επισκεπτών).
  • Υποστήριξη για νέα συσκευή virtio-crypto.
  • Xen:
  • Υποστήριξη για αντίγραφο παραχώρησης.
  • Υποσύστημα Crypto:
  • Υποστήριξη αλγορίθμων κατακερματισμού για PBKDF
  • Υποστήριξη λειτουργίας CTR.
  • GUI:
  • Το SPICE μπορεί να χρησιμοποιήσει καθαρή απόδοση OpenGL αν "gl = on" ορίζεται.
  • Παρακολούθηση:
  • Μετανάστευση:
  • Υποστήριξη για ανοχή σφάλματος βασισμένη σε χονδρόκοκκο βήμα ασφάλισης (COLO).
  • Δίκτυο:
  • Αποκλεισμός συσκευών και εργαλείων:
  • Περισσότερες εντολές QMP υποστηρίζουν όνομα κόμβου (block-stream, block-commit, blockdev-backup, blockdev-mirror, blockdev-snapshot-delete-internal-sync, , drive-backup, mirror-drive, nbd-server-add).
  • Το συμβάν BLOCK_IO_ERROR περιλαμβάνει τώρα το όνομα κόμβου.
  • Περισσότερες εντολές QMP αποδέχονται ονόματα μοντέλων συσκευών (block_set_io_throttle, blockdev-change-medium, eject, x-blockdev-remove-medium, / li>
  • Το συμβάν DEVICE_TRAY_MOVED περιλαμβάνει πλέον το αναγνωριστικό της συσκευής.
  • Ο αποκλεισμός ισχύει τώρα μόνο για τη φιλοξενούμενη συσκευή και όχι για να μπλοκάρει τις εργασίες ή τον διακομιστή NBD.
  • Υποστήριξη backup-backup και blockdev-backup δημιουργώντας αντίγραφα ασφαλείας σε συμπιεσμένη μορφή.
  • Η μορφή LUKS μπορεί τώρα να ρυθμίσει τον αριθμό επαναλήψεων PBKDF
  • Το block-stream υποστηρίζει τη ροή από ένα αρχείο υποστήριξης σε ένα άλλο αρχείο υποστήριξης.
  • Υποστήριξη για αναπαραγωγή, για ανοχή σφάλματος με χονδρόκοκκο βήμα (COLO).
  • Νέο & quot; dd & quot; υπομονάδα qemu-img.
  • Το πρόγραμμα οδήγησης DMG μπορεί να μεταγλωττιστεί σε ξεχωριστό πρόγραμμα οδήγησης, έτσι ώστε η εξάρτηση του QEMU από το libbz2 να είναι προαιρετική.
  • Υποστήριξη για iSER στον εκκινητή iSCSI του QEMU μέσω ενός ISER: // URI.
  • Ο πελάτης και ο διακομιστής NBD υποστηρίζουν την επέκταση NBD_CMD_WRITE_ZEROES.
  • Οι ακατέργαστες εικόνες υποστηρίζουν "offset" και "μέγεθος" επιλογές για πρόσβαση σε μόνο ένα μέρος του αρχείου ή της συσκευής.
  • Εντοπισμός:
  • Νέο αρχείο εντοπισμού "syslog".
  • Υποστήριξη πολλαπλών εντολών "-d: PATTERN" γραμμών εντολών.
  • Επιλογές CLI:
  • Εξομοίωση λειτουργίας χρήστη
  • Κατάργηση υποστήριξης στόχου
  • Ο στόχος unicore32-linux-user υλοποίησε διαφορετική κλήση συστήματος ABI από το mainline Linux για αυτή την αρχιτεκτονική. Η υποστήριξη για αυτό έχει πέσει.
  • Νέα λειτουργικότητα:
  • Προστέθηκε υποστήριξη για περισσότερα syscalls, συμπεριλαμβανομένων των preadv, pwritev, syslog.
  • Σημαντικές βελτιώσεις κλιμάκωσης για προγράμματα πολλαπλών νημάτων (ARM, SPARC, x86).
  • Το QEMU μπορεί τώρα να κατανοήσει και να δημιουργήσει λειτουργίες φράχτη και cmpxchg.
  • TCG:
  • Έχουν προστεθεί νέα πρωτότυπα TCG για την ασφαλή μοντελοποίηση αρχιτεκτονικών οδηγιών συγχρονισμού (π.χ. atomics, LL / SC, προθέματα LOCK). arm, aarch64, alpha και x86 στοχεύουν τώρα να χρησιμοποιούν αυτά τα πρωτότυπα για προγράμματα Linux με πολλαπλά σπειρώματα. Οι συντηρητές στόχων TCG ενθαρρύνονται να φέρουν τα εμπρός τους άκρα για να χρησιμοποιήσουν τις νέες εγκαταστάσεις.
  • Τα backends TCG εκπέμπουν τώρα τις κατάλληλες οδηγίες φραγμού για τους φραγμούς frontend όταν εκτελούν προγράμματα πολλαπλών νημάτων. Ωστόσο, η εξομοίωση μιας ισχυρά διατεταγμένης αρχιτεκτονικής (π.χ. x86) σε μια ασθενώς διατεταγμένη (π.χ. ARM ή POWER) δεν θα λειτουργήσει ακόμα.

  • Το
  • tb_flush () είναι τελικά ασφαλές ως προς το νήμα, που σημαίνει ότι τα προγράμματα με πολλαπλά σπειρώματα είναι λιγότερο πιθανό να συντρίψουν όταν επαναφέρεται η προσωρινή μνήμη μετάφρασης
  • Ο ισχυρισμός κλειδώματος στον κύριο επεξεργαστή του cpu έχει μειωθεί βελτιώνοντας την απόδοση του κώδικα πολλαπλών σπειρωμάτων
  • εντοπίστηκαν και σταθεροποιήθηκαν διάφοροι αγώνες
  • Πολλά από τα έργα TCG συγχωνεύτηκαν σε αυτόν τον κύκλο, όπου υπάρχουν προϋποθέσεις για την υποστήριξη εξομοίωσης πολλαπλών νημάτων (MTTCG). Παρόλο που η πλήρης υποστήριξη MTTCG αναμένεται να συγχωνευθεί στον επόμενο κύκλο ανάπτυξης, τα προγράμματα πολλαπλών νημάτων linux-user θα επωφεληθούν ήδη από αυτή την εργασία.

Τι νέο υπάρχει στην έκδοση:

  • Εξομοίωση συστήματος:
  • Μη συμβατές αλλαγές:
  • Ο αριθμός των επιτρεπόμενων γεφυρών υποδοχής PCI για το μηχάνημα pSeries μειώθηκε από 256 σε 31 (μπορεί να ρυθμιστεί περισσότερο με τη ρύθμιση των παραθύρων MMIO με μη αυτόματο τρόπο).
  • Αφαιρέθηκε η υποστήριξη για το tftp: // στο στρώμα μπλοκ, καθώς αυτό έχει παραβιαστεί για πάντα για αρχεία μεγαλύτερα από 256KB.
  • Μελλοντικές μη συμβατές αλλαγές:
  • Τρεις επιλογές χρησιμοποιούν διαφορετικά ονόματα στη γραμμή εντολών και στο αρχείο ρυθμίσεων. Συγκεκριμένα:
  • Η ενότητα αρχείων ρυθμίσεων "acpi" ταιριάζει με την επιλογή γραμμής εντολών "acpitable",
  • Η ενότητα αρχείων ρυθμίσεων "boot-opts" συμφωνεί με την επιλογή γραμμής εντολών "boot",
  • Η ενότητα αρχείων ρυθμίσεων "smp-opts" ταιριάζει με την επιλογή γραμμής εντολών "smp".
  • -readconfig θα τυποποιήσει στο όνομα της επιλογής γραμμής εντολών.
  • Η συμπεριφορά του αυτόματου υπολογισμού της τοπολογίας SMP όταν παραλείπονται ορισμένες επιλογές τοπολογίας SMP για το -smp (πρίζες, πυρήνες, κλωστές) στο μέλλον. Εάν ο επισκέπτης ABI χρειάζεται να διατηρηθεί στις αναβαθμίσεις κατά τη χρήση των επιλογών τοπολογίας SMP, οι χρήστες θα πρέπει είτε να ορίσουν ρητά όλες τις επιλογές (πρίζες, πυρήνες, κλωστές) είτε να το παραλείψουν όλα.
  • Οι συσκευές "allwinner-a10", "pc87312", "ssi-sd" θα διαμορφωθούν με ρητές ιδιότητες αντί σιωπηρώς. Αυτό είναι απίθανο να επηρεάσει τους χρήστες.
  • Η εντολή QDE blockdev-add εξακολουθεί να είναι έργο σε εξέλιξη. Δεν υποστηρίζει όλους τους οδηγούς αποκλεισμού, δεν διαθέτει αντίστοιχο blockdev-del και πολλά άλλα. Μπορεί να αλλάξει ασυμβίβαστα.
  • Για το x86, η ενεργοποίηση του χαρακτηριστικού CPUID με "+ feature / -feature" και "feature = on / off" θα προκαλέσει προειδοποίηση. Η τρέχουσα συμπεριφορά για αυτόν τον συνδυασμό ("χαρακτηριστικό / -feature" κερδίζει πάνω από "feature = on / off") θα αλλάξει έτσι ώστε τα "+ feature" και "-feature" να είναι συνώνυμα για "feature = on" = off "αντίστοιχα).
  • ARM:
  • Βελτιώσεις στην πλακέτα Aspeed.
  • Υποστήριξη παγίδων HLT ημιδορυχείων σε λειτουργία AArch32 (τόσο ARM όσο και Thumb).
  • Οι πίνακες ACPI για τον τύπο μηχανής "virt" υποστηρίζουν το ITS.
  • Η συσκευή Cadence GEM υποστηρίζει πλέον πολλαπλές ουρές προτεραιότητας μέσω της ιδιότητας queues προτεραιότητας num
  • .
  • Ο πίνακας STM32F2xx (Netduino 2) περιλαμβάνει τώρα συσκευές ADC και SPI.
  • MIPS:
  • Υποστήριξη επεξεργαστών 24KEc.
  • PowerPC:
  • Υποστήριξη επεξεργαστών POWER9.
  • Βελτιώσεις για τη νέα πλατφόρμα "powernv".
  • pSeries:
  • Οι γέφυρες υποδοχής PCI μπορούν να συσχετιστούν με NUMA κόμβους.
  • Υποστήριξη για περισσότερα από 1 TiB μνήμης επισκεπτών.
  • Υποστήριξη για περισσότερα από 64 GiB του παραθύρου MMIO σε μια γέφυρα υποδοχής PCI.
  • Υποστήριξη της παραμέτρου "-prom-env"
  • s390:
  • Υποστήριξη μοντέλων CPU.
  • Υποστήριξη για την έκδοση 2 virtio-ccw.
  • x86:
  • Υποστήριξη για πολλές νέες λειτουργίες του CPUID που σχετίζονται με τις επεκτάσεις των συνόλων οδηγιών AVX-512.
  • Η εξομοιωμένη μονάδα IOAPIC (που χρησιμοποιείται από το TCG και με την KVM αν η επιλογή "-machine kernel_irqchip" έχει την τιμή "off" ή "split") είναι τώρα προεπιλεγμένη στην έκδοση 0x20, η οποία υποστηρίζει κατευθυνόμενα μηνύματα τέλους διακοπής.
  • Υποστήριξη λειτουργίας εκτεταμένης διακοπής (EIM) στη συσκευή intel_iommu. Το EIM απαιτεί KVM (Linux v4.7 ή νεότερη για υποστήριξη x2APIC) και "-machine kernel-irqchip = split". είναι ενεργοποιημένη αυτόματα αν είναι ενεργοποιημένη η επαναφορά διακοπής ("-machine kernel-irqchip = split -device intel_iommu, intremap = on").
  • Υποστήριξη έως και 288 CPU με τους τύπους μηχανών Q35. 256 ή περισσότερες CPU υποστηρίζονται μόνο εάν έχουν ενεργοποιηθεί τα IOMMU και EIM.
  • Xen:
  • Υποστήριξη για την αποσύνδεση του δίσκου SCSI.
  • Υποστήριξη για αποσύνδεση συμβατής συσκευής συμβατής με το SUSE xenlinux.
  • Εξομοίωση συσκευής και αντιστοίχιση:
  • Το QEMU περιλαμβάνει τώρα μια ψευδοσυσκευή γενικής φόρτωσης που σας επιτρέπει να φορτώσετε πολλαπλές εικόνες ή τιμές στη μνήμη κατά την εκκίνηση. Αυτή η συσκευή τεκμηριώνεται στο docs / generic-loader.txt.
  • ACPI:
  • Υποστήριξη για hotplugging συσκευών NVDIMM (_FIT)
  • Συσκευές δικτύου:
  • Υποστήριξη για ανοχή σφάλματος βασισμένη σε χονδρόκοκκο βήμα ασφάλισης (COLO).
  • PCI / PCIe:
  • Η συσκευή δείγματος EDU υποστηρίζει τώρα MSI.
  • Η τεκμηρίωση PCI Express Guidelines έχει προστεθεί για συμβουλές σχετικά με την τοπολογία και PCI vs PCIe.
  • virtio:
  • Νέα συσκευή vhost-vsock.
  • Η αρχική υποστήριξη για την ευγενική διαχείριση των σφαλμάτων guest (δηλ. το QEMU δεν θα πρέπει να βγαίνει στα σφάλματα των επισκεπτών).
  • Υποστήριξη για νέα συσκευή virtio-crypto.
  • Xen:
  • Υποστήριξη για αντίγραφο παραχώρησης.
  • Υποσύστημα Crypto:
  • Υποστήριξη αλγορίθμων κατακερματισμού για PBKDF
  • Υποστήριξη λειτουργίας CTR.
  • GUI:
  • Το SPICE μπορεί να χρησιμοποιήσει καθαρή απόδοση OpenGL αν έχει καθοριστεί "gl = on".
  • Παρακολούθηση:
  • Μετανάστευση:
  • Υποστήριξη για ανοχή σφάλματος βασισμένη σε χονδρόκοκκο βήμα ασφάλισης (COLO).
  • Δίκτυο:
  • Αποκλεισμός συσκευών και εργαλείων:
  • Περισσότερες εντολές QMP υποστηρίζουν όνομα κόμβου (block-stream, block-commit, blockdev-backup, blockdev-mirror, blockdev-snapshot-delete-internal-sync, , drive-backup, mirror-drive, nbd-server-add).
  • Το συμβάν BLOCK_IO_ERROR περιλαμβάνει τώρα το όνομα κόμβου.
  • Περισσότερες εντολές QMP αποδέχονται ονόματα μοντέλων συσκευών (block_set_io_throttle, blockdev-change-medium, eject, x-blockdev-remove-medium, / li>
  • Το συμβάν DEVICE_TRAY_MOVED περιλαμβάνει πλέον το αναγνωριστικό της συσκευής.
  • Ο αποκλεισμός ισχύει τώρα μόνο για τη φιλοξενούμενη συσκευή και όχι για να μπλοκάρει τις εργασίες ή τον διακομιστή NBD.
  • Υποστήριξη backup-backup και blockdev-backup δημιουργώντας αντίγραφα ασφαλείας σε συμπιεσμένη μορφή.
  • Η μορφή LUKS μπορεί τώρα να ρυθμίσει τον αριθμό επαναλήψεων PBKDF
  • Το block-stream υποστηρίζει τη ροή από ένα αρχείο υποστήριξης σε ένα άλλο αρχείο υποστήριξης.
  • Υποστήριξη για αναπαραγωγή, για ανοχή σφάλματος με χονδρόκοκκο βήμα (COLO).
  • Νέο δευτερόλεπτο "dd" του qemu-img.
  • Το πρόγραμμα οδήγησης DMG μπορεί να μεταγλωττιστεί σε ξεχωριστό πρόγραμμα οδήγησης, έτσι ώστε η εξάρτηση του QEMU από το libbz2 να είναι προαιρετική.
  • Υποστήριξη για iSER στον εκκινητή iSCSI του QEMU μέσω ενός ISER: // URI.
  • Ο πελάτης και ο διακομιστής NBD υποστηρίζουν την επέκταση NBD_CMD_WRITE_ZEROES.
  • Οι εικόνες Raw υποστηρίζουν επιλογές "offset" και "size" για πρόσβαση σε μόνο ένα μέρος του αρχείου ή της συσκευής.
  • Εντοπισμός:
  • Νέο αρχείο εντοπισμού backend "syslog".
  • Υποστήριξη πολλαπλών παραδειγμάτων γραμμής εντολών "-d ίχνευση: PATTERN".
  • Επιλογές CLI:
  • Εξομοίωση λειτουργίας χρήστη
  • Κατάργηση υποστήριξης στόχου
  • Ο στόχος unicore32-linux-user υλοποίησε διαφορετική κλήση συστήματος ABI από το mainline Linux για αυτή την αρχιτεκτονική. Η υποστήριξη για αυτό έχει πέσει.
  • Νέα λειτουργικότητα:
  • Προστέθηκε υποστήριξη για περισσότερα syscalls, συμπεριλαμβανομένων των preadv, pwritev, syslog.
  • Σημαντικές βελτιώσεις κλιμάκωσης για προγράμματα πολλαπλών νημάτων (ARM, SPARC, x86).
  • Το QEMU μπορεί τώρα να κατανοήσει και να δημιουργήσει λειτουργίες φράχτη και cmpxchg.
  • TCG:
  • Έχουν προστεθεί νέα πρωτότυπα TCG για την ασφαλή μοντελοποίηση αρχιτεκτονικών οδηγιών συγχρονισμού (π.χ. atomics, LL / SC, προθέματα LOCK). arm, aarch64, alpha και x86 στοχεύουν τώρα να χρησιμοποιούν αυτά τα πρωτότυπα για προγράμματα Linux με πολλαπλά σπειρώματα. Οι συντηρητές στόχων TCG ενθαρρύνονται να φέρουν τα εμπρός τους άκρα για να χρησιμοποιήσουν τις νέες εγκαταστάσεις.
  • Τα backends TCG εκπέμπουν τώρα τις κατάλληλες οδηγίες φραγμού για τους φραγμούς frontend όταν εκτελούν προγράμματα πολλαπλών νημάτων. Ωστόσο, η εξομοίωση μιας ισχυρά διατεταγμένης αρχιτεκτονικής (π.χ. x86) σε μια ασθενώς διατεταγμένη (π.χ. ARM ή POWER) δεν θα λειτουργήσει ακόμα.

  • Το
  • tb_flush () είναι τελικά ασφαλές ως προς το νήμα, που σημαίνει ότι τα προγράμματα με πολλαπλά σπειρώματα είναι λιγότερο πιθανό να συντρίψουν όταν επαναφέρεται η προσωρινή μνήμη μετάφρασης
  • Ο ισχυρισμός κλειδώματος στον κύριο επεξεργαστή του cpu έχει μειωθεί βελτιώνοντας την απόδοση του κώδικα πολλαπλών σπειρωμάτων
  • εντοπίστηκαν και σταθεροποιήθηκαν διάφοροι αγώνες
  • Πολλά από τα έργα TCG συγχωνεύτηκαν σε αυτόν τον κύκλο, όπου υπάρχουν προϋποθέσεις για την υποστήριξη εξομοίωσης πολλαπλών νημάτων (MTTCG). Παρόλο που η πλήρης υποστήριξη MTTCG αναμένεται να συγχωνευθεί στον επόμενο κύκλο ανάπτυξης, τα προγράμματα πολλαπλών νημάτων linux-user θα επωφεληθούν ήδη από αυτή την εργασία.

Τι νέο υπάρχει στην έκδοση 2.9.0:

  • Εξομοίωση συστήματος:
  • Μη συμβατές αλλαγές:
  • Ο αριθμός των επιτρεπόμενων γεφυρών υποδοχής PCI για το μηχάνημα pSeries μειώθηκε από 256 σε 31 (μπορεί να ρυθμιστεί περισσότερο με τη ρύθμιση των παραθύρων MMIO με μη αυτόματο τρόπο).
  • Αφαιρέθηκε η υποστήριξη για το tftp: // στο στρώμα μπλοκ, καθώς αυτό έχει παραβιαστεί για πάντα για αρχεία μεγαλύτερα από 256KB.
  • Μελλοντικές μη συμβατές αλλαγές:
  • Τρεις επιλογές χρησιμοποιούν διαφορετικά ονόματα στη γραμμή εντολών και στο αρχείο ρυθμίσεων. Συγκεκριμένα:
  • Η ενότητα αρχείων ρυθμίσεων "acpi" ταιριάζει με την επιλογή γραμμής εντολών "acpitable",
  • Η ενότητα αρχείων ρυθμίσεων "boot-opts" συμφωνεί με την επιλογή γραμμής εντολών "boot",
  • Η ενότητα αρχείων ρυθμίσεων "smp-opts" ταιριάζει με την επιλογή γραμμής εντολών "smp".
  • -readconfig θα τυποποιήσει στο όνομα της επιλογής γραμμής εντολών.
  • Η συμπεριφορά του αυτόματου υπολογισμού της τοπολογίας SMP όταν παραλείπονται ορισμένες επιλογές τοπολογίας SMP για το -smp (πρίζες, πυρήνες, κλωστές) στο μέλλον. Εάν ο επισκέπτης ABI χρειάζεται να διατηρηθεί στις αναβαθμίσεις κατά τη χρήση των επιλογών τοπολογίας SMP, οι χρήστες θα πρέπει είτε να ορίσουν ρητά όλες τις επιλογές (πρίζες, πυρήνες, κλωστές) είτε να το παραλείψουν όλα.
  • Οι συσκευές "allwinner-a10", "pc87312", "ssi-sd" θα διαμορφωθούν με ρητές ιδιότητες αντί σιωπηρώς. Αυτό είναι απίθανο να επηρεάσει τους χρήστες.
  • Η εντολή QDE blockdev-add εξακολουθεί να είναι έργο σε εξέλιξη. Δεν υποστηρίζει όλους τους οδηγούς αποκλεισμού, δεν διαθέτει αντίστοιχο blockdev-del και πολλά άλλα. Μπορεί να αλλάξει ασυμβίβαστα.
  • Για το x86, η ενεργοποίηση του χαρακτηριστικού CPUID με "+ feature / -feature" και "feature = on / off" θα προκαλέσει προειδοποίηση. Η τρέχουσα συμπεριφορά για αυτόν τον συνδυασμό ("χαρακτηριστικό / -feature" κερδίζει πάνω από "feature = on / off") θα αλλάξει έτσι ώστε τα "+ feature" και "-feature" να είναι συνώνυμα για "feature = on" = off "αντίστοιχα).
  • ARM:
  • Βελτιώσεις στην πλακέτα Aspeed.
  • Υποστήριξη παγίδων HLT ημιδορυχείων σε λειτουργία AArch32 (τόσο ARM όσο και Thumb).
  • Οι πίνακες ACPI για τον τύπο μηχανής "virt" υποστηρίζουν το ITS.
  • Η συσκευή Cadence GEM υποστηρίζει πλέον πολλαπλές ουρές προτεραιότητας μέσω της ιδιότητας queues προτεραιότητας num
  • .
  • Ο πίνακας STM32F2xx (Netduino 2) περιλαμβάνει τώρα συσκευές ADC και SPI.
  • MIPS:
  • Υποστήριξη επεξεργαστών 24KEc.
  • PowerPC:
  • Υποστήριξη επεξεργαστών POWER9.
  • Βελτιώσεις για τη νέα πλατφόρμα "powernv".
  • pSeries:
  • Οι γέφυρες υποδοχής PCI μπορούν να συσχετιστούν με NUMA κόμβους.
  • Υποστήριξη για περισσότερα από 1 TiB μνήμης επισκεπτών.
  • Υποστήριξη για περισσότερα από 64 GiB του παραθύρου MMIO σε μια γέφυρα υποδοχής PCI.
  • Υποστήριξη της παραμέτρου "-prom-env"
  • s390:
  • Υποστήριξη μοντέλων CPU.
  • Υποστήριξη για την έκδοση 2 virtio-ccw.
  • x86:
  • Υποστήριξη για πολλές νέες λειτουργίες του CPUID που σχετίζονται με τις επεκτάσεις των συνόλων οδηγιών AVX-512.
  • Η εξομοιωμένη μονάδα IOAPIC (που χρησιμοποιείται από το TCG και με την KVM αν η επιλογή "-machine kernel_irqchip" έχει την τιμή "off" ή "split") είναι τώρα προεπιλεγμένη στην έκδοση 0x20, η οποία υποστηρίζει κατευθυνόμενα μηνύματα τέλους διακοπής.
  • Υποστήριξη λειτουργίας εκτεταμένης διακοπής (EIM) στη συσκευή intel_iommu. Το EIM απαιτεί KVM (Linux v4.7 ή νεότερη για υποστήριξη x2APIC) και "-machine kernel-irqchip = split". είναι ενεργοποιημένη αυτόματα αν είναι ενεργοποιημένη η επαναφορά διακοπής ("-machine kernel-irqchip = split -device intel_iommu, intremap = on").
  • Υποστήριξη έως και 288 CPU με τους τύπους μηχανών Q35. 256 ή περισσότερες CPU υποστηρίζονται μόνο εάν έχουν ενεργοποιηθεί τα IOMMU και EIM.
  • Xen:
  • Υποστήριξη για την αποσύνδεση του δίσκου SCSI.
  • Υποστήριξη για αποσύνδεση συμβατής συσκευής συμβατής με το SUSE xenlinux.
  • Εξομοίωση συσκευής και αντιστοίχιση:
  • Το QEMU περιλαμβάνει τώρα μια ψευδοσυσκευή γενικής φόρτωσης που σας επιτρέπει να φορτώσετε πολλαπλές εικόνες ή τιμές στη μνήμη κατά την εκκίνηση. Αυτή η συσκευή τεκμηριώνεται στο docs / generic-loader.txt.
  • ACPI:
  • Υποστήριξη για hotplugging συσκευών NVDIMM (_FIT)
  • Συσκευές δικτύου:
  • Υποστήριξη για ανοχή σφάλματος βασισμένη σε χονδρόκοκκο βήμα ασφάλισης (COLO).
  • PCI / PCIe:
  • Η συσκευή δείγματος EDU υποστηρίζει τώρα MSI.
  • Η τεκμηρίωση PCI Express Guidelines έχει προστεθεί για συμβουλές σχετικά με την τοπολογία και PCI vs PCIe.
  • virtio:
  • Νέα συσκευή vhost-vsock.
  • Η αρχική υποστήριξη για την ευγενική διαχείριση των σφαλμάτων guest (δηλ. το QEMU δεν θα πρέπει να βγαίνει στα σφάλματα των επισκεπτών).
  • Υποστήριξη για νέα συσκευή virtio-crypto.
  • Xen:
  • Υποστήριξη για αντίγραφο παραχώρησης.
  • Υποσύστημα Crypto:
  • Υποστήριξη αλγορίθμων κατακερματισμού για PBKDF
  • Υποστήριξη λειτουργίας CTR.
  • GUI:
  • Το SPICE μπορεί να χρησιμοποιήσει καθαρή απόδοση OpenGL αν έχει καθοριστεί "gl = on".
  • Παρακολούθηση:
  • Μετανάστευση:
  • Υποστήριξη για ανοχή σφάλματος βασισμένη σε χονδρόκοκκο βήμα ασφάλισης (COLO).
  • Δίκτυο:
  • Αποκλεισμός συσκευών και εργαλείων:
  • Περισσότερες εντολές QMP υποστηρίζουν όνομα κόμβου (block-stream, block-commit, blockdev-backup, blockdev-mirror, blockdev-snapshot-delete-internal-sync, , drive-backup, mirror-drive, nbd-server-add).
  • Το συμβάν BLOCK_IO_ERROR περιλαμβάνει τώρα το όνομα κόμβου.
  • Περισσότερες εντολές QMP αποδέχονται ονόματα μοντέλων συσκευών (block_set_io_throttle, blockdev-change-medium, eject, x-blockdev-remove-medium, / li>
  • Το συμβάν DEVICE_TRAY_MOVED περιλαμβάνει πλέον το αναγνωριστικό της συσκευής.
  • Ο αποκλεισμός ισχύει τώρα μόνο για τη φιλοξενούμενη συσκευή και όχι για να μπλοκάρει τις εργασίες ή τον διακομιστή NBD.
  • Υποστήριξη backup-backup και blockdev-backup δημιουργώντας αντίγραφα ασφαλείας σε συμπιεσμένη μορφή.
  • Η μορφή LUKS μπορεί τώρα να ρυθμίσει τον αριθμό επαναλήψεων PBKDF
  • Το block-stream υποστηρίζει τη ροή από ένα αρχείο υποστήριξης σε ένα άλλο αρχείο υποστήριξης.
  • Υποστήριξη για αναπαραγωγή, για ανοχή σφάλματος με χονδρόκοκκο βήμα (COLO).
  • Νέο δευτερόλεπτο "dd" του qemu-img.
  • Το πρόγραμμα οδήγησης DMG μπορεί να μεταγλωττιστεί σε ξεχωριστό πρόγραμμα οδήγησης, έτσι ώστε η εξάρτηση του QEMU από το libbz2 να είναι προαιρετική.
  • Υποστήριξη για iSER στον εκκινητή iSCSI του QEMU μέσω ενός ISER: // URI.
  • Ο πελάτης και ο διακομιστής NBD υποστηρίζουν την επέκταση NBD_CMD_WRITE_ZEROES.
  • Οι εικόνες Raw υποστηρίζουν επιλογές "offset" και "size" για πρόσβαση σε μόνο ένα μέρος του αρχείου ή της συσκευής.
  • Εντοπισμός:
  • Νέο αρχείο εντοπισμού backend "syslog".
  • Υποστήριξη πολλαπλών παραδειγμάτων γραμμής εντολών "-d ίχνευση: PATTERN".
  • Επιλογές CLI:
  • Εξομοίωση λειτουργίας χρήστη
  • Κατάργηση υποστήριξης στόχου
  • Ο στόχος unicore32-linux-user υλοποίησε διαφορετική κλήση συστήματος ABI από το mainline Linux για αυτή την αρχιτεκτονική. Η υποστήριξη για αυτό έχει πέσει.
  • Νέα λειτουργικότητα:
  • Προστέθηκε υποστήριξη για περισσότερα syscalls, συμπεριλαμβανομένων των preadv, pwritev, syslog.
  • Σημαντικές βελτιώσεις κλιμάκωσης για προγράμματα πολλαπλών νημάτων (ARM, SPARC, x86).
  • Το QEMU μπορεί τώρα να κατανοήσει και να δημιουργήσει λειτουργίες φράχτη και cmpxchg.
  • TCG:
  • Έχουν προστεθεί νέα πρωτότυπα TCG για την ασφαλή μοντελοποίηση αρχιτεκτονικών οδηγιών συγχρονισμού (π.χ. atomics, LL / SC, προθέματα LOCK). arm, aarch64, alpha και x86 στοχεύουν τώρα να χρησιμοποιούν αυτά τα πρωτότυπα για προγράμματα Linux με πολλαπλά σπειρώματα. Οι συντηρητές στόχων TCG ενθαρρύνονται να φέρουν τα εμπρός τους άκρα για να χρησιμοποιήσουν τις νέες εγκαταστάσεις.
  • Τα backend TCG εκπέμπουν τώρα τις κατάλληλες οδηγίες φραγμού για φραγμούς frontend όταν εκτελούν προγράμματα πολλαπλών νημάτων. Ωστόσο, η εξομοίωση μιας ισχυρά διατεταγμένης αρχιτεκτονικής (π.χ. x86) σε μια ασθενώς διατεταγμένη (π.χ. ARM ή POWER) δεν θα λειτουργήσει ακόμα.

  • Το
  • tb_flush () είναι τελικά ασφαλές ως προς το νήμα, που σημαίνει ότι τα προγράμματα με πολλαπλά σπειρώματα είναι λιγότερο πιθανό να συντρίψουν όταν επαναφέρεται η προσωρινή μνήμη μετάφρασης
  • Ο ισχυρισμός κλειδώματος στον κύριο επεξεργαστή του cpu έχει μειωθεί βελτιώνοντας την απόδοση του κώδικα πολλαπλών σπειρωμάτων
  • εντοπίστηκαν και σταθεροποιήθηκαν διάφοροι αγώνες
  • Πολλά από τα έργα TCG συγχωνεύτηκαν σε αυτόν τον κύκλο, όπου υπάρχουν προϋποθέσεις για την υποστήριξη εξομοίωσης πολλαπλών νημάτων (MTTCG). Παρόλο που η πλήρης υποστήριξη MTTCG αναμένεται να συγχωνευθεί στον επόμενο κύκλο ανάπτυξης, τα προγράμματα πολλαπλών νημάτων linux-user θα επωφεληθούν ήδη από αυτή την εργασία.

Άλλο λογισμικό του προγραμματιστή Fabrice Bellard

TCCBOOT
TCCBOOT

3 Jun 15

KQEMU
KQEMU

2 Jun 15

Σχόλια για QEMU

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!