QEMU 5.0 emülatörünün piyasaya sürülmesi

tanıtıldı proje sürümü QEMU 5.0. Bir emülatör olarak QEMU, tamamen farklı bir mimariye sahip bir sistemde bir donanım platformu için derlenmiş bir programı çalıştırmanıza, örneğin x86 uyumlu bir bilgisayarda bir ARM uygulamasını çalıştırmanıza olanak tanır. QEMU'daki sanallaştırma modunda, talimatların CPU üzerinde doğrudan yürütülmesi ve Xen hipervizör veya KVM modülünün kullanılması nedeniyle izole bir ortamda kod yürütme performansı yerel sisteme yakındır.

Proje ilk olarak Fabrice Bellard tarafından x86 platformu için oluşturulmuş Linux yürütülebilir dosyalarının x86 olmayan mimarilerde çalışmasına izin vermek için oluşturuldu. Geliştirme yılları boyunca 14 donanım mimarisi için tam öykünme desteği eklendi, öykünülmüş donanım cihazlarının sayısı 400'ü aştı. Sürüm 5.0'a hazırlanırken 2800 geliştiriciden 232'den fazla değişiklik yapıldı.

Anahtar iyileştirmelerQEMU 5.0'e eklendi:

  • Ana bilgisayar ortamının dosya sisteminin bir kısmını konuk sisteme iletme yeteneği Virtiofsd. Konuk sistem, ana sistem tarafında dışa aktarma için işaretlenmiş bir dizini monte edebilir; bu, sanallaştırma sistemlerindeki dizinlere paylaşılan erişimin organizasyonunu büyük ölçüde basitleştirir. NFS ve virtio-9P gibi ağ dosya sistemlerinin kullanımının aksine, virtiofs, yerel dosya sistemine yakın performans elde etmenize olanak tanır;
  • Destek QEMU D-Bus kullanılarak harici süreçlerden verilerin canlı geçişi;
  • kullanılabilirlik bellek arka uçları Konuk sistemin ana RAM'inin çalışmasını sağlamak. Arka uç “-makine belleği-arka uç” seçeneği kullanılarak belirtilir;
  • Sıkıştırılmış görüntü yedekleri oluşturmak için kullanılabilecek yeni "sıkıştır" filtresi;
  • "Qemu-img Measure" komutu artık LUKS görselleriyle çalışabiliyor ve hedef görselin sıfırlanmasını atlamak için "qemu-img Convert" komutuna "--target-is-zero" seçeneği eklendi;
  • Qemu-storage-daemon süreci için deneysel destek eklendi; tam bir sanal makineyi çalıştırmaya gerek kalmadan, blok aygıtlarının ve yerleşik NBD sunucusunun çalıştırılması da dahil olmak üzere QEMU blok düzeyine ve QMP komutlarına erişim sağlandı;
  • ARM mimarisi emülatörü, Cortex-M7 CPU'larını taklit etme yeteneğini ekledi ve tacoma-bmc, Netduino Plus 2 ve Orangepi PC kartları için destek sağlıyor. 'Sanal' öykünülmüş makinelere vTPM ve virtio-iommu aygıtları için destek eklendi. KVM konuk ortamlarını çalıştırmak için AArch32 ana bilgisayar sistemlerini kullanma yeteneği kullanımdan kaldırıldı. Aşağıdaki mimari özelliklerinin emülasyonu için destek uygulanmıştır:
    • ARMv8.1: HEV, VMID16, PAN, PMU
    • ARMv8.2: UAO, DCPoP, ATS1E1, TTCNP
    • ARMv8.3: RCPC, CCIDX
    • ARMv8.4: PMU, RCPC
  • HP Artist grafik aygıtını kullanarak HPPA mimarisi öykünücüsüne grafik konsolu desteği eklendi;
  • MIPS mimarisi öykünücüsüne GINVT (Küresel Geçersiz Kılma TLB) talimatı desteği eklendi;
  • Konuk sistemleri çalıştırmak için KVM donanım hızlandırma araçlarının emülasyonu, 'powernv' makineleri için PowerPC mimarisi emülatörüne eklendi
    Klasik TCG kod üretecine (Tiny Code Generator) sahip KVM. Kalıcı belleği taklit etmek için dosyaya yansıtılan NVDIMM desteği eklendi. 'Pseries' makineleri için, XIVE/XICS kesme denetleyicilerinin "ic-mode=dual" modunda çalışmasını koordine etmek için yeniden başlatma ihtiyacı ortadan kaldırıldı;

  • 'virt' ve 'sifive_u' kartları için RISC-V mimarisi emülatörü, güç ve yeniden başlatma yönetimi için standart Linux syscon sürücülerine destek sağlar. 'Sanal' pano için Goldfish RTC desteği eklendi. Hiper yönetici uzantılarının deneysel uygulaması eklendi;
  • KVM modunda çalışırken s390 mimarisi emülatörüne AIS (Adaptör Kesinti Bastırma) desteği eklendi.

Kaynak: opennet.ru

Yorum ekle