Genode Project์—์„œ Sculpt 19.07 ๋ฒ”์šฉ OS ๋ฆด๋ฆฌ์Šค๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ๋ฐฉํ˜• ๋งˆ์ดํฌ๋กœ์ปค๋„ ์šด์˜ ์ฒด์ œ ๊ฐœ๋ฐœ์ž ์ œ๋…ธ๋“œ OS ํ”„๋ ˆ์ž„์›Œํฌ ํ˜•์„ฑ๋œ ์šด์˜ ์ฒด์ œ ๋ฆด๋ฆฌ์Šค ์กฐ๊ฐ 19.07. Sculpt ํ”„๋กœ์ ํŠธ์˜ ์ผํ™˜์œผ๋กœ Genode ๊ธฐ์ˆ ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž๊ฐ€ ์ผ์ƒ์ ์ธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์šฉ ์šด์˜ ์ฒด์ œ๊ฐ€ ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์†Œ์Šค ํ™•์‚ฐ AGPLv3์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์šด๋กœ๋“œ ๊ฐ€๋Šฅ LiveUSB ์ด๋ฏธ์ง€, ํฌ๊ธฐ๋Š” 24MB์ž…๋‹ˆ๋‹ค. VT-d ๋ฐ VT-x ํ™•์žฅ์ด ํ™œ์„ฑํ™”๋œ Intel ํ”„๋กœ์„ธ์„œ ๋ฐ ๊ทธ๋ž˜ํ”ฝ์ด ํƒ‘์žฌ๋œ ์‹œ์Šคํ…œ์—์„œ์˜ ์ž‘๋™์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ์—๋Š” ์ผ๋ฐ˜์ ์ธ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” Leitzentrale ๊ทธ๋ž˜ํ”ฝ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ํ•จ๊ป˜ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. GUI์˜ ์™ผ์ชฝ ์ƒ๋‹จ์—๋Š” ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ, ์ €์žฅ ์žฅ์น˜ ์—ฐ๊ฒฐ ๋ฐ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ์„ค์ •์„ ์œ„ํ•œ ๋„๊ตฌ๊ฐ€ ํฌํ•จ๋œ ๋ฉ”๋‰ด๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ค‘์•™์—๋Š” ์‹œ์Šคํ…œ ์ฑ„์šฐ๊ธฐ๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ๊ตฌ์„ฑ๊ธฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œ๊ณต ์‹œ์Šคํ…œ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•˜๋Š” ๊ทธ๋ž˜ํ”„ ํ˜•ํƒœ์˜ ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ๋Œ€ํ™”ํ˜• ๋ฐฉ์‹์œผ๋กœ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ž„์˜๋กœ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€ํ•˜์—ฌ ์‹œ์Šคํ…œ ํ™˜๊ฒฝ์ด๋‚˜ ๊ฐ€์ƒ ๋จธ์‹ ์˜ ๊ตฌ์„ฑ์„ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Genode Project์—์„œ Sculpt 19.07 ๋ฒ”์šฉ OS ๋ฆด๋ฆฌ์Šค๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๋Š” ์–ธ์ œ๋“ ์ง€ ์ฝ˜์†” ๊ด€๋ฆฌ ๋ชจ๋“œ๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์–ด ๊ด€๋ฆฌ์— ๋” ํฐ ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ฐ์Šคํฌํ†ฑ์€ Linux ๊ฐ€์ƒ ๋จธ์‹ ์—์„œ TinyCore Linux ๋ฐฐํฌํŒ์„ ์‹คํ–‰ํ•˜์—ฌ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ™˜๊ฒฝ์—์„œ๋Š” Firefox ๋ฐ Aurora ๋ธŒ๋ผ์šฐ์ €, Qt ๊ธฐ๋ฐ˜ ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ ๋ฐ ๋‹ค์–‘ํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ช…๋ น์ค„ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด noux ํ™˜๊ฒฝ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

์ƒˆ๋กœ์šด ๋ฆด๋ฆฌ์Šค ๋†€๋ž„ ๋งŒํ•œ ์ง€์› ์‹œํ–‰ ๋ถ€ํŽ˜๋ผ ์˜ค๋ธŒ๋ฉ”๋‚˜ ํ„ฐ๋ฏธ๋„, Qt5 ๊ธฐ๋ฐ˜ GUI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ๊ฐ€์ƒ ๋จธ์‹  ๊ฐ„์— ํ…์ŠคํŠธ๋ฅผ ๋ณต์‚ฌํ•˜๊ณ  ๋ถ™์—ฌ๋„ฃ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ƒ์‚ฐ์„ฑ์„ ๋†’์ด๊ณ  ์ธํ„ฐํŽ˜์ด์Šค์˜ ๋ฐ˜์‘์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ์ž‘์—…๋„ ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. XNUMX์›” ํ”Œ๋žซํผ ์—…๋ฐ์ดํŠธ์— ๋„์ž…๋œ ๊ฐœ์„  ์‚ฌํ•ญ ํฌํ•จ
์ปค๋„ ๋…๋ฆฝ์  ๊ฐ€์ƒํ™” ์ธํ„ฐํŽ˜์ด์Šค์™€ ๊ฐ™์€ Genode, AARCH64 ์•„ํ‚คํ…์ฒ˜ ์ง€์›, ๊ธฐ๋ณธ์ ์œผ๋กœ C++17 ํ‘œ์ค€ ์‚ฌ์šฉ์œผ๋กœ์˜ ์ „ํ™˜, GCC 8.3 ๊ธฐ๋ฐ˜์˜ ์ƒˆ๋กœ์šด ํˆดํ‚ท ๋ฐ FreeBSD 12์˜ libc ๊ธฐ๋ฐ˜ ์—…๋ฐ์ดํŠธ๋œ ๋Ÿฐํƒ€์ž„.

Genode๋ฅผ ์ƒ๊ธฐ์‹œ์ผœ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ์ œ๊ณต Linux ์ปค๋„(32๋น„ํŠธ ๋ฐ 64๋น„ํŠธ) ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” ๋งž์ถคํ˜• ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ํ†ตํ•ฉ ์ธํ”„๋ผ ๋˜๋Š” ๋งˆ์ดํฌ๋กœ์ปค๋„ NOVA(๊ฐ€์ƒํ™” x86), seL4(x86_32, x86_64, ARM), Muen(x86_64), Fiasco.OC(x86_32, x86_64, ARM), L4ka::Pistachio(IA32, PowerPC), OKL4, L4/Fiasco(IA32, AMD64, ARM) ๋ฐ ARM ๋ฐ RISC-V ํ”Œ๋žซํผ์šฉ ์ปค๋„์„ ์ง์ ‘ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. Fiasco.OC ๋งˆ์ดํฌ๋กœ์ปค๋„ ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” ๋ฐ˜๊ฐ€์ƒํ™” Linux ์ปค๋„ L4Linux๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Genode์—์„œ ์ผ๋ฐ˜ Linux ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. L4Linux ์ปค๋„์€ ํ•˜๋“œ์›จ์–ด์™€ ์ง์ ‘ ์ž‘๋™ํ•˜์ง€ ์•Š์ง€๋งŒ ๊ฐ€์ƒ ๋“œ๋ผ์ด๋ฒ„ ์„ธํŠธ๋ฅผ ํ†ตํ•ด Genode ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์–‘ํ•œ Linux ๋ฐ BSD ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ Genode์šฉ์œผ๋กœ ํฌํŒ…๋˜์—ˆ์œผ๋ฉฐ Gallium3D๊ฐ€ ์ง€์›๋˜์—ˆ์œผ๋ฉฐ Qt, GCC ๋ฐ WebKit์ด ํ†ตํ•ฉ๋˜์—ˆ์œผ๋ฉฐ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ Linux/Genode ํ™˜๊ฒฝ์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. NOVA ๋งˆ์ดํฌ๋กœ์ปค๋„ ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” VirtualBox ํฌํŠธ๊ฐ€ ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์ˆ˜์˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด OS ์ˆ˜์ค€์—์„œ ๊ฐ€์ƒํ™”๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋งˆ์ดํฌ๋กœ ์ปค๋„ ๋ฐ Noux ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ์‹คํ–‰๋˜๋„๋ก ์กฐ์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์‹๋˜์ง€ ์•Š์€ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด ๊ฐœ๋ณ„ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ˆ˜์ค€์—์„œ ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ๋งŒ๋“œ๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ˜๊ฐ€์ƒํ™”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€์ƒ Linux ํ™˜๊ฒฝ์—์„œ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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