8๊ฐ์๊ฐ์ ๊ฐ๋ฐ ๋์ ์คํ์์ค Xen 4.15 ํ์ดํผ๋ฐ์ด์ ๊ฐ ์ถ์๋์์ต๋๋ค. Amazon, Arm, Bitdefender, Citrix, EPAM Systems ๋ฑ์ ๊ธฐ์ ๋ค์ด ์ด๋ฒ ๋ฆด๋ฆฌ์ค์ ๊ธฐ์ฌํ์ต๋๋ค. Xen 4.15 ๋ฒ์ ์ ๋ฐ์ดํธ๋ 2022๋ 10์ 8์ผ๊น์ง, ์ทจ์ฝ์ ์์ ์ 2024๋ 4์ 8์ผ๊น์ง ๋ฐฐํฌ๋ ์์ ์ ๋๋ค.
Xen 4.15์ ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ:
- Xenstored ๋ฐ oxenstored ํ๋ก์ธ์ค๋ ์ด์ ์คํ์ ๋ผ์ด๋ธ ์ ๋ฐ์ดํธ๋ฅผ ์ง์ํ๋ฏ๋ก ํธ์คํธ ํ๊ฒฝ์ ๋ค์ ์์ํ์ง ์๊ณ ๋ ์ทจ์ฝ์ฑ ์์ ์ฌํญ์ ์ ๋ฌํ๊ณ ์ ์ฉํ ์ ์์ต๋๋ค.
- ํตํฉ ๋ถํ ์ด๋ฏธ์ง ์ง์์ด ์ถ๊ฐ๋์ด Xen ๊ตฌ์ฑ ์์๋ฅผ ํฌํจํ๋ ์์คํ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ด๋ฏธ์ง๋ ๋จ์ผ EFI ๋ฐ์ด๋๋ฆฌ ํ์ผ๋ก ํจํค์ง๋์ด GRUB๊ณผ ๊ฐ์ ์ค๊ฐ ๋ถํธ๋ก๋ ์์ด EFI ๋ถํ ๊ด๋ฆฌ์์์ ์คํ ์ค์ธ Xen ์์คํ ์ ์ง์ ๋ถํ ํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด ์ด๋ฏธ์ง์๋ ํ์ดํผ๋ฐ์ด์ , ํธ์คํธ ํ๊ฒฝ ์ปค๋(dom0), initrd, Xen KConfig, XSM ์ค์ , ์ฅ์น ํธ๋ฆฌ์ ๊ฐ์ Xen ๊ตฌ์ฑ ์์๊ฐ ํฌํจ๋ฉ๋๋ค.
- ARM ํ๋ซํผ์ dom0 ํธ์คํธ ์์คํ ์์ ์ฅ์น ๋ชจ๋ธ์ ์คํํ๋ ์คํ์ ๊ธฐ๋ฅ์ด ๊ตฌํ๋์ด ARM ๊ธฐ๋ฐ ๊ฒ์คํธ ์์คํ ์์ ์์์ ํ๋์จ์ด ์ฅ์น๋ฅผ ์๋ฎฌ๋ ์ด์ ํ ์ ์์ต๋๋ค. ๋ํ, ARM ์์คํ ์์ SMMUv3(์์คํ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ฅ์น) ์ง์์ด ๊ตฌํ๋์ด ARM ์์คํ ์์ ์ฅ์น ํจ์ค์ค๋ฃจ์ ๋ณด์๊ณผ ์์ ์ฑ์ด ํฅ์๋์์ต๋๋ค.
- Intel Broadwell CPU์ ๋์ ๋ Intel Processor Trace(IPT) ํ๋์จ์ด ์ถ์ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ฌ ๊ฒ์คํธ ์์คํ ์ ๋ฐ์ดํฐ๋ฅผ ํธ์คํธ ์์คํ ์์ ์คํ๋๋ ๋๋ฒ๊น ๋๊ตฌ๋ก ๋ด๋ณด๋ผ ์ ์๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด VMI Kernel Fuzzer ๋๋ DRAKVUF Sandbox๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- 64๊ฐ ์ด์์ VCPU๋ฅผ ์ฌ์ฉํ์ฌ Windows ๊ฒ์คํธ๋ฅผ ์คํํ๊ธฐ ์ํ Viridian(Hyper-V) ํ๊ฒฝ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- PVH ๋ฐ HVM ํ๊ฒฝ์์ ์์ ๋์ง ์์ ๋ฐ๊ฐ์ํ ๊ฒ์คํธ(PV)๋ฅผ ์คํํ๋ ๋ฐ ์ฌ์ฉ๋๋ PV Shim ์ฌ(Shim)์ด ํ๋ํ๋์ด ๊ธฐ์กด ๊ฒ์คํธ๊ฐ ๋์ฑ ์๊ฒฉํ ๊ฒฉ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ ์์ ํ ํ๊ฒฝ์์ ์คํ๋ ์ ์๋๋ก ์ง์๋ฉ๋๋ค. ์ ๋ฒ์ ์ HVM ์ ์ฉ ํ๊ฒฝ์์ PV ๊ฒ์คํธ ์คํ์ ๋ํ ์ง์์ ๊ฐ์ ํฉ๋๋ค. HVM ๊ด๋ จ ์ฝ๋๋ฅผ ์ค์์ผ๋ก์จ ์ฌ์ ํฌ๊ธฐ๊ฐ ์ค์์ต๋๋ค.
- ARM ์์คํ ์์ VirtIO ๋๋ผ์ด๋ฒ์ ๊ธฐ๋ฅ์ด ํ์ฅ๋์์ต๋๋ค. ARM ์์คํ ์ฉ ๊ตฌํ ๋ฐฉ์์ด ์ ์๋์์ต๋๋ค. ์๋ฒ IOREQ๋ ํฅํ VirtIO ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ I/O ๊ฐ์ํ๋ฅผ ํฅ์์ํค๋ ๋ฐ ์ฌ์ฉ๋ ์์ ์ ๋๋ค. ARM์ฉ VirtIO ๋ธ๋ก ์ฅ์น์ ์ฐธ์กฐ ๊ตฌํ์ด ์ถ๊ฐ๋์์ผ๋ฉฐ, ARM ๊ธฐ๋ฐ ๊ฒ์คํธ ์์คํ ์ VirtIO ๋ธ๋ก ์ฅ์น๋ฅผ ์ ๋ฌํ ์ ์๋ ๊ธฐ๋ฅ์ด ์ ๊ณต๋ฉ๋๋ค. ARM์์์ PCIe ๊ฐ์ํ ์ง์์ด ํ์ฑํ๋๊ธฐ ์์ํ์ต๋๋ค.
- RISC-V ํ๋ก์ธ์์ฉ Xen ํฌํธ ๊ตฌํ ์์ ์ด ๊ณ์ ์งํ ์ค์ ๋๋ค. ํธ์คํธ ๋ฐ ๊ฒ์คํธ ์์คํ ์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ ์ฝ๋์ RISC-V ์ํคํ ์ฒ์ ํนํ๋ ์ฝ๋๊ฐ ํ์ฌ ๊ฐ๋ฐ ์ค์ ๋๋ค.
- Zephyr ํ๋ก์ ํธ์ ํ๋ ฅํ์ฌ ๋ณด์ ๋ฌธ์ ์ํ์ ์ค์ด๊ธฐ ์ํด MISRA_C ํ์ค์ ๊ธฐ๋ฐ์ผ๋ก ํ ์ผ๋ จ์ ์ฝ๋ฉ ์๊ตฌ ์ฌํญ ๋ฐ ์ง์นจ์ด ๊ฐ๋ฐ๋๊ณ ์์ต๋๋ค. ์ ์ ๋ถ์๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ์์ฑ๋ ๊ท์น์ ๋ถ์ผ์น๋ฅผ ๊ฐ์งํฉ๋๋ค.
- ์ ์ ๋ฐ์ดํฐ ์ธํธ์ ์คํ์ ์ฌ์ฉ์ ์ ์ํ ์ ์๋ ์ ์ฐํ ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ๋ชฉํ๋ก ํ๋ Hyperlaunch ์ด๋์ ํฐ๋ธ๊ฐ ๋์ ๋์์ต๋๋ค. ๊ฐ์ ๊ธฐ๊ธฐ ์์คํ ๋ถํ ์ค์ ๋ฐ์ํฉ๋๋ค. ์ด ๊ณํ์ ์๋ฒ ๋ถํ ๊ณผ์ ์ด๊ธฐ์ ๊ฐ์ ๋จธ์ ์ ์คํํ ๋ dom0 ํ๊ฒฝ์ ๋ฐฐํฌํ ํ์์ฑ์ ์์ ๋ domB(๋ถํ ๋๋ฉ์ธ, dom0less) ๊ฐ๋ ์ ์ ์ํ์ต๋๋ค.
- ์ง์์ ํตํฉ ์์คํ ์ ์ด์ Alpine Linux์ Ubuntu 20.04์์ Xen ํ ์คํธ๋ฅผ ์ง์ํฉ๋๋ค. CentOS 6 ํ ์คํธ๋ ์ค๋จ๋์์ต๋๋ค. QEMU ๊ธฐ๋ฐ dom0/domU ํ ์คํธ๊ฐ ARM์ฉ ์ง์์ ํตํฉ ํ๊ฒฝ์ ์ถ๊ฐ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru
