ํผ๋๋ก ๋์๊ฐ๊ธฐ
Dev.toInfrastructure
์๋ฌธ ์ฝ๊ธฐ
Direct Machine Control์ ํตํ ํ๋์จ์ด ์ต์ ํ ๋ฐ ๋ฉ๋ชจ๋ฆฌ ํจ์จ ๊ทน๋ํ
introduction to C: Why the "Latin" of programming Languages still Matters๐
AI ์์ฝ
Context
ํ๋ ๊ณ ์์ค ์ธ์ด์ ์ถ์ํ ๊ณ์ธต์ผ๋ก ์ธํ ํ๋์จ์ด ์ ์ด๊ถ ์์ค ๋ฐ Runtime ์ค๋ฒํค๋ ๋ฐ์. Garbage Collection ์์กด์ฑ์ผ๋ก ์ธํ ๋ฉ๋ชจ๋ฆฌ ์์ธก ๋ถ๊ฐ๋ฅ์ฑ๊ณผ ์ฑ๋ฅ ๋ณ๋ชฉ ์ง์ ์กด์ฌ.
Technical Solution
- Machine Code ์ง์ ์ปดํ์ผ์ ํตํ ์ถ์ํ ๊ณ์ธต ์ ๊ฑฐ ๋ฐ ์คํ ์๋ ์ต์ ํ
- Pointer ๊ธฐ๋ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ์ง์ ์ฐธ์กฐ๋ฅผ ํตํ ๋ฐ์ดํฐ ๋ณต์ ๋น์ฉ ์ ๊ฑฐ
- malloc() ๋ฐ free()๋ฅผ ํ์ฉํ Manual Memory Management๋ก ๋ฉ๋ชจ๋ฆฌ ์ ์ ์ ๋ฐ ์ ์ด
- ํ๋์จ์ด ๋ ์ง์คํฐ ๋ฐ RAM ์ ๊ทผ์ ์ต์ ํํ Small Footprint ์ํคํ ์ฒ ์ค๊ณ
- ์ ์ฒ๋ฆฌ๊ธฐ๋ฅผ ํตํ ํ๋์จ์ด ์ธํฐํ์ด์ค ๋๊ตฌ ์ต์ ํ ๋ก๋ ๋ฐ OS ์ปค๋ฎค๋์ผ์ด์ ๊ตฌ์กฐ ๊ตฌํ
์ค์ฒ ํฌ์ธํธ
- ๋ฉ๋ชจ๋ฆฌ ๋ ์ด์์๊ณผ Pointer ์ฐ์ฐ์ ๋์ ์๋ฆฌ๋ฅผ ๋ถ์ํ์ฌ ๋ฐ์ดํฐ ์บ์ฑ ํจ์จ ๊ฒํ - Garbage Collector์ ์ค๋ฒํค๋๊ฐ ์๊ณ์น์ ๋๋ฌํ ๋ชจ๋์ Manual Memory ๊ด๋ฆฌ ์ ํ ๊ณ ๋ ค - Embedded ์์คํ ์ค๊ณ ์ ์ต์ํ์ Footprint๋ฅผ ์ํ ์ ์์ค ์ธ์ด ํน์ฑ ๋ฐ์