Xen ํ•˜์ดํผ๋ฐ”์ด์ € 4.15 ๋ฆด๋ฆฌ์Šค

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