QEMU 10.0.0 ํ๋ก์ ํธ์ ์ถ์๊ฐ ๋ฐํ๋์์ต๋๋ค. ์๋ฎฌ๋ ์ดํฐ๋ก์ QEMU๋ฅผ ์ฌ์ฉํ๋ฉด ์์ ํ ๋ค๋ฅธ ์ํคํ ์ฒ๋ฅผ ์ฌ์ฉํ๋ ์์คํ ์์ ํ๋์ ํ๋์จ์ด ํ๋ซํผ์ฉ์ผ๋ก ์ปดํ์ผ๋ ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด x86 ํธํ PC์์ ARM ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ ์ ์์ต๋๋ค. QEMU์ ๊ฐ์ํ ๋ชจ๋์์๋ CPU์์ ๋ช ๋ น์ ์ง์ ์คํํ๊ณ Linux์ Xen ํ์ดํผ๋ฐ์ด์ ๋ KVM ๋ชจ๋ ๋๋ Linux์ NVMM ๋ชจ๋์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๊ฒฉ๋ฆฌ๋ ํ๊ฒฝ์์์ ์ฝ๋ ์คํ ์ฑ๋ฅ์ด ํ๋์จ์ด ์์คํ ์ ๊ฐ๊น์ต๋๋ค. NetBSD.
์ด ํ๋ก์ ํธ๋ ์๋ x86 ํ๋ซํผ์ฉ์ผ๋ก ๋น๋๋ Linux ์คํ ํ์ผ์ด ๋น x86 ์ํคํ ์ฒ์์ ์คํ๋ ์ ์๋๋ก Fabrice Bellard๊ฐ ๋ง๋ค์์ต๋๋ค. ์๋ ๊ฐ์ ๊ฐ๋ฐ์ ํตํด 14๊ฐ์ ํ๋์จ์ด ์ํคํ ์ฒ์ ๋ํ ์์ ํ ์๋ฎฌ๋ ์ด์ ์ง์์ด ์ถ๊ฐ๋์์ผ๋ฉฐ ์๋ฎฌ๋ ์ดํธ๋ ํ๋์จ์ด ์ฅ์น์ ์๋ 400๊ฐ๋ฅผ ์ด๊ณผํ์ต๋๋ค. ๋ฒ์ 10.0์ ์ค๋นํ๋ฉด์ 2800๋ช ์ ๊ฐ๋ฐ์๊ฐ 211๊ฐ ์ด์์ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ์ต๋๋ค.
QEMU 10.0์ ์ถ๊ฐ๋ ์ฃผ์ ๊ฐ์ ์ฌํญ:
- virtio-scsi ๋๋ผ์ด๋ฒ๋ ๊ฐ์ SCSI ์ปจํธ๋กค๋ฌ(SCSI ํธ์คํธ ๋ฒ์ค ์ด๋ํฐ)๋ฅผ ์ ๊ณตํฉ๋๋ค. ๊ฐ์ ๊ธฐ๊ธฐ๋ค์ค ๋ ๋ฒจ ํ ์์คํ (๋ฉํฐํ) ์ง์์ด ์ถ๊ฐ๋์ด ์๋ก ๋ค๋ฅธ ๋ธ๋ก ์ฅ์น์ ๋ํ ํ๋ฅผ ๋ถ๋ฆฌํ ์ ์์ผ๋ฏ๋ก ๋ฉํฐ์ฝ์ด ์์คํ ์์ ๋ฉํฐ์ค๋ ๋ ์ก์ธ์ค๋ฅผ ์ง์ํฉ๋๋ค(๋จ์ผ ๋๋ผ์ด๋ธ์ ๋ํ ์ฌ๋ฌ ํ๋ฅผ ์๋ก ๋ค๋ฅธ I/O ์ค๋ ๋์์ ์ฒ๋ฆฌํ ์ ์์). ๊ฐ์ ๋ธ๋ก ์ฅ์น ๋๋ผ์ด๋ฒ(virtio-blk)์ ๋น๊ตํ์ ๋ ๊ฐ์ SCSI ์ปจํธ๋กค๋ฌ๋ ์ฑ๋ฅ์ด ์ฝ๊ฐ ๋จ์ด์ง์ง๋ง 28๊ฐ ์ด์์ ๋๋ผ์ด๋ธ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- VFIO(๊ฐ์ ํจ์ I/O)๋ 11์ธ๋(Rocket Lake) ๋ฐ 12์ธ๋(Alder Lake) Intel ํ๋ก์ธ์์ ์ฌ์ฉ๋๋ ํตํฉ GPU์ ๋ํ IGD(ํตํฉ ๊ทธ๋ํฝ ์ฅ์น) ํจ์ค์ค๋ฃจ ์ง์์ ๊ฐ์ ํ์ต๋๋ค. ์ด์ ATI GPU(x550)์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. PCI PM(์ ์ ๊ด๋ฆฌ)์ ๋ํ ๊ธฐ๋ณธ ์ง์์ด ๊ตฌํ๋์์ต๋๋ค.
- ์ ํ๋ฆฌ์ผ์ด์ ์ด QEMU๋ฅผ ์ ์ดํ ์ ์๋๋ก ํ๋ QEMU ๋จธ์ ํ๋กํ ์ฝ(QMP)์ ๋ํ ์ค๋ช ์๊ฐ ์๋นํ ๊ฐ์ ๋๊ณ ํ์ฅ๋์์ต๋๋ค.
- ์๋ก์ด ๋ผ์ด๋ธ ๋ง์ด๊ทธ๋ ์ด์ ๋ชจ๋ "cpr-transfer"(CheckPoint ๋ฐ Restart)๊ฐ ์ถ๊ฐ๋์ด, ๋์ผํ ํธ์คํธ์์ ์คํ๋๋ ์๋ก์ด QEMU ์ธ์คํด์ค๋ก ๊ฒ์คํธ ์์คํ ์ ์ด๋ํ ์ ์์ต๋๋ค. ์ด ๋ชจ๋๋ ๋ด์ฉ์ ๋ณต์ฌํ์ง ์๊ณ ๊ฒ์คํธ ์์คํ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ก์ด QEMU์ ๊ฐ์ ์ฃผ์ ๊ณต๊ฐ์ ๋งคํํ์ฌ ์ค๋จ ์๊ฐ์ ์ต์ํํฉ๋๋ค.
- ๊ฒ์คํธ์ ํ๋์จ์ด ๊ฐ์ ๊ทธ๋ํฝ์ ์ํด macOS์์ ์ ๊ณต๋๋ ParavirtualizedGraphics ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ 'apple-gfx-pci' ๋ฐ 'apple-gfx-mmio' ๊ทธ๋ํฝ ์ฅ์น๋ฅผ ์ถ๊ฐํ์ต๋๋ค. ์ฒซ ๋ฒ์งธ ๋๋ผ์ด๋ฒ๋ x86-64 ์ฅ์น์์ ์ฌ์ฉํ๋๋ก ์ค๊ณ๋์๊ณ , ๋ ๋ฒ์งธ ๋๋ผ์ด๋ฒ๋ ARM64์ฉ์ผ๋ก ์ค๊ณ๋์์ต๋๋ค.
- x86 ์ํคํ ์ฒ ์๋ฎฌ๋ ์ดํฐ๋ ์ด์ Intel Xeon Clearwater Forest์ Sierra Forest v2 ํ๋ก์ธ์ ๋ชจ๋ธ์ ์ง์ํฉ๋๋ค. ๋ฌธ์์ด ๋ฐ์ดํฐ ์กฐ์ ๋ช ๋ น์ ์๋ฎฌ๋ ์ด์ ์ด ๊ฐ์ํ๋์์ต๋๋ค.
- ARM ์ํคํ ์ฒ ์๋ฎฌ๋ ์ดํฐ๋ ์ด์ NPCM8445 ํ๊ฐํ ๋ฐ i.MX 8M Plus EVK ๋ณด๋๋ฅผ ์ง์ํฉ๋๋ค. FEAT_AFP, FEAT_RPRES ๋ฐ FEAT_XS ํ์ฅ๊ณผ EL2 ๋ฌผ๋ฆฌ์ ๋ฐ ๊ฐ์ ํ์ด๋จธ์ ์๋ฎฌ๋ ์ด์ ์ด ์ถ๊ฐ๋์์ต๋๋ค. Arm PXA2xx CPU ๋ฐ iwMMXt ๋ช ๋ น์ด ์๋ฎฌ๋ ์ด์ ์ ๋ํ ์ง์์ด ์ค๋จ๋์์ต๋๋ค.
- RISC-V ์ํคํ ์ฒ ์๋ฎฌ๋ ์ดํฐ๋ Microblaze V ๋ณด๋, Ascalon CPU ๋ฐ RV64 Xiangshan Nanhu CPU์ ์๋ฎฌ๋ ์ด์ ์ ๊ตฌํํฉ๋๋ค. 'svukte', 'ssstateen', 'smrnmi', 'smdbltrp'/'ssdbltrp', 'supm', 'sspm' ๋ช ๋ น ์ธํธ ์ํคํ ์ฒ ํ์ฅ, IOMMU ๋ณํ ํ๊ทธ ๋ฐ riscv-iommu-sys ์ฅ์น์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- HPPA ์ํคํ ์ฒ ์๋ฎฌ๋ ์ดํฐ๋ Diva GSP BMC ๋ณด๋์ ์๋ฎฌ๋ ์ด์ ์ ์ ๊ณตํฉ๋๋ค. SeaBIOS-hppa ํ์จ์ด๊ฐ ๋ฒ์ 18๋ก ์ ๋ฐ์ดํธ๋์์ต๋๋ค. ๋ฐฉ์ก ์๋๊ฐ ํฅ์๋์์ต๋๋ค. ๊ฐ์ CPU ์ฌ์ค์ ์ ์ํ ๊ฐ์ ๋ ์ฝ๋์ ๋๋ค. 64๋นํธ ์์คํ ์์๋ ์ต๋ 256GB์ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ๋ฅผ ๊ฐ์ถ ๊ตฌ์ฑ์ ์๋ฎฌ๋ ์ด์ ์ด ์ ๊ณต๋ฉ๋๋ค.
- LoongArch ์ํคํ ์ฒ ์๋ฎฌ๋ ์ดํฐ๊ฐ ์ด์ CPU ํซํ๋ฌ๊น ์ ์ง์ํฉ๋๋ค. ๋ฐ๊ฐ์ํ๋ IPI(ํ๋ก์ธ์ ๊ฐ ์ธํฐ๋ฝํธ)๊ฐ ๊ตฌํ๋์์ต๋๋ค. ํ์ดํผ๋ฐ์ด์ ๋ฆฌ์์ค ํ ๋น ์๊ฐ ์ด๊ณผ ์ถ์ ๊ธฐ๋ฅ์ด ๊ตฌํ๋์์ต๋๋ค. KVM์ธ๋ถ ์ธํฐ๋ฝํธ(extioi)์ ๊ฐ์ ๋ผ์ฐํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- s390x ์ํคํ ์ฒ ์๋ฎฌ๋ ์ดํฐ๋ 17์ธ๋ ๋ฉ์ธํ๋ ์ CPU์ ๋ํ ์ง์์ ์ถ๊ฐํ๊ณ virtio-mem ์ง์์ ๊ตฌํํฉ๋๋ค. ์ฑ๋ฅ์ ํฅ์์ํค๊ธฐ ์ํด IOMMU๋ฅผ ์ฐํํ์ฌ PCI ์ฅ์น์ ์ํธ ์์ฉํ๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru
