์ด ๋ฌธ์์ ์๋ณธ์ ์ธ๋ถ ์ํค์์ ๊ฐ์ ธ์์ต๋๋ค.
1. ๊ฐ์[ํธ์ง]
TempleOS๋ ๋ฌด๋ฃ, ํผ๋ธ๋ฆญ ๋๋ฉ์ธ, ์คํ ์์ค, x86_64, ๋น์ ์ ํ ๋ฉํฐํ์คํน, ๋ฉํฐ ์ฝ์ด ๊ธฐ๋ฐ, Ring-0๋ก๋ง ์๋ํ๋, ๋จ์ผ ์ฃผ์ ๋งต(identity-mapped)์ ์ฌ์ฉํ๊ณ , ๋คํธ์ํฌ ์ฐ๊ฒฐ์ ์ง์ํ์ง ์๋ PC ์ด์์ฒด์ ์ ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ด์ง์ ์ฌ์ฉ๋์ง ์์ต๋๋ค.
TempleOS is a free, public domain, open source, x86_64, non-preemptive multi-tasking, multi-cored, ring-0-only, single-address-map (identity-mapped), non-networked, PC operating system. Paging is, basically, not used.โ TempleOS ์๊ฐ
TempleOS๋ ๋ฏธ๊ตญ์ ํ๋ก๊ทธ๋๋จธ ํ ๋ฆฌ ๋ฐ์ด๋น์ค๊ฐ ์ญ์ฌ๋ ์ด ๋๋ ๊ธฐ๊ฐ๋์ ํ๋ก ๊ฐ๋ฐํ ์ด์์ฒด์ ์ด๋ค. 2013๋ ์ฒ์ ๋ฐฐํฌ๋์๊ณ 2017๋ ๋ง์ง๋ง์ผ๋ก ์ ๋ฐ์ดํธ๋์๋ค.
TempleOS์ ๊ฐ๋ฐ์์ธ ๋ฐ์ด๋น์ค๋ ์์ ์ด ์ ๊ณผ ์ง์ ์ฐ๊ฒฐ๋์ด์๋ค๊ณ ์ฃผ์ฅํ๋ค. ์ ์ผ๋ก๋ถํฐ 16์ 640x480 ํด์๋์ ์ด์์ฒด์ ๋ฅผ ๋ง๋ค๋ผ๋ ๊ณ์๋ฅผ ๋ฐ์ ๋ง๋ค๊ฒ ๋ ๊ฒ์ด ๋ฐ๋ก ์ด ์ด์์ฒด์ .[1] Davis๊ฐ ์ง์ ์ฐฝ์กฐํ ๋ณ์ข C์ธ์ด์ธ HolyC๋ก ๊ฐ๋ฐ๋์๋ค. ๋นํ ์๋ฎฌ๋ ์ดํฐ, 3D FPS ๋ฐ ๊ฐ์ข ๊ฒ์, HolyC ์ปดํ์ผ๋ฌ, ์ ํ ํ๋ก๊ทธ๋จ ๋ฑ๋ฑ ํผ์์ ๋ชจ๋ ๊ฐ๋ฐํ๋ค๊ณ ๋ ๋ฏฟ์ ์ ์์ ์ ๋๋ก ๋ค์ํ ์์ฉํ๋ก๊ทธ๋จ๋ค์ด ํฌํจ๋์ด ์๋ค.
์ด๋ ํ ์คํ ์์ค๋ ๊ฐ์ ธ๋ค ์ฌ์ฉํ์ง ์๊ณ ๋ชจ๋ ์ฝ๋๋ฅผ ์์ ์ด ์ง์ ์์ฑํ๋ค๊ณ ํ๋ค.
์ฌ๊ธฐ์์ TempleOS๋ฅผ ์ง์งํ๊ฒ ๋ถ์ํ ๋ด์ฉ์ ๋ณผ ์ ์๋ค.
2. ํฌํจ๋ ์ํํธ์จ์ด ๋ชฉ๋ก[ํธ์ง]
2.1. ๊ฒ์[ํธ์ง]
2.2. ์์ [ํธ์ง]
2.3. ์ข ๊ต[ํธ์ง]
2.4. ๊ธฐํ[ํธ์ง]
3. ์ค๋ฝ ์ฝ๋ฉ[ํธ์ง]
TempleOS๋ ํ๋ํ๋ 64๋นํธ ์ฝ๋ชจ๋์ด 64๋ฅผ ๋ชฉํ๋ก ํฉ๋๋ค. ์ฝ๋ชจ๋์ด 64๋ ๋คํธ์ํฌ๋ฅผ ์ง์ํ์ง ์์๊ณ , ์ฃผ๋ก ๊ฒ์์ ์ํด ์ฌ์ฉ๋ ๊ฐ์ ์ฉ ์ปดํจํฐ์์ต๋๋ค. ์ด๊ฒ์ ์์ ํ ๊ฐ๋ฐฉ๋์ด์์๊ณ hackable ํ๊ธฐ์ ์ ํฌ ์ธ๋์๊ฒ ์ด๋ป๊ฒ ํ๋ก๊ทธ๋๋ฐ ํ๋์ง๋ฅผ ํ๋ จ์์ผ ์ฃผ์์ต๋๋ค.
The vision for TempleOS, however, is a modern, 64-bit Commodore 64. The C64 was a non-networked, home computer mostly used for games. It trained my generation how to program because it was wide open, completely hackable.โ TempleOS ์๊ฐ
HolyC์ x86_64 ์ด์ ๋ธ๋ฆฌ์ด๋ฅผ ์ฌ์ฉํด ์์ฉ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ ์ ์๋ค.
๋ชจ๋ ์ฝ๋๊ฐ Ring-0์์ ์๋ํ๋ฏ๋ก ํ๋์จ์ด์ ์๋ฌด๋ฐ ์ ํ ์์ด ์ ๊ทผํ ์ ์๊ณ , ์์ค ์ฝ๋ ์์ ์ด๋ฏธ์ง๋ฅผ ์ฒจ๋ถํ ์ ์๋ ๋ฑ ์๋นํ ์ ๊ธฐํ ํน์ง๋ค์ ๋ง์ด ๊ฐ์ง๊ณ ์๋ค. UI๋ CUI์ GUI๊ฐ ๊ฒฝ๊ณ ์์ด ์ด์ฐ๋ฌ์ง ํํ์ด๋ค. ์ด๋ฌํ TempleOS๋ง์ ๋ ํนํ ํน์ง๋ค์ด ์ค๋ฝ์ฉ ์ฝ๋ฉ์ ์ ๋ฆฌํ๊ฒ ์์ฉํ๋ค๋ ํ๊ฐ๊ฐ ๋ง๋ค.[8]
๋ช๋ช ์๋๋ค์ ์ค๋ฝ์ฉ ์ฝ๋ฉ์ ์ ๋ฆฌํ ์ด๋ฐ ํน์ง๋ค์ ์ฃผ๋ชฉํด ์ฌ๋ฌ ํ๋ก๊ทธ๋จ๋ค์ ๊ฐ๋ฐํ๊ธฐ๋ ํ๋๋ฐ ํ ํธ๋ฆฌ์ค ๋ฑ ๋ค์ํ ๊ฒ์์ ๊ตฌํํ๊ณ , demo scene์ ์ ์ํ๊ฑฐ๋, ๊ฒ์๋ณด์ด ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์ ์ํ๊ฑฐ๋, ์ฌ์ง์ด ์๋๋ ์ง์๋์ง ์๋ ๋คํธ์ํฌ ํต์ ๊ธฐ๋ฅ์ ๊ตฌํํ ์ฉ์๋ ์์๋ค.
TempleOS๋ฅผ ๋์ฑ ํ๋์ ์ด๊ณ ์ ๊ทผ์ฑ์ด ๋์ ์ด์์ฒด์ ๋ก ํ๋ฐ๊ฟํ๊ณ ์ ํ๋ ์๋๋ก Shrine์ด๋ผ๋ ๋ฐฐํฌํ์ด ๊ฐ๋ฐ๋๊ธฐ๋ ํ์๋ค. Lambda Shell์ด ์ง์๋๊ณ ๋คํธ์ํฌ ํต์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ผ๋ฉฐ ์ฌ๋ฌ ์ํํธ์จ์ด ํจํค์ง๋ค์ ์ถ๊ฐ๋ก ๋ค์ด๋ก๋ ๋ฐ์ ์ ์๋ค๊ณ ํ๋ค.
4. ๊ฐ๋ฐ์[ํธ์ง]
5. ์ฌ๋ด[ํธ์ง]
๊ณต์์ ์ธ ์
๊ทธ๋ ์ด๋๋ ์ค๋จ๋์์ง๋ง, ๋ง์ ํ๋ก๊ทธ๋๋จธ๋ค์ด ์๋ฐ์ ์ผ๋ก TempleOS ๊ธฐ๋ฐ ์ํํธ์จ์ด๋ฅผ ์ ์ํ๊ณ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ ์๋ค. ๊ด์ฌ์ด ์๋ค๋ฉด ๊ณต์ ์๋ธ๋ ๋ง์์ ํ์ธํด๋ณด์.
[1] ๋ ๋ฏธ๋์ ๋ฐ์ค๋ฆฌ์นด๊ฐ ๊ณต๊ตญ์ ์์ด์ ๋ฐํฌ์กฑ๊ณผ๋ ๋๋งน์ด๋ผ ์ฝ๊ฒ ์ํด๋ฅผ ๊ตฌํ ์ ์๋ค. ๋ฐ ๋ก์ค ์ ๊ตญ์ ์ฌ์ ํ ๊ทธ๋ฆผ์์ปค๋ฅผ ๋นํธํ๊ณ ์์ง๋ง ํ ๊ตญ๊ฐ๋ค, ํนํ ๋ฒจ ๋ง์ด์ด ๊ณต๊ตญ์๊ฒ ์ ์ ๊ผฌ๋ฆฌ๋ฅผ ์กํ๋ ์ค์ด๋ผ ๋ ์ด์ ๋ณดํธํ ์ ์์ ๊ฒ์ผ๋ก ๋ณด์ธ๋ค. ์ธ๊ฒ์์์๋ ๋ฐํฌ์กฑ์ ๋์ฌํ ๋ผ๋น๋์ ์ ๊ตญ์ธ์ธ ๋ฃจ์ค ๋ ๋๋ฉ์ธ์ด ์ค์ฐ์์ ๋์นํ๊ธฐ๋ ํ๋ค.
[10] ์ค์ ๋ก ์บฅ๊ฑฐ๋ฃจ๊ฐ ์ธ์ธ ๋๋ ๊ผฌ๋ฆฌ๋ฅผ ์ด์ฉํด ๋ชธ์ ์งํฑํ๋ฉด์ ๋ฐ์ ์ฃผ๋ก ์ฌ์ฉํ๋ค.
[11] ์บฅ๊ฑฐ๋ฃจ๊ณผ์ ์บฅ๊ฑฐ๋ฃจ์์ด ์์ง๋ง ์ฐ๋ฆฌ๊ฐ ๋ถ๋ฅด๋ ์บฅ๊ฑฐ๋ฃจ๋ ๋ช
์นญ์ ์บฅ๊ฑฐ๋ฃจ๊ณผ ๋๋ฌผ์ ์ด์นญ์ด๋ค.