์ธํ…”, ModernFW ๊ฐœ๋ฐฉํ˜• ํŽŒ์›จ์–ด ๋ฐ Rust ํ•˜์ดํผ๋ฐ”์ด์ € ๊ฐœ๋ฐœ

์ธํ…” ์ œ์‹œ ์š”์ฆ˜ ์—ด๋ฆฌ๋Š” OSTS(Open Source Technology Summit) ์ปจํผ๋Ÿฐ์Šค์—์„œ ๋ช‡ ๊ฐ€์ง€ ์ƒˆ๋กœ์šด ์‹คํ—˜์  ์˜คํ”ˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ์ด๋‹ˆ์…”ํ‹ฐ๋ธŒ์˜ ์ผํ™˜์œผ๋กœ ๋ชจ๋˜FW UEFI ๋ฐ BIOS ํŽŒ์›จ์–ด๋ฅผ ์œ„ํ•œ ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๊ณ  ์•ˆ์ „ํ•œ ๋Œ€์ฒดํ’ˆ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ์ž‘์—…์ด ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ๋Š” ๊ฐœ๋ฐœ ์ดˆ๊ธฐ ๋‹จ๊ณ„์— ์žˆ์ง€๋งŒ ์ด ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ์ œ์•ˆ๋œ ํ”„๋กœํ† ํƒ€์ž…์€ ์ด๋ฏธ ์šด์˜ ์ฒด์ œ ์ปค๋„์˜ ๋กœ๋”ฉ์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์ถฉ๋ถ„ํ•œ ๊ธฐํšŒ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ๊ฐœ๋ฐœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ํ‹ฐ์•„๋…ธ์ฝ”์–ด (๊ฐœ๋ฐฉํ˜• UEFI ๊ตฌํ˜„) ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์—…์ŠคํŠธ๋ฆผ์œผ๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

ModernFW๋Š” ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์šฉ ์„œ๋ฒ„์™€ ๊ฐ™์€ ์ˆ˜์ง ํ†ตํ•ฉ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ์— ์ ํ•ฉํ•œ ์ตœ์†Œํ•œ์˜ ํŽŒ์›จ์–ด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์‹œ์Šคํ…œ์—์„œ๋Š” ๊ธฐ์กด UEFI ํŽŒ์›จ์–ด์— ๋‚ด์žฌ๋œ ๋ฒ”์šฉ ์‚ฌ์šฉ์„ ์œ„ํ•œ ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ ์ฝ”๋“œ ๋ฐ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ํŽŒ์›จ์–ด์—์„œ ์œ ์ง€ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ค‘๋ณต ์ฝ”๋“œ๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ๊ณต๊ฒฉ ๋ฐ ์˜ค๋ฅ˜์— ๋Œ€ํ•œ ๊ฐ€๋Šฅํ•œ ๋ฒกํ„ฐ ์ˆ˜๊ฐ€ ์ค„์–ด๋“ค์–ด ๋ณด์•ˆ ๋ฐ ํšจ์œจ์„ฑ์— ๊ธ์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ํŠนํžˆ, ์šด์˜ ์ฒด์ œ ์ปจํ…์ŠคํŠธ์—์„œ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํŽŒ์›จ์–ด์—์„œ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์žฅ์น˜ ์œ ํ˜• ๋ฐ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ง€์›์„ ์ œ๊ฑฐํ•˜๋Š” ์ž‘์—…์ด ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค.

ํ•„์š”ํ•œ ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋งŒ ๋‚จ์•„ ์žˆ๊ณ  ์—๋ฎฌ๋ ˆ์ด์…˜ ๋ฐ ๊ฐ€์ƒ ์žฅ์น˜์— ๋Œ€ํ•œ ์ตœ์†Œํ•œ์˜ ์ง€์›๋งŒ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•  ๋•Œ๋งˆ๋‹ค OS ์ˆ˜์ค€์—์„œ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—…์€ ์šด์˜ ์ฒด์ œ ์ˆ˜์ค€์œผ๋กœ ์ด๋™๋ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ์˜ ์ผ๋ถ€๋Š” ํŽŒ์›จ์–ด์™€ OS ์ปค๋„ ๊ฐ„์— ๊ณต์œ ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์‹ ๋ฐ ๋งž์ถคํ˜• ๊ตฌ์„ฑ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ์•„ํ‚คํ…์ฒ˜ ์ง€์›์€ ํ˜„์žฌ x86-64 ์‹œ์Šคํ…œ์œผ๋กœ ์ œํ•œ๋˜๋ฉฐ ๋ถ€ํŒ… ๊ฐ€๋Šฅํ•œ OS์—์„œ Linux๋งŒ ์ง€์›๋ฉ๋‹ˆ๋‹ค(ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋‹ค๋ฅธ OS์— ๋Œ€ํ•œ ์ง€์›์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Œ).

๋™์‹œ์— ์ธํ…” ์ œ์‹œ ๊ณ„ํš ํด๋ผ์šฐ๋“œ ํ•˜์ดํผ ๋ฐ”์ด์ €, ๊ตฌ์„ฑ ์š”์†Œ ๊ธฐ๋ฐ˜ ํ•˜์ดํผ๋ฐ”์ด์ € ์ƒ์„ฑ์„ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ณต๋™ ํ”„๋กœ์ ํŠธ ๋…น-VMM, Intel ์™ธ์—๋„ Alibaba, Amazon, Google ๋ฐ Red Hat๋„ ์ฐธ์—ฌํ•ฉ๋‹ˆ๋‹ค. Rust-VMM์€ Rust ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ์ž‘์—…๋ณ„ ํ•˜์ดํผ๋ฐ”์ด์ €๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Cloud Hypervisor๋Š” KVM ์œ„์—์„œ ์‹คํ–‰๋˜๊ณ  ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ž‘์—…์— ์ตœ์ ํ™”๋œ ๋†’์€ ์ˆ˜์ค€์˜ ๊ฐ€์ƒ ๋จธ์‹  ๋ชจ๋‹ˆํ„ฐ(VMM)๋ฅผ ์ œ๊ณตํ•˜๋Š” ํ•˜์ดํผ๋ฐ”์ด์ € ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. Intel์˜ ์ดํ•ด ๊ด€๊ณ„์—์„œ Cloud Hypervisor์˜ ์ฃผ์š” ์ž‘์—…์€ virtio ๊ธฐ๋ฐ˜ ๋ฐ˜๊ฐ€์ƒํ™” ์žฅ์น˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์‹  Linux ๋ฐฐํฌํŒ์„ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์—๋ฎฌ๋ ˆ์ด์…˜ ์ง€์›์ด ์ตœ์†Œํ™”๋ฉ๋‹ˆ๋‹ค(๋ฐ˜๊ฐ€์ƒํ™”์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค). ํ˜„์žฌ x86_64 ์‹œ์Šคํ…œ๋งŒ ์ง€์›๋˜์ง€๋งŒ AArch64 ์ง€์›์ด ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค. ๋ถˆํ•„์š”ํ•œ ์ฝ”๋“œ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  CPU, ๋ฉ”๋ชจ๋ฆฌ, PCI, NVDIMM์˜ ๊ตฌ์„ฑ์„ ๋‹จ์ˆœํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์กฐ๋ฆฝ ๋‹จ๊ณ„์—์„œ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์„œ๋ฒ„ ๊ฐ„์— ๊ฐ€์ƒ ๋จธ์‹ ์„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ธ๊ธ‰๋œ ์ฃผ์š” ์ž‘์—… ์ค‘ ๋†’์€ ์‘๋‹ต์„ฑ, ๋‚ฎ์€ ๋ฉ”๋ชจ๋ฆฌ ์†Œ๋น„, ๊ณ ์„ฑ๋Šฅ ๋ฐ ๊ฐ€๋Šฅํ•œ ๊ณต๊ฒฉ ๋ฒกํ„ฐ ๊ฐ์†Œ.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€