QEMU 8.0 рдПрдореБрд▓реЗрдЯрд░рдЪреЗ рдкреНрд░рдХрд╛рд╢рди

QEMU 8.0 рдкреНрд░рдХрд▓реНрдкрд╛рдЪреЗ рдкреНрд░рдХрд╛рд╢рди рд╕рд╛рджрд░ рдХреЗрд▓реЗ рдЖрд╣реЗ. рдПрдореБрд▓реЗрдЯрд░ рдореНрд╣рдгреВрди, QEMU рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╕рд╛рдареА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкреВрд░реНрдгрдкрдгреЗ рднрд┐рдиреНрди рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд┐рд╕реНрдЯрдорд╡рд░ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, x86-рд╕реБрд╕рдВрдЧрдд рдкреАрд╕реАрд╡рд░ рдПрдЖрд░рдПрдо рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЪрд╛рд▓рд╡рд╛. QEMU рдордзреАрд▓ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рди рдореЛрдбрдордзреНрдпреЗ, CPU рд╡рд░реАрд▓ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдЪреА рдереЗрдЯ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрдгрд┐ Xen рд╣рд╛рдпрдкрд░рд╡рд╛рдЗрдЬрд░ рдХрд┐рдВрд╡рд╛ KVM рдореЙрдбреНрдпреВрд▓рдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рдореБрд│реЗ рдПрдХрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рдХреЛрдб рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪреЗ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рдкреНрд░рдгрд╛рд▓реАрдЪреНрдпрд╛ рдЬрд╡рд│ рдЕрд╕рддреЗ.

рд╣рд╛ рдкреНрд░рдХрд▓реНрдк рдореВрд│рдд: рдлреЕрдмреНрд░рд┐рд╕ рдмреЗрд▓рд╛рд░реНрдбрдиреЗ x86 рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╕рд╛рдареА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд▓рд┐рдирдХреНрд╕ рдПрдХреНрдЭрд┐рдХреНрдпреВрдЯреЗрдмрд▓рд▓рд╛ x86 рдирд╕рд▓реЗрд▓реНрдпрд╛ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░реНрд╕рд╡рд░ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрдгреНрдпрд╛рд╕рд╛рдареА рддрдпрд╛рд░ рдХреЗрд▓рд╛ рд╣реЛрддрд╛. рд╡рд┐рдХрд╛рд╕рд╛рдЪреНрдпрд╛ рд╡рд░реНрд╖рд╛рдВрдордзреНрдпреЗ, 14 рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╕рд╛рдареА рдкреВрд░реНрдг рдЗрдореНрдпреБрд▓реЗрд╢рди рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдПрдореНрдпреБрд▓реЗрдЯреЗрдб рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рдЙрдкрдХрд░рдгрд╛рдВрдЪреА рд╕рдВрдЦреНрдпрд╛ 400 рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдЭрд╛рд▓реА рдЖрд╣реЗ. рдЖрд╡реГрддреНрддреА 8.0 рдЪреНрдпрд╛ рддрдпрд╛рд░реАрдордзреНрдпреЗ, 2800 рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдХрдбреВрди 238 рд╣реВрди рдЕрдзрд┐рдХ рдмрджрд▓ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд.

QEMU 8.0 рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗрд▓реНрдпрд╛ рдорд╣рддреНрддреНрд╡рд╛рдЪреНрдпрд╛ рд╕реБрдзрд╛рд░рдгрд╛:

  • 32-рдмрд┐рдЯ x86 рд╣реЛрд╕реНрдЯрд╡рд░ рд╕рд┐рд╕реНрдЯрдо рдЗрдореНрдпреБрд▓реЗрд╢рди (KVM рдЖрдгрд┐ Xen рд╣рд╛рдпрдкрд░рд╡реНрд╣рд╛рдпрдЭрд░реНрд╕рд╕рд╣ рд╕рдВрдкреВрд░реНрдг OS рд▓рд╛рдБрдЪ рдХрд░рдгреЗ) рд╕рд╛рдареА рдЕрдкреНрд░рдЪрд▓рд┐рдд рдШреЛрд╖рд┐рдд рдЖрдгрд┐ рд╕рдорд░реНрдерди рд▓рд╡рдХрд░рдЪ рдмрдВрдж рдХреЗрд▓реЗ рдЬрд╛рдИрд▓. 32-рдмрд┐рдЯ x86 рд╣реЛрд╕реНрдЯрд╡рд░ рд╡рд╛рдкрд░рдХрд░реНрддрд╛-рдореЛрдб рдЗрдореНрдпреБрд▓реЗрд╢рди (рд╡реЗрдЧрд│реНрдпрд╛ CPU рд╕рд╛рдареА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЪрд╛рд▓рд╡рдгреЗ) рд╕рд╛рдареА рд╕рдорд░реНрдерди рд╕реБрд░реВ рд░рд╛рд╣реАрд▓.
  • x86 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдПрдореБрд▓реЗрдЯрд░рдордзреНрдпреЗ KVM рд╣рд╛рдпрдкрд░рд╡рд╛рдЗрдЬрд░ рдЖрдгрд┐ Linux 5.12+ рдХрд░реНрдирд▓рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд Xen рдЕрддрд┐рдереА рдЪрд╛рд▓рд╡рдгреНрдпрд╛рд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ.
  • x86 рдХреНрд▓рд╛рд╕рд┐рдХ TCG рдХреЛрдб рдЬрдирд░реЗрдЯрд░рдордзреНрдпреЗ FSRM, FZRM, FSRS рдЖрдгрд┐ FSRC CPUID рдзреНрд╡рдЬрд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ. рдирд╡реАрди CPU рдореЙрдбреЗрд▓ Intel Sapphire Rapids (Intel 7) рд╕рд╛рдареА рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХреЗрд▓реЗ.
  • ARM рдЗрдореНрдпреБрд▓реЗрдЯрд░рдиреЗ Cortex-A55 рдЖрдгрд┐ Cortex-R52 CPUs рд╕рд╛рдареА рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЖрд╣реЗ, рдирд╡реАрди рдкреНрд░рдХрд╛рд░рдЪреЗ рдЗрдореНрдпреБрд▓реЗрдЯреЗрдб рдорд╢реАрди Olimex STM32 H405 рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ, FEAT_EVT (рдЙрдиреНрдирдд рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рди рдЯреНрд░реЕрдкреНрд╕), FEAT_FGT (рдлрд╛рдЗрди-рдЧреНрд░реЗрдиреНрдб рдЯреНрд░реЕрдкреНрд╕) рдЖрдгрд┐ AArch-32 ARC-8 рдкреНрд░рдХреНрд░рд┐рдпреЗрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ. рд╡рд┐рд╕реНрддрд╛рд░ M-рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ (рдорд╛рдпрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдкреНрд░реЛрдлрд╛рдИрд▓) рд╕рд╛рдареА gdbstub рдордзреНрдпреЗ рд╕рд┐рд╕реНрдЯрдо рдиреЛрдВрджрдгреАрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ.
  • RISC-V рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдПрдореБрд▓реЗрдЯрд░рдордзреНрдпреЗ OpenTitan, PolarFire рдЖрдгрд┐ OpenSBI рдпрд╛ рдПрдореНрдпреБрд▓реЗрдЯреЗрдб рдорд╢реАрдиреНрд╕рдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЕрджреНрдпрддрдирд┐рдд рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ. рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░реЛрд╕реЗрд╕рд░ рдЗрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рд╕реЗрдЯреНрд╕ (ISAs) рдЖрдгрд┐ рд╡рд┐рд╕реНрддрд╛рд░рд╛рдВрд╕рд╛рдареА рдЬреЛрдбрд▓реЗрд▓реЗ рд╕рдорд░реНрдерди: Smstateen, icount debugging counters, рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдореЛрдбрдордзреНрдпреЗ рдХреЕрд╢реЗ-рд╕рдВрдмрдВрдзрд┐рдд PMU рдЗрд╡реНрд╣реЗрдВрдЯреНрд╕, ACPI, Zawrs, Svadu, T-Head рдЖрдгрд┐ Zicond рд╡рд┐рд╕реНрддрд╛рд░.
  • рдПрдЪрдкреАрдкреАрдП рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдПрдореБрд▓реЗрдЯрд░рдордзреНрдпреЗ рдлрд┐рдб (рдлреНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рдЖрдпрдбреЗрдВрдЯрд┐рдлрд╛рдИ) рд╕реВрдЪрдирд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ 32-рдмрд┐рдЯ рдореЛрдбрдордзреНрдпреЗ рдЗрдореНрдпреВрд▓реЗрд╢рди рд╕реБрдзрд╛рд░рд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.
  • рд╕реБрд░рдХреНрд╖рд┐рдд KVM рдЕрддрд┐рдереА рд░рд┐рдмреВрдЯ рдХрд░рддрд╛рдирд╛ 390x рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдПрдореБрд▓реЗрдЯрд░ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдореЗрдорд░реА рдбрд┐рдЯреЗрдЪрдореЗрдВрдЯрд▓рд╛ рд╕рдорд░реНрдерди рджреЗрддреЗ. рдлреЙрд░рд╡рд░реНрдб рдХреЗрд▓реЗрд▓реНрдпрд╛ zPCI рдЙрдкрдХрд░рдгрд╛рдВрдЪреА рд╕реБрдзрд╛рд░рд┐рдд рд╣рд╛рддрд╛рд│рдгреА.
  • virtio-mem рдореЗрдХреЕрдирд┐рдЭрдо, рдЬреА рддреБрдореНрд╣рд╛рд▓рд╛ рд╣реЙрдЯ-рдкреНрд▓рдЧ рдЖрдгрд┐ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрдиреНрд╕рд╡рд░ рдореЗрдорд░реА рдЕрдирдкреНрд▓рдЧ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ, рд▓рд╛рдЗрд╡реНрд╣ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рджрд░рдореНрдпрд╛рди рдкреНрд░реАрдЕрд▓реЛрдХреЗрд╢рди рд▓рд╛рдЧреВ рдХрд░рддреЗ.
  • рд╕реНрдерд▓рд╛рдВрддрд░рд╛рд╕рд╛рдареА рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╕рдорд░реНрдерди VFIO (рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдлрдВрдХреНрд╢рди I/O) рдордзреНрдпреЗ рдЕрджреНрдпрддрдирд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ (рд╕реНрдерд▓рд╛рдВрддрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдЪреА рджреБрд╕рд░реА рдЖрд╡реГрддреНрддреА рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ).
  • qemu-nbd рдмреНрд▓реЙрдХ рдЙрдкрдХрд░рдгрд╛рдиреЗ TLS рд╡рд╛рдкрд░рддрд╛рдирд╛ TCP рдкреЗрдХреНрд╖рд╛ рдХрд╛рдордЧрд┐рд░реА рд╕реБрдзрд╛рд░рд▓реА рдЖрд╣реЗ.
  • OpenBSD рдЖрдгрд┐ NetBSD рд╕рд╛рдареА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдорд░реНрдерди рдЕрддрд┐рдереА рдПрдЬрдВрдЯрд▓рд╛ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛