์ต๊ทผ ์คํ ์์ค ๊ธฐ์ ์๋ฏธ(OSTS)์์
์์คํ ํ๋ก๊ทธ๋๋ฐ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ์์ฑํ๊ธฐ ์ํ ํ๋ซํผ ์ญํ ์ ํ๋ ์ํํธ์จ์ด์ ๊ฐ๋ฐ ๋ฐ ๊ด๋ฆฌ๋ก, ์์ฉ ํ๋ก๊ทธ๋จ์ด ํ๋ก์ธ์, RAM, ์ ๋ ฅ/์ถ๋ ฅ ์ฅ์น ๋ฐ ๋คํธ์ํฌ ์ฅ๋น์ ์ํธ ์์ฉํ๋๋ก ๋ณด์ฅํฉ๋๋ค. ์์คํ ์ํํธ์จ์ด๋ ํ๋์จ์ด ์์ฒด์ ์๋ ๋ฐฉ์์ ์์ธํ ์กฐ์ฌํ์ง ์๊ณ ๋ ์์ฉ ํ๋ก๊ทธ๋จ ์ํํธ์จ์ด๋ฅผ ๋ง๋๋ ๋ฐ ๋์์ด ๋๋ ์ธํฐํ์ด์ค ํํ๋ก ํน๋ณํ ์ถ์ํ๋ฅผ ๋ง๋ญ๋๋ค.
Triplett ์์ ์ ์์คํ ํ๋ก๊ทธ๋๋ฐ์ "์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ ๋ชจ๋ ๊ฒ"์ผ๋ก ์ ์ํฉ๋๋ค. ์ฌ๊ธฐ์๋ BIOS, ํ์จ์ด, ๋ถํธ๋ก๋, ์ด์ ์ฒด์ ์ปค๋, ๋ค์ํ ์ ํ์ ๋ด์ฅํ ํ์ ์์ค ์ฝ๋, ๊ฐ์ ๋จธ์ ๊ตฌํ ๋ฑ์ด ํฌํจ๋ฉ๋๋ค. ํฅ๋ฏธ๋กญ๊ฒ๋ Triplett๋ ์น ๋ธ๋ผ์ฐ์ ๋ ์์คํ ์ํํธ์จ์ด๋ผ๊ณ ๋ฏฟ์ต๋๋ค. ์๋ํ๋ฉด ๋ธ๋ผ์ฐ์ ๋ ์ค๋ ์ ์ "๋จ์ํ ํ๋ก๊ทธ๋จ" ์ด์์ด ๋์ด ๋ ๋ฆฝํ "์น ์ฌ์ดํธ ๋ฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ ํ๋ซํผ"์ด ๋์๊ธฐ ๋๋ฌธ์ ๋๋ค.
๊ณผ๊ฑฐ์๋ BIOS, ๋ถํธ๋ก๋, ํ์จ์ด๋ฅผ ํฌํจํ ๋๋ถ๋ถ์ ์์คํ ํ๋ก๊ทธ๋จ์ด ์ด์ ๋ธ๋ฆฌ ์ธ์ด๋ก ์์ฑ๋์์ต๋๋ค. 1960๋ ๋์๋ ๊ณ ๊ธ ์ธ์ด์ ๋ํ ํ๋์จ์ด ์ง์์ ์ ๊ณตํ๊ธฐ ์ํ ์คํ์ด ์์๋์ด PL/S, BLISS, BCPL ๋ฐ ALGOL 68๊ณผ ๊ฐ์ ์ธ์ด๊ฐ ํ์ํ์ต๋๋ค.
๊ทธ๋ฌ๋ค๊ฐ 1970๋ ๋์ Dennis Ritchie๊ฐ Unix ์ด์ ์ฒด์ ์ฉ C ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ๋ง๋ค์์ต๋๋ค. ํ์ดํ ์ง์์กฐ์ฐจ ์๋ B ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ๋ง๋ค์ด์ง C๋ ์ด์ ์ฒด์ ์ ๋๋ผ์ด๋ฒ ์์ฑ์ ๊ฐ์ฅ ์ ํฉํ ๊ฐ๋ ฅํ ๊ณ ๊ธ ๊ธฐ๋ฅ์ผ๋ก ๊ฐ๋ ์ฐจ ์์์ต๋๋ค. ์ปค๋์ ํฌํจํ UNIX์ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๋ ๊ฒฐ๊ตญ C๋ก ๋ค์ ์์ฑ๋์์ต๋๋ค. ์ดํ Oracle ๋ฐ์ดํฐ๋ฒ ์ด์ค, Windows ์์ค ์ฝ๋์ ์๋น ๋ถ๋ถ, Linux ์ด์ ์ฒด์ ๋ฅผ ํฌํจํ ๋ค๋ฅธ ๋ง์ ์์คํ ํ๋ก๊ทธ๋จ๋ C๋ก ์์ฑ๋์์ต๋๋ค.
C๋ ์ด ๋ฐฉํฅ์ผ๋ก ์์ฒญ๋ ์ง์ง๋ฅผ ๋ฐ์์ต๋๋ค. ๊ทธ๋ฐ๋ฐ ์ ํํ ๋ฌด์์ด ๊ฐ๋ฐ์๋ค์ด ์ด๋ฅผ ์ ํํ๊ฒ ๋ง๋ค์๋์? Triplett๋ ๊ฐ๋ฐ์๊ฐ ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ๋ค๋ฅธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์ ํํ๋๋ก ๋๊ธฐ๋ฅผ ๋ถ์ฌํ๋ ค๋ฉด ํ์๊ฐ ๋จผ์ ๊ธฐ์กด ๊ธฐ๋ฅ์ ์์ง ์๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ์ ๊ณตํด์ผ ํ๋ค๊ณ ๋ฏฟ์ต๋๋ค.
์ฒซ์งธ, ์ธ์ด๋ "ํฉ๋ฆฌ์ ์ผ๋ก ์ธ์์ ์ธ" ์๋ก์ด ๊ธฐ๋ฅ์ ์ ๊ณตํด์ผ ํฉ๋๋ค. โ๊ทธ๋ ์ด๋ณด๋ค ๋ ์ข์ ์ ์์ต๋๋ค. ์ ํ์ ์์๋๋ ๋ ธ๋ ฅ๊ณผ ์์ง๋์ด๋ง ์๊ฐ์ ์ ๋นํํ๋ ๊ฒ์ด ํจ์ฌ ๋ ์ข์์ผ ํฉ๋๋ค.โ๋ผ๊ณ ๊ทธ๋ ์ค๋ช ํฉ๋๋ค. ์ด์ ๋ธ๋ฆฌ ์ธ์ด์ ๋นํด C๋ ์ ๊ณตํ ์ ์๋ ๊ฒ์ด ๋ง์์ต๋๋ค. ์ด๋ ์ ๋ ์ ํ์ด ์์ ํ ๋์์ ์ง์ํ๊ณ , ๋์ ์์ค์ ๊ตฌ๋ฌธ์ผ๋ก ๋ ๋์ ์ด์์ฑ๊ณผ ์ฑ๋ฅ์ ์ ๊ณตํ๊ณ , ์ ์ฒด์ ์ผ๋ก ํจ์ฌ ๋ ์ฝ๊ธฐ ์ฌ์ด ์ฝ๋๋ฅผ ์์ฑํ์ต๋๋ค.
๋์งธ, ์ธ์ด๋ ์ด์ ๊ธฐ๋ฅ์ ๋ํ ์ง์์ ์ ๊ณตํด์ผ ํฉ๋๋ค. ์ฆ, C๋ก ์ ํํ๋ ๊ณผ์ ์์ ๊ฐ๋ฐ์๋ ์ธ์ด๊ฐ ์ด์ ๋ธ๋ฆฌ ์ธ์ด๋งํผ ๊ธฐ๋ฅ์ ์ด์ง ์์์ง ํ์ธํด์ผ ํ์ต๋๋ค. Triplett๋ ๋ค์๊ณผ ๊ฐ์ด ์ค๋ช ํฉ๋๋ค. โ์๋ก์ด ์ธ์ด๋ ๋ ์ข์ ๋ฟ๋ง ์๋๋ผ ๊ทธ๋งํผ ์ข์์ผ ํฉ๋๋ค.โ ์๋๊ฐ ๋ ๋นจ๋ผ์ง๊ณ ์ด์ ๋ธ๋ฆฌ ์ธ์ด๊ฐ ์ฌ์ฉํ ์ ์๋ ๋ชจ๋ ๋ฐ์ดํฐ ์ ํ์ ์ง์ํ๋ ๊ฒ ์ธ์๋ C์๋ Triplett๊ฐ "ํ์ถ ํด์น"๋ผ๊ณ ๋ถ๋ฅด๋ ๊ธฐ๋ฅ๋ ์์์ต๋๋ค. ์ฆ, C๋ ์์ฒด ๋ด์ ์ด์ ๋ธ๋ฆฌ ์ธ์ด ์ฝ๋ ์ฝ์ ์ ์ง์ํ์ต๋๋ค.
Triplett์ ์ด์ C๊ฐ ์๋ ์ ์ ์ด์ ๋ธ๋ฆฌ ์ธ์ด์ ๊ฐ์ ์ญํ ์ ํ๊ณ ์๋ค๊ณ ๋ฏฟ์ต๋๋ค. โC๋ ์๋ก์ด ์ด์ ๋ธ๋ฌ์ ๋๋ค.โ๋ผ๊ณ ๊ทธ๋ ์ ์ธํฉ๋๋ค. ์ด์ ๊ฐ๋ฐ์๋ค์ C์ ๋์ ๋์ด ๋ ์ด์ ๊ณ ์น ์ ์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋ฟ๋ง ์๋๋ผ ํฅ๋ฏธ๋กญ๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์๋ก์ด ๊ณ ๊ธ ์ธ์ด๋ฅผ ์ฐพ๊ณ ์์ต๋๋ค. ์ด๋ฌํ ์ธ์ด๋ ๊ฐ๋ฐ์๊ฐ ํด๋น ์ธ์ด๋ก ์ ํํ ๋งํผ ์ค๋๋ ฅ์ด ์์ด์ผ ํ๊ณ , ์์ ํด์ผ ํ๋ฉฐ, ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๋ฑ์ ์ ๊ณตํด์ผ ํฉ๋๋ค.
โC๋ณด๋ค ๋ ๋์ ์ธ์ด๊ฐ ์ ๋ง๋ก ๊ฐ๋ ฅํ ๋์์ด ๋๋ ค๋ฉด ๋ฒํผ ์ค๋ฒํ๋ก ๋ณดํธ ์ด์์ ๊ธฐ๋ฅ์ ์ ๊ณตํด์ผ ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ ์ฉ์ฑ๊ณผ ์ฑ๋ฅ, ์ค๋ช ์ด ํ์ ์๊ณ ๋ ์ ์ ์ค๋ก ๋ ๋ง์ ์์ ์ ์ํํ๋ ์ฝ๋ ์์ฑ์ ๊ด์ฌ์ด ์์ต๋๋ค. ๋ณด์ ๋ฌธ์ ๋ ํด๊ฒฐํด์ผ ํฉ๋๋ค. ์ฌ์ฉ ํธ์์ฑ๊ณผ ์ฑ๋ฅ์ด ํจ๊ป ์ ๊ณต๋ฉ๋๋ค. ๋ฌด์ธ๊ฐ๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ์์ฑํด์ผ ํ๋ ์ฝ๋๊ฐ ์ ์์๋ก ๋ณด์ ๊ด๋ จ ์ฌ๋ถ์ ์๊ด์์ด ์ค์๋ฅผ ์ ์ง๋ฅผ ๊ฐ๋ฅ์ฑ๋ ์ค์ด๋ญ๋๋ค.โ๋ผ๊ณ Triplett์ ์ค๋ช ํฉ๋๋ค.
Rust์ C์ ๋น๊ต
2006๋ ์ Mozilla ์ง์์ธ Graydon Hoare๋ ๊ฐ์ธ ํ๋ก์ ํธ๋ก Rust๋ฅผ ์์ฑํ๊ธฐ ์์ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ 2009๋ ์ Mozilla๋ ์์ฒด ํ์์ ๋ฐ๋ผ Rust ๊ฐ๋ฐ์ ํ์ํ๊ธฐ ์์ํ์ผ๋ฉฐ ์ธ์ด๋ฅผ ๋์ฑ ๊ฐ๋ฐํ๊ธฐ ์ํด ํ์ ํ์ฅํ์ต๋๋ค.
Mozilla๊ฐ ์๋ก์ด ์ธ์ด์ ๊ด์ฌ์ ๋ณด์ธ ์ด์ ์ค ํ๋๋ Firefox๊ฐ 4๋ง ์ค์ด ๋๋ C++ ์ฝ๋๋ก ์์ฑ๋์๊ณ ์๋น์์ ์ฌ๊ฐํ ์ทจ์ฝ์ ์ด ์๋ค๋ ๊ฒ์ ๋๋ค. Rust๋ ๋ณด์๊ณผ ๋์์ฑ์ ์ผ๋์ ๋๊ณ ๊ตฌ์ถ๋์์ผ๋ฏ๋ก Quantum ํ๋ก์ ํธ์ ์ผ๋ถ๋ก Firefox์ ๋ง์ ๊ตฌ์ฑ ์์๋ฅผ ๋ค์ ์์ฑํ์ฌ ๋ธ๋ผ์ฐ์ ์ํคํ ์ฒ๋ฅผ ์์ ํ ์ฌ์ค๊ณํ๋ ๋ฐ ์ด์์ ์ธ ์ ํ์ ๋๋ค. Mozilla๋ ๋ํ ํ์ฌ Firefox ๋ ๋๋ง ์์ง์ ๋์ฒดํ๊ฒ ๋ HTML ๋ ๋๋ง ์์ง์ธ Servo๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ํด Rust๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. Microsoft, Google, Facebook, Amazon, Dropbox, Fastly, Chef, Baidu ๋ฑ์ ํฌํจํ ๋ง์ ๋ค๋ฅธ ํ์ฌ๋ค์ด ํ๋ก์ ํธ์ Rust๋ฅผ ์ฌ์ฉํ๊ธฐ ์์ํ์ต๋๋ค.
Rust๋ C ์ธ์ด์ ๊ฐ์ฅ ์ค์ํ ๋ฌธ์ ์ค ํ๋๋ฅผ ํด๊ฒฐํฉ๋๋ค. ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฏ๋ก ๊ฐ๋ฐ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋ ๊ฐ์ฒด์ ๋ํด ์๋์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ ๋ค์ ํด์ ํ ํ์๊ฐ ์์ต๋๋ค. Rust๊ฐ ๋ค๋ฅธ ํ๋ ์ธ์ด์ ๋ค๋ฅธ ์ ์ ์ฌ์ฉ๋์ง ์๋ ๊ฐ์ฒด๋ฅผ ๋ฉ๋ชจ๋ฆฌ์์ ์๋์ผ๋ก ์ ๊ฑฐํ๋ ๊ฐ๋น์ง ์์ง๊ธฐ๊ฐ ์๊ณ , Java์ฉ Java Runtime Environment์ ๊ฐ์ด ์ด๋ฅผ ์๋์ํค๋ ๋ฐ ํ์ํ ๋ฐํ์ ํ๊ฒฝ์ด ์๋ค๋ ๊ฒ์ ๋๋ค. ๋์ Rust์๋ ์์ ๊ถ, ์ฐจ์ฉ, ์ฐธ์กฐ ๋ฐ ์๋ช ์ด๋ผ๋ ๊ฐ๋ ์ด ์์ต๋๋ค. โRust์๋ ์์ ์๊ฐ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ๊ณ ์๋์ง ์๋๋ฉด ๋จ์ง ๋น๋ฆฌ๊ณ ์๋์ง๋ฅผ ๋ํ๋ด๊ธฐ ์ํด ๊ฐ์ฒด์ ๋ํ ํธ์ถ์ ์ ์ธํ๋ ์์คํ ์ด ์์ต๋๋ค. ๋จ์ํ ๊ฐ์ฒด๋ฅผ ๋น๋ฆฐ ๊ฒฝ์ฐ ์ปดํ์ผ๋ฌ๋ ์ด๋ฅผ ์ถ์ ํ๊ณ ์ฐธ์กฐํ๋ ํ ์๋ณธ์ด ๊ทธ๋๋ก ์ ์ง๋๋๋ก ํฉ๋๋ค. Rust๋ ๋ํ ๊ฐ์ฒด์ ์ฌ์ฉ์ด ์๋ฃ๋๋ ์ฆ์ ๊ฐ์ฒด๊ฐ ๋ฉ๋ชจ๋ฆฌ์์ ์ ๊ฑฐ๋๋๋ก ๋ณด์ฅํ์ฌ ์ถ๊ฐ ์๊ฐ ์์ด ์ปดํ์ผ ํ์์ ์ฝ๋์ ํด๋น ํธ์ถ์ ์ฝ์ ํฉ๋๋ค.โ๋ผ๊ณ Triplett์ ๋งํฉ๋๋ค.
๋ค์ดํฐ๋ธ ๋ฐํ์์ด ์๋ค๋ ์ ๋ Rust์ ๊ธ์ ์ ์ธ ํน์ง์ผ๋ก ๊ฐ์ฃผ๋ ์ ์์ต๋๋ค. Triplett๋ ๊ทธ๊ฒ์ด ์คํ๋๋ ์ธ์ด๊ฐ ์์คํ ํ๋ก๊ทธ๋๋ฐ ๋๊ตฌ๋ก ์ฌ์ฉํ๊ธฐ ์ด๋ ต๋ค๊ณ ๋ฏฟ์ต๋๋ค. ๊ทธ๋ ๋ค์๊ณผ ๊ฐ์ด ์ค๋ช ํฉ๋๋ค. "์ฝ๋๋ฅผ ํธ์ถํ๋ ค๋ฉด ๋จผ์ ์ด ๋ฐํ์์ ์ด๊ธฐํํด์ผ ํ๊ณ , ํจ์๋ฅผ ํธ์ถํ๋ ค๋ฉด ์ด ๋ฐํ์์ ์ฌ์ฉํด์ผ ํ๋ฉฐ, ๋ฐํ์ ์์ฒด๊ฐ ์์์น ๋ชปํ ์๊ฐ์ ๋ค์์ ์ถ๊ฐ ์ฝ๋๋ฅผ ์คํํ ์ ์์ต๋๋ค."
Rust๋ ๋ํ ์์ ํ ๋ณ๋ ฌ ํ๋ก๊ทธ๋๋ฐ์ ์ ๊ณตํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๊ณ ์์ต๋๋ค. ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์์ ํ๊ฒ ๋ง๋๋ ๋์ผํ ๊ธฐ๋ฅ์ ์ด๋ค ์ค๋ ๋๊ฐ ์ด๋ค ๊ฐ์ฒด๋ฅผ ์์ ํ๋์ง, ์ด๋ค ๊ฐ์ฒด๊ฐ ์ค๋ ๋ ๊ฐ์ ์ ๋ฌ๋ ์ ์๋์ง, ์ด๋ค ๊ฐ์ฒด๊ฐ ์ ๊ธ์ด ํ์ํ์ง ๋ฑ์ ์ถ์ ํฉ๋๋ค.
์ด๋ฌํ ๋ชจ๋ ๊ธฐ๋ฅ์ ๊ฐ๋ฐ์๊ฐ Rust๋ฅผ ์์คํ ํ๋ก๊ทธ๋๋ฐ์ ์ํ ์๋ก์ด ๋๊ตฌ๋ก ์ ํํ ๋งํผ ์ถฉ๋ถํ ๋งค๋ ฅ์ ์ผ๋ก ๋ง๋ญ๋๋ค. ๊ทธ๋ฌ๋ ๋ณ๋ ฌ ์ปดํจํ ์ธก๋ฉด์์ Rust๋ ์ฌ์ ํ C๋ณด๋ค ์ฝ๊ฐ ๋ค๋จ์ด์ ธ ์์ต๋๋ค.
Triplett์ Rust๊ฐ ์์คํ
ํ๋ก๊ทธ๋๋ฐ ๋ถ์ผ์์ C์ ์์ ํ ๋๋ฑํ๊ณ ๋ฅ๊ฐํ๋ฉฐ ๋์ฒดํ ์ ์๋๋ก ํ์ํ ๊ธฐ๋ฅ์ Rust์ ๋์
ํ๋ ๋ฐ ์ด์ ์ ๋ง์ถ ํน๋ณ ์์
๊ทธ๋ฃน์ ๋ง๋ค ๊ณํ์
๋๋ค. ์์
FFI/C ํจ๋ฆฌํฐ ๊ทธ๋ฃน์ ๋จผ์ Rust์ ๋ฉํฐ์ค๋ ๋ฉ ์ง์ ๊ฐ์ , ์๋ก์ด Intel Xeon Scalable ํ๋ก์ธ์์ ๋ฑ์ฅํ ๋ถ๋ ์์์ ํ์์ธ BFLOAT16์ ๋ํ ์ง์ ๋์ ๋ฐ ์ด์ ๋ธ๋ฆฌ ์์ ํ์ ์ค์ ์ ๋ ๊ฒ์ด๋ผ๊ณ ๊ฐ์ ํ ์ ์์ต๋๋ค. ์ฝ๋ ์ฝ์ .
์ถ์ฒ : 3dnews.ru