OpenBSD๋Š” RISC-V ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ดˆ๊ธฐ ์ง€์›์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

OpenBSD๋Š” RISC-V ์•„ํ‚คํ…์ฒ˜์šฉ ํฌํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ฑ„ํƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง€์›์€ ํ˜„์žฌ OpenBSD ์ปค๋„๋กœ ์ œํ•œ๋˜์–ด ์žˆ์œผ๋ฉฐ ์‹œ์Šคํ…œ์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๋ ค๋ฉด ์—ฌ์ „ํžˆ ์ผ๋ถ€ ์ž‘์—…์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ํ˜•ํƒœ์—์„œ๋Š” OpenBSD ์ปค๋„์ด ์ด๋ฏธ QEMU ๊ธฐ๋ฐ˜ RISC-V ์—๋ฎฌ๋ ˆ์ดํ„ฐ์— ๋กœ๋“œ๋˜์–ด ์ œ์–ด๊ถŒ์„ init ํ”„๋กœ์„ธ์Šค๋กœ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ–ฅํ›„ ๊ณ„ํš์—๋Š” ๋‹ค์ค‘ ์ฒ˜๋ฆฌ(SMP) ์ง€์› ๊ตฌํ˜„, ์‹œ์Šคํ…œ์ด ๋‹ค์ค‘ ์‚ฌ์šฉ์ž ๋ชจ๋“œ๋กœ ๋ถ€ํŒ…๋˜๋„๋ก ๋ณด์žฅํ•˜๊ณ  ์‚ฌ์šฉ์ž ๊ณต๊ฐ„ ๊ตฌ์„ฑ ์š”์†Œ(libc, libcompiler_rt)๋ฅผ ์ ์šฉํ•˜๋Š” ๊ฒƒ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

RISC-V๋Š” ๋กœ์—ดํ‹ฐ๋‚˜ ์‚ฌ์šฉ ์กฐ๊ฑด์„ ๋ถ€๊ณผํ•˜์ง€ ์•Š๊ณ ๋„ ์ž„์˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์šฉ์œผ๋กœ ๋งˆ์ดํฌ๋กœํ”„๋กœ์„ธ์„œ๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐฉ์ ์ด๊ณ  ์œ ์—ฐํ•œ ๊ธฐ๊ณ„ ๋ช…๋ น ์‹œ์Šคํ…œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. RISC-V๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์™„์ „ํžˆ ๊ฐœ๋ฐฉํ˜• SoC ๋ฐ ํ”„๋กœ์„ธ์„œ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ RISC-V ์‚ฌ์–‘์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์–‘ํ•œ ๋ฌด๋ฃŒ ๋ผ์ด์„ผ์Šค(BSD, MIT, Apache 2.0)์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ํšŒ์‚ฌ์™€ ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ์ˆ˜์‹ญ ๊ฐ€์ง€ ๋ณ€ํ˜• ๋งˆ์ดํฌ๋กœํ”„๋กœ์„ธ์„œ ์ฝ”์–ด, SoC ๋ฐ ์ด๋ฏธ ์ƒ์‚ฐ๋œ ์นฉ์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณ ํ’ˆ์งˆ RISC-V๋ฅผ ์ง€์›ํ•˜๋Š” ์šด์˜ ์ฒด์ œ์—๋Š” Linux(Glibc 2.27, binutils 2.30, gcc 7 ๋ฐ Linux ์ปค๋„ 4.15 ๋ฆด๋ฆฌ์Šค ์ดํ›„ ์ œ๊ณต) ๋ฐ FreeBSD(์ตœ๊ทผ ๋‘ ๋ฒˆ์งธ ์ˆ˜์ค€์˜ ์ง€์› ์ œ๊ณต)๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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