Computer Science/๐ Operating System
[์ด์์ฒด์ ] ํ๋ก์ธ์ค ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ - Code, Data, Heap, Stack
J1Yun
2023. 2. 21. 14:28
728x90
ํ๋ก์ธ์ค ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ
Code(Text)
- ์ฌ์ฉ์๊ฐ ์์ฑํ ํ๋ก๊ทธ๋จ ์ฝ๋๊ฐ ์ ์ฅ๋๋ ๊ณต๊ฐ
- ์ํํ ์ ์๋ ๊ธฐ๊ณ์ด ๋ช ๋ น์ ํํ๋ก ๋ณํ๋์ด ์ ์ฅ
- ๋ณ๊ฒฝ์ด ๋ถ๊ฐ๋ฅํ Read-Only
Data
- ์ ์ญ ๋ณ์๋ static ๋ณ์ ๋ฑ ํ๋ก๊ทธ๋จ์ด ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ณต๊ฐ
- ์ ์ญ ๋ณ์๋ static ๋ณ์๋ฅผ ์ฐธ์กฐํ ์ฝ๋ ๋ถ๋ถ์ ์ปดํ์ผ์ด ์๋ฃ๋๋ฉด data ์์ญ ๋ด์ ํด๋น ์ฃผ์๊ฐ์ ๊ฐ๋ฆฌํค๋๋ก ๋ณ๊ฒฝ๋จ
- ์ ์ญ ๋ณ์๊ฐ ์ ์ฅ๋๋ ๊ณต๊ฐ์ Data ์์ญ๊ณผ BSS ์์ญ์ผ๋ก ๋๋จ
- Data: ์ด๊ธฐํ ๋ ์ ์ญ ๋ณ์
- BSS: ์ด๊ธฐํ ๋์ง ์์ ์ ์ญ ๋ณ์
- ์ปดํ์ผ ์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋๋ฉฐ ํ๋ก๊ทธ๋จ ์ข ๋ฃ ์ ์ญ์ ๋จ
- ์ ์ญ ๋ณ์์ ๊ฐ์ด ๋ณ๊ฒฝ๋ ์ ์์ผ๋ฏ๋ก Read-Write
Heap
- ํ๋ก๊ทธ๋๋จธ๊ฐ ํ์ํ ๋๋ง๋ค ์ฌ์ฉํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ
- ๋์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋น-ํด์
- ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ด ์ผ์ด๋๋ฉด ์ฃผ์๊ฐ์ด ์ปค์ง๋ ๋ฐฉํฅ์ผ๋ก ์์ญ ํ์ฅ
Stack
- ๋ฐ์ดํฐ๋ฅผ ์ผ์์ ์ผ๋ก ์ ์ฅํ๋ ๊ณต๊ฐ
- ํธ์ถ๋ ํจ์๊ฐ ์ํ์ ๋ง์น๊ณ ๋ณต๊ทํ ์ฃผ์๋ ์ง์ญ ๋ณ์, ๋งค๊ฐ ๋ณ์, ๋ฆฌํด๊ฐ ๋ฑ์ด ์์๋ก ์ ์ฅ
- ํ๋ก๊ทธ๋จ ์คํ ์ค ํจ์ ํธ์ถ ์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋๊ณ ํจ์์ ์ํ์ด ์๋ฃ๋๋ฉด ์ญ์ ๋จ
- LIFO(Last In First Out) ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ ์ ์ฌ
- ๋ฐ์ดํฐ๊ฐ ์์๋ก ์ ์ฅ๋๋ฉด ์ฃผ์๊ฐ์ด ์์์ง๋ ๋ฐฉํฅ์ผ๋ก ์์ญ ํ์ฅ (Heap๊ณผ ๋ฐ๋)
- Stack ์์ญ๊ณผ Heap ๋ถ๋ถ์ด ๋ง๋๋ค๋ฉด ๋ฉ๋ชจ๋ฆฌ๊ฐ ์์ง๋์๋ค๋ ์๋ฏธ๋ก ๊ณ์ํด์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ฉด ๋ฉ๋ชจ๋ฆฌ ์ด๊ณผ๋ก stack overflow ๋ฐ์
โญ๏ธ ์ฐธ๊ณ
728x90