QEMU 4.1 эмуляторунун чыгарылышы

киргизилген долбоор чыгаруу QEMU 4.1. Эмулятор катары QEMU сизге такыр башка архитектурасы бар системада бир аппараттык платформа үчүн түзүлгөн программаны иштетүүгө мүмкүндүк берет, мисалы, x86-шайкеш компьютерде ARM тиркемесин иштетүү. QEMUдагы виртуалдаштыруу режиминде, обочолонгон чөйрөдө коддун аткарылышынын көрсөткүчү процессордогу көрсөтмөлөрдү түздөн-түз аткаруунун жана Xen гипервизорунун же KVM модулунун колдонулушунан улам түпкү системага жакын.

Долбоор алгач Fabrice Bellard тарабынан x86 эмес архитектураларда x86 платформасы үчүн түзүлгөн Linux аткаруучу файлдарын иштетүү мүмкүнчүлүгүн берүү үчүн түзүлгөн. Өнүгүү жылдарында 14 аппараттык архитектура үчүн толук эмуляцияны колдоо кошулду, эмуляцияланган аппараттык түзүлүштөрдүн саны 400дөн ашты. 4.1 версиясын даярдоодо 2000 иштеп чыгуучулардан 276дөн ашык өзгөртүүлөр киргизилди.

Ачкыч жакшыртууларQEMU 4.1 кошулган:

  • Hygon Dhyana жана Intel SnowRidge CPU моделдерин колдоо x86 архитектуралык эмуляторуна кошулду. RDRAND кеңейтүүсүнүн кошумча эмуляциясы (аппараттык псевдо-кокус сандар генератору). Кошулган желектер
    Кол салуудан коргоону көзөмөлдөө үчүн md-clear жана mds-no MDS (Микроархитектуралык маалыматтарды тандоо) Intel процессорлорунда. “-smp ...,dies=” желегин колдонуу менен интегралдык микросхемалардын топологияларын аныктоо мүмкүнчүлүгү кошулду. Версиялоо бардык x86 CPU моделдери үчүн ишке ашырылган;

  • SSH блок драйвери колдонуудан жылдырылды libssh2 боюнча libsh;
  • virtio-gpu драйвери (долбоордун алкагында иштелип чыккан виртуалдык GPU Virgil) 2D/3D көрсөтүү операцияларын тышкы vhost-колдонуучу процессине жылдыруу үчүн кошумча колдоо (мисалы, vhost-user-gpu);
  • ARM архитектуралык эмулятору псевдо-кокус сандарды түзүү үчүн ARMv8.5-RNG кеңейтүүсүн колдоону кошту. Cortex-M үй-бүлөлүк чиптери үчүн FPU эмуляциясын колдоо ишке ашырылды жана Cortex-R5F үчүн FPU эмуляциясы менен көйгөйлөр чечилди. Kconfig стилинде иштелип чыккан куруу параметрлерин орнотуунун жаңы системасы сунушталды. SoC Exynos4210 үчүн PL330 DMA контроллерлорун колдоо кошулду;
  • MIPS архитектура эмулятору чоң-эндиан байт тартибин колдонууда MSA ASE инструкцияларын колдоону жакшыртты жана нөл учурларга бөлүү процессин шилтеме жабдыктары менен тегиздеди. Бүтүн сандарды эсептөө жана алмаштыруу операциялары үчүн MSA инструкцияларын эмуляциялоонун көрсөткүчтөрү жогорулатылды;
  • PowerPC архитектуралык эмулятору эми VFIO аркылуу NVIDIA V100/NVLink2 GPUларына багыттоону колдойт. Сериялар үчүн XIVE үзгүлтүктүү контроллердин эмуляциясынын тездетилиши ишке ашырылган жана PCI көпүрөлөрүн ысык туташтыруу үчүн колдоо кошулган. Вектордук инструкцияларды эмуляциялоо үчүн оптималдаштыруу жасалган (Altivec/VSX);
  • RISC-V архитектуралык эмуляторуна жаңы аппараттык модель кошулду - "спик". ISA 1.11.0 үчүн кошумча колдоо. 32 биттик системалык чалуу ABI жакшыртылды, жараксыз нускамаларды иштетүү жакшыртылды жана орнотулган мүчүлүштүктөрдү оңдоочу жакшыртылды. Түзмөк дарагында CPU топологиясы үчүн кошумча колдоо;
  • s390 архитектуралык эмулятору "Vector Facility" тобунун бардык вектордук нускамаларын эмуляциялоо үчүн колдоону кошту жана gen15 системаларын колдоо үчүн кошумча элементтерди кошту (анын ичинде vfio-ap үчүн AP Queue Interruption Facility үчүн кошумча колдоо). vfio-ccw аркылуу конок системасына туташтырылган ECKD DASDден жүктөө үчүн BIOS колдоосу ишке ашырылды;
  • Sun4m системалары үчүн SPARC архитектура эмуляторунда OpenBIOS үчүн “-vga none” желегин колдонуудагы көйгөйлөр чечилди;
  • Tensilica Xtensa үй-бүлөлүк процессор эмулятору MPU (эстутумду коргоо бирдиги) жана эксклюзивдүү мүмкүнчүлүктөрдү камтыйт;
  • "-salvage" опциясы "qemu-img конверт" буйругуна кошулган, I/O каталары болгон учурда сүрөттү өзгөртүү процессинин бузулушун өчүрүү үчүн (мисалы, жарым-жартылай бузулган qcow2 файлдарын калыбына келтирүү үчүн колдонсо болот). Командада
    “qemu-img rebase” киргизүү файлы үчүн колдоо файлы түзүлө элек кезде иштейт;

  • "semihosting" технологиясы менен уюштурулган чыгарууну кайра багыттоо мүмкүнчүлүгү кошулду (эмуляциялык түзүлүшкө хост тарабында файлдарды түзүү үчүн stdout, stderr жана stdin колдонууга мүмкүндүк берет) chardev серверине ("-semihosting-config enable=on,target=native) кошулду ,chardev=[ID]");
  • VMDK блок драйверинде окуу үчүн гана режимде seSparse субформатына колдоо кошулду;
  • GPIO эмуляция драйвериндеги SiFive GPIO контроллерине колдоо кошулду.

Source: opennet.ru

Комментарий кошуу