Wydanie emulatora QEMU 5.0

Przedstawiony premiera projektu QEMU 5.0. Jako emulator QEMU pozwala uruchomić program skompilowany dla jednej platformy sprzętowej na systemie o zupełnie innej architekturze, na przykład uruchomić aplikację dla ARM na komputerze z procesorem zgodnym z x86. W trybie wirtualizacji w QEMU wydajność wykonywania kodu w izolowanym środowisku jest bliska natywnej dzięki bezpośredniemu wykonywaniu instrukcji na CPU i wykorzystaniu hypervisora Xen lub modułu KVM.

Projekt został pierwotnie stworzony przez Fabrice'a Bellarda w celu umożliwienia uruchamiania plików wykonywalnych Linux skompilowanych dla platformy x86 na architekturach innych niż x86. W ciągu lat rozwoju dodano wsparcie dla pełnej emulacji 14 architektur sprzętowych, a liczba emulowanych urządzeń sprzętowych przekroczyła 400. W przygotowaniu wersji 5.0 wprowadzono ponad 2800 zmian od 232 deweloperów.

Kluczowe ulepszenia, dodanych w QEMU 5.0:

  • Możliwość przekazywania części systemu plików z środowiska hosta do systemu gościa za pomocą virtiofsd. System gościa może zamontować katalog oznaczony do eksportu po stronie systemu hosta, co znacznie upraszcza organizację współdzielenia katalogów w systemach wirtualizacji. W przeciwieństwie do korzystania z sieciowych systemów plików, takich jak NFS i virtio-9P, virtiofs pozwala osiągnąć wydajność zbliżoną do lokalnego systemu plików;
  • Wsparcie live-migracji danych z zewnętrznych procesów korzystających z magistrali QEMU D-Bus;
  • Możliwość korzystania z backendów pamięci dla zapewnienia działania głównej pamięci operacyjnej systemu gościa. Backend określa się za pomocą opcji «-machine memory-backend»;
  • Nowy filtr «compress», który można wykorzystać do tworzenia skompresowanych kopii zapasowych obrazów;
  • Polecenie «qemu-img measure» może teraz działać z obrazami LUKS, a do polecenia «qemu-img convert» dodano opcję «—target-is-zero» umożliwiającą pominięcie zerowania docelowego obrazu;
  • Dodano eksperymentalne wsparcie dla procesu qemu-storage-daemon, który udostępnia dostęp do poziomu blokowego QEMU i polecenia QMP, w tym wykonywanie operacji z urządzeniami blokowymi i wbudowany serwer NBD, bez potrzeby uruchamiania pełnej maszyny wirtualnej;
  • W emulatorze architektury ARM dodano możliwość emulacji CPU Cortex-M7 oraz zapewniono wsparcie dla płyt tacoma-bmc, Netduino Plus 2 i Orangepi PC. Do emulowanych maszyn ‘virt’ dodano wsparcie dla urządzeń vTPM i virtio-iommu. Ogłoszono przestarzałą możliwość korzystania z systemów hosta AArch32 do uruchamiania środowisk gościa KVM. Wdrożono wsparcie dla emulacji następujących możliwości architektur:
    • ARMv8.1: VHE, VMID16, PAN, PMU
    • ARMv8.2: UAO, DCPoP, ATS1E1, TTCNP
    • ARMv8.3: RCPC, CCIDX
    • ARMv8.4: PMU, RCPC
  • W emulatorze architektury HPPA dodano wsparcie dla graficznego interfejsu konsoli z wykorzystaniem graficznego urządzenia HP Artist;
  • W emulatorze architektury MIPS dodano wsparcie dla instrukcji GINVT (Global Invalidation TLB);
  • W emulatorze architektury PowerPC dla maszyn 'powernv' dodano emulację sprzętowych środków przyspieszania KVM do uruchamiania systemów gościnnych.
    KVM z klasycznym generatorem kodu TCG (Tiny Code Generator). Dla emulacji pamięci trwałej dodano wsparcie dla odzwierciedlonych w pliku NVDIMM. Dla maszyn 'pseries' usunięto konieczność ponownego uruchomienia dla synchronizacji pracy kontrolerów przerwań XIVE/XICS w trybie 'ic-mode=dual';
  • W emulatorze architektury RISC-V dla płyt 'virt' i 'sifive_u' zaimplementowano wsparcie dla typowych sterowników syscon w Linux do zarządzania zasilaniem i ponownym uruchamianiem. Dla płyty 'virt' dodano wsparcie dla Goldfish RTC. Dodano eksperymentalną implementację rozszerzeń hipernadzorcy;
  • W emulatorze architektury s390 dodano wsparcie AIS (Adapter Interrupt Suppression) podczas pracy w trybie KVM.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster