NetBSD ํ๋ก์ ํธ
twm ์ฐฝ ๊ด๋ฆฌ์๋ ์ง๋ 20๋ ๋์ NetBSD์์ ์ ๊ณต๋์์ผ๋ฉฐ ์ค๋๋ ์ ํ๊ฒฝ์์๋ ๊ตฌ์์ผ๋ก ๋ณด์ ๋๋ค. ๊ธฐ๋ณธ twm์ ๋ํ ์ฌ๋๋ค์ ๋ถ์ ์ ์ธ ๋ฐ์์ผ๋ก ์ธํด ๊ฐ๋ฐ์๋ ๊ธฐ๋ณธ ์ ธ์ ๋ค์ ๊ณ ๋ คํ๊ณ ๋ ๊ฐ๋ ฅํ CTWM ์ฐฝ ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ค๋ฅธ ์ด์ ์ฒด์ ๊ฒฝํ์ด ์๋ ์ฌ์ฉ์์๊ฒ ์น์ํ ํ๊ฒฝ์ ๋ง๋ค์์ต๋๋ค.
CTWM์ ๊ฐ์ ๋ฐ์คํฌํ์ ์ง์ํ๊ณ ํ๋ฐํ ๊ฐ๋ฐ ์ค์ด๋ฉฐ NetBSD ํธํ ๋ผ์ด์ผ์ค์ ๋ฐ๋ผ ์ฌ์ฉํ ์ ์์ต๋๋ค. CTWM์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌํ๋ ์๋ก์ด ๊ธฐ๋ฅ์๋ ์๋์ผ๋ก ์์ฑ๋ ์์ฉ ํ๋ก๊ทธ๋จ ๋ฉ๋ด, ๋ง์ฐ์ค ์์ด ์ ์ฒด ์ ์ด๋ฅผ ์ํ ์ ์ฉํ ํค๋ณด๋ ๋จ์ถํค, ๋ค์ํ ํ๋ฉด ํด์๋ ์์ ์ ๋ํ ์ ์(ํฐ ๊ธ๊ผด ์ถ๊ฐ ํ HiDPI ํฌํจ), ๋งค์ฐ ๋๋ฆฌ๊ณ ๋งค์ฐ ๋๋ฆฐ ์ง์ ๊ธฐ๋ฅ์ด ํฌํจ๋ฉ๋๋ค. ๋จ์ผ ๊ตฌ์ฑ ํ์ผ์ ์ฌ์ฉํ๋ ๋น ๋ฅธ ์์คํ .
๊ทธ๊ฒ์ :
๊ทธ๊ฒ์๋์๋ค :
์ถ๊ฐ
NetBSD๋ก์ ํฌํ ์ ์ด๋ ต๊ฒ ๋ง๋๋ Wayland์ ๊ธฐ๋ฅ ์ค ํ๋๋ ํ๋ฉด, ์ ๋ ฅ ๋ฐ ์ฐฝ ๊ด๋ฆฌ๋ฅผ ๋ด๋นํ๋ ๋ณตํฉ ๊ด๋ฆฌ์์ ๋๋์ OS๋ณ ์ฝ๋๊ฐ ์กด์ฌํ๋ค๋ ๊ฒ์ ๋๋ค. Wayland๋ ์คํฌ๋ฆฐ์ท, ํ๋ฉด ์ ๊ธ, ์ฐฝ ๊ด๋ฆฌ์ ๊ฐ์ ๊ธฐ๋ฅ์ ๋ํด ๊ธฐ์ฑ ํ๋กํ ์ฝ์ ์ ๊ณตํ์ง ์์ผ๋ฉฐ ์ด์์ฑ, ๋ชจ๋์ฑ ๋ฐ ํ์คํ์ ๊ฐ์ ์์ญ์์๋ ์ฌ์ ํ X ์๋ฒ๋ณด๋ค ๋ค๋จ์ด์ ธ ์์ต๋๋ค.
์ถ๊ฐ ๊ธฐ๋ฅ์ ๋ณตํฉ ๊ด๋ฆฌ์ ๋๋ ํ๋กํ ์ฝ ํ์ฅ ์ ์๋ฅผ ํตํด ๊ตฌํ๋ฉ๋๋ค. Weston ์ฐธ์กฐ ๋ณตํฉ ์๋ฒ๋ Linux ์ปค๋ API์ ํฌ๊ฒ ์์กดํฉ๋๋ค. ์๋ฅผ ๋ค์ด epoll I/O ๋ค์คํ ๋ฉ์ปค๋์ฆ์ ๋ํ ๋ฐ์ธ๋ฉ์๋ kqueue๋ฅผ ์ง์ํ๊ธฐ ์ํ ์ฌ์์ ์ด ํ์ํฉ๋๋ค. kqueue ์ฌ์ฉ์ ์ํ ํจ์น๋ ์ด๋ฏธ BSD ์์คํ ๊ฐ๋ฐ์์ ์ํด ์ค๋น๋์์ง๋ง ์์ง ์ฃผ๋ฅ๋ก ๋ฐ์๋ค์ฌ์ง์ง ์์์ต๋๋ค.
์ฐธ์กฐ ๋ณตํฉ ์๋ฒ์ ์ฝ๋๋ ์ฒ์์๋ Linux์์๋ง ๋์ผ๋ก ์์ฑ๋์์ผ๋ฉฐ ๋ค๋ฅธ ์์คํ ์ ๊ธฐ๋ฅ์ ๊ณ ๋ คํ์ง ์์ต๋๋ค(์: ์ฝ๋๋ "#include"๋ฅผ ์ฌ์ฉํจ) " ๋ฐ libinput์ ๋ํ ์ข ์์ฑ). FreeBSD๋ Linux ์ ๋ ฅ API์ ๋ณต์ ๋ณธ์ ๊ตฌํํ์ง๋ง NetBSD๋ ๊ทผ๋ณธ์ ์ผ๋ก ๋ค๋ฅธ ์ ๋ ฅ ๊ด๋ฆฌ API์ธ wscons๋ฅผ ์ฌ์ฉํฉ๋๋ค. ํ์ฌ wscons ์ง์์ ์ด๋ฏธ swc์ ์ถ๊ฐ๋์์ผ๋ฉฐ ๋ค๋ฅธ ๋ณตํฉ ๊ด๋ฆฌ์๋ก ์ด์ํ ๊ณํ์ ๋๋ค.
NetBSD ๋ํ์๋ค์ Wayland ๊ฐ๋ฐ์๋ค์ด epoll์ ๋ํ ํ๋ ๋งํฌ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ libevent์ ๊ฐ์ ๋ฒ์ฉ ๊ณ์ธต์ผ๋ก ์ ํํ๋๋ก ์ค๋ํ ๊ณํ์ ๋๋ค. ๊ณํ๋ ์์ ์๋ Linux ์ปค๋์์ ์ฝ๋ ํฌํ ์ ํฌํจํ์ฌ NetBSD ์ปค๋ ๋ฐ ๊ทธ๋ํฝ ๋๋ผ์ด๋ฒ์ DRM/KMS ์คํ ์ ๋ฐ์ดํธ, ๋น๋์ค ๋ชจ๋์ ์์ ์ ํ ์ง์ ์ถ๊ฐ, ์๋ก์ด ๋ฒ์ ์ DRM ๋ฐ Glamour API(X11 ์คํ์ฉ)๋ ํฌํจ๋ฉ๋๋ค. xwayland๋ฅผ ์คํํ๋ ์์ฉ ํ๋ก๊ทธ๋จ). Wayland ๊ธฐ๋ฐ ๋ณตํฉ ์๋ฒ์ ํ๋ ์ ๋ฒํผ ์ง์์ ์ถ๊ฐํ ๊ณํ์ ๋๋ค.
์ถ์ฒ : opennet.ru