๐ฅ๏ธ ๋ฉ๋ชจ๋ฆฌ์ ๊ตฌ์กฐ
๐ ๋ฉ๋ชจ๋ฆฌ์ ๊ณ์ธต ๊ตฌ์กฐ
์ฌ๋ฌ๊ฐ์ง ๊ธฐ์ต ์ฅ์น๋ฅผ ํ์์ ๋ฐ๋ผ ์๋, ์ฉ๋, ์ฑ๋ฅ์ ๋ฐ๋ผ ๊ณ์ธต์ ์ผ๋ก ๋๋์ด ๋ ๊ฒ์ ์๋ฏธ
๐ ๋ฉ๋ชจ๋ฆฌ์ ๊ณ์ธต ํน์ง
ํ์ ๊ณ์ธต์ผ๋ก ๊ฐ์๋ก ์ฉ๋์ด ๋์ด๋๊ณ , ๊ฐ๊ฒฉ์ด ์ ๋ ดํ์ง๋ง, ์๋๊ฐ ๋๋ฆผ ๋ฐ๋๋ก ์์ ๊ณ์ธต์ ๋น ๋ฅธ๋์ ์ฉ๋์ด ์๊ณ ๊ฐ๊ฒฉ์ด ๋น์.
→ ์ด๋ฅผ ๋ณด์ํ๊ธฐ ์ํ์ฌ ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉ
- ๋ ์ง์คํฐ์ ์บ์๋ CPU ๋ด๋ถ์ ์กด์ฌ. CPU์ ์์ฃผ ๋น ๋ฅด๊ฒ ์ ๊ทผํ ์ ์์
- ๋ฉ๋ชจ๋ฆฌ(์ฃผ๊ธฐ์ต์ฅ์น)๋ CPU ์ธ๋ถ์ ์กด์ฌ. ๋ ์ง์คํฐ์ ์บ์๋ณด๋ค ๋ ๋๋ฆฌ๊ฒ CPU์ ์ ๊ทผ
- ํ๋๋์คํฌ(๋ณด์กฐ๊ธฐ์ต์ฅ์น)๋ CPU๊ฐ ์ง์ ์ ๊ทผํ ๋ฐฉ๋ฒ์กฐ์ฐจ ์์
- CPU๊ฐ ํ๋ ๋์คํฌ์ ์ ๊ทผํ๊ธฐ ์ํด์๋ ํ๋๋์คํฌ์ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ๋ก ์ด๋์ํค๊ณ , ๋ฉ๋ชจ๋ฆฌ์์ ์ ๊ทผํด์ผ ํจ.
- ์์ฃผ ๋๋ฆฐ ์ ๊ทผ๋ง ๊ฐ๋ฅ
๐พ ๋ณด์กฐ ๊ธฐ์ต ์ฅ์น
๐ ์ ์
๋ฌผ๋ฆฌ์ ์ธ ๋์คํฌ๊ฐ ์ฐ๊ฒฐ๋์ด ์๋ ๊ธฐ์ต์ฅ์น ์ฃผ๊ธฐ์ต์ฅ์น๋ณด๋ค๋ ๋๋ฆฌ์ง๋ง ์ปดํจํฐ์ ์ ์์ ๋๋๋ผ๋ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ผ์ง์ง ์๊ณ , ์๊ตฌ์ ์ผ๋ก ๋ณด๊ดํ ์ ์๋ ์ฅ์น
๐ HDD(Hard Disk Driver)
- ํ๋๋์คํฌ๋ผ ๋ถ๋ฆฌ์ฐ๋ ๋ณด์กฐ๊ธฐ์ต์ฅ์น
- ๋ฌผ๋ฆฌ์ ์ธ ๋์คํฌ๋ฅผ ๊ณ ์์ผ๋ก ํ์ ์์ผ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์ฅ์น
- ๋์คํฌ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ์ ์ฅํ๊ธฐ ๋๋ฌธ์ ์ถฉ๊ฒฉ์ ์ฝํ๋ฉฐ, ์์์ด ๋ค์ ๋ฐ์
๐ SSD(Solid State Driver)
- ๋ฐ๋์ฒด ๊ธฐ๋ฐ์ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๋ณด์กฐ๊ธฐ์ต์ฅ์น
- ์ ๊ธฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ๋๋ฌธ์ HDD์ ๋นํด์ ์๋๊ฐ ์๋ฑํ ๋น ๋ฅด๊ณ , ์์๋ ๋ฐ์ํ์ง ์์
- ์ ๋ ฅ์๋ชจ๊ฐ ์ ๊ณ , ๊ฒฝ๋ํ ๋ฐ ์ํํ ํ ์ ์์
๐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ(Virtual Memory)
: ์ค์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ ๊ฐ๋ ๊ณผ ์ฌ์ฉ์์ ๋ ผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ ๊ฐ๋ ์ ๋ถ๋ฆฌํ ๊ฒ.
- ๋ฉ๋ชจ๋ฆฌ์ ๊ณต๊ฐ์ ํ์ ์ ์ด๋ฏ๋ก ์ฌ์ฉ์์๊ฒ ๋ ๋ง์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด ๊ฐ์ ์ฃผ์๋ฅผ ์ฌ์ฉ→ ์ฌ๊ธฐ์ ๊ฐ์ ์ฃผ์ ๊ณต๊ฐ์ ํ๋์ ํ๋ก์ธ์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋๋ ๋ ผ๋ฆฌ์ ์ธ ๋ชจ์ต์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ๊ตฌํํ ๊ณต๊ฐ์ด๋ฉฐ, ๊ฐ์ ์ฃผ์๋ฅผ ํด๋น ๊ณต๊ฐ์ ๊ฐ๋ฆฌํค๋ ์ฃผ์์
- → ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ฅ์น๋ ๊ฐ์ ์ฃผ์๋ฅผ ์ด์ฉํด ์ค์ ๋ฐ์ดํฐ๊ฐ ๋ด๊ฒจ ์๋ ์ฃผ์๋ก ๋ณํํด์ค
๐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ๊ตฌํ
- ์ด์ ์ฒด์ ๋ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฝ์ ๊ฐ๊ณ ์๋ ์ฃผ๊ธฐ์ต์ฅ์น๋ฅผ ๋ณด์กฐํ๊ธฐ ์ํด ๋์คํฌ๋ฅผ ๋ณด์กฐ ๊ธฐ์ต ์ฅ์น (Paging Space)๋ก ์ฌ์ฉํจ
- ์ฆ, ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ(์ฃผ๊ธฐ์ต์ฅ์น)์ ๋์คํฌ์ ํ์ด์ง ์คํ์ด์ค(๋ณด์กฐ ๊ธฐ์ต์ฅ์น)๋ฅผ ํ๋๋ก ๋ฌถ์ด ํ๋์ ๋ฉ๋ชจ๋ฆฌ์ฒ๋ผ ๋์ํ๊ฒ ํ๋ฉฐ, ์ด๋ฅผ ํตํด ๋ฉ๋ชจ๋ฆฌ์ ํ๊ณ๋ฅผ ๋๋ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ตฌํํจ’
๐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํ์ํ ์ด์
- ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ํ๊ณ
- ๋ชจ๋ ํ๋ก๊ทธ๋จ ์ฝ๋๋ฅผ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆด ์๊ฐ ์์
- ๊ทธ๋ ๋ค๊ณ ํ๋ก๊ทธ๋จ์ ๊ต์ฒดํ๋ฉด์ ์ฌ๋ฆฌ๋ฉด ๋ฉ๋ชจ๋ฆฌ ๊ต์ฒด ์ฑ๋ฅ ๋ฌธ์ ๊ฐ ๋ฐ์
- ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฅ์
- ํ๋ก๊ทธ๋จ ์ฉ๋์ด ์ค์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ณด๋ค ์ปค๋ ๋จ
- ์ ์ฒด ํ๋ก๊ทธ๋จ์ด ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์ ์์ง ์์๋ ๋จ
- ๋ ๋ง์ ํ๋ก๊ทธ๋จ์ ๋์์ ์คํ์ํฌ ์ ์์
- ์๋ต ์๊ฐ์ ์ ์ง
- CPU ์ด์ฉ๋ฅ ๊ณผ ์ฒ๋ฆฌ์จ์ ์ฆ๊ฐ
- ์ฆ, ๋ค์ค ํ๋ก๊ทธ๋๋ฐ์ ์คํํ๊ธฐ ์ํด ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฝ์ ๋ณด์ํ๊ณ , ํ๋ก์ธ์ค ์ ์ฒด๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆฌ์ง ์๊ณ ๋ ์คํํ ์ ์๋๋ก ํด์ค
๐พ ์ฃผ ๊ธฐ์ต ์ฅ์น
๐ ์ ์
๐ RAM(Random Access Memory)
- ์ฝ๊ณ ์ฐ๊ธฐ๊ฐ ๊ฐ๋ฅํ๋ฉฐ, ์์ฉํ๋ก๊ทธ๋จ, ์ด์์ฒด์ ๋ฑ์ ๋ถ๋ฌ์ CPU๊ฐ ์์ ํ ์ ์๋๋ก ํ๋ ๊ธฐ์ต์ฅ์น
- ๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ์๋์ ๊ธฐ๋กํ๋ ์๋๊ฐ ๊ฐ๊ณ , ํ๋ก๊ทธ๋จ์ ๋ก๋ฉํ๊ฑฐ๋ ๋ฐ์ดํฐ๋ฅผ ์์ ์ ์ฅํ๊ฑฐ๋ ํ๋ ๊ณณ์ ์ฌ์ฉ
- ์ ์์ด ๋์ด์ง๋ฉด ๋ฐ์ดํฐ๊ฐ ์ ๋ถ ์ง์์ง๊ธฐ ๋๋ฌธ์ ํ๋ฐ์ฑ ๋ฉ๋ชจ๋ฆฌ๋ผ๊ณ ํจ
๐ ROM(Read Only Memory)
- ์ ์์ด ๋์ด์ ธ๋ ๊ธฐ๋ก๋ ๋ฐ์ดํฐ๋ค์ด ์๋ฉธ๋์ง ์๋ ๋นํ๋ฐ์ฑ ๋ฉ๋ชจ๋ฆฌ์.
- ์ค์ง ๊ธฐ์ต๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ธฐ๋ง ๊ฐ๋ฅํ ์ฅ์น
- ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ํ, ๋ฐ์๊ตฌ์ ์ผ๋ก ์ฌ์ฉํ ์ ์์
- → ์์คํ ์ ๊ธฐ์ต์ํค๊ณ ๋ณํ์ํค๋ฉด ์๋๋ BIOS์ ๊ฐ์ ์ฃผ์ ๋ฐ์ดํฐ๋ ์ด ์ฅ์น์ ์ ์ฅ๋จ
๐ ๊ตฌ์กฐ
1๏ธโฃ ์ฝ๋(Code) ์์ญ
: ์คํํ ํ๋ก๊ทธ๋จ์ ์ฝ๋๊ฐ ์ ์ฅ๋๋ ์์ญ์ผ๋ก ํ
์คํธ ์์ญ์ด๋ผ๊ณ ๋ถ๋ฆ. CPU๋ ์ฝ๋ ์์ญ์ ์ ์ฅ๋ ๋ช
๋ น์ด๋ฅผ ํ๋์ฉ ๊ฐ์ ธ๊ฐ์ ์ฒ๋ฆฌํจ
2๏ธโฃ ๋ฐ์ดํฐ(Data) ์์ญ
: ํ๋ก๊ทธ๋จ์ ์์๊ณผ ๋์์ ํ ๋น๋๋ฉฐ, ํ๋ก๊ทธ๋จ์ด ์ข
๋ฃ๋๋ฉด ์๋ฉธ
: ์ ์ญ๋ณ์(Global Variable), ์ ์ ๋ณ์(Static Variable), ๋ฐฐ์ด(Array), ๊ตฌ์กฐ์ฒด(Structure) ๋ฑ์ด ์ ์ฅ๋๋ ์์ญ
- ์ด๊ธฐํ๋ ๋ฐ์ดํฐ๋ Data์์ญ์ ์ ์ฅ, ๊ทธ์ธ์๋ BBS(Blocked Stated Symbol)์ ์ ์ฅ
- BBS ์์ญ์ Data์์ญ๊ณผ ๋น์ทํ์ง๋ง ์ด๊ธฐํ๋์ง ์์ ์ ์ญ๋ณ์, ์ฆ ์ ์ ๋ณ์๋ง ์ ์ฅ
3๏ธโฃ ํ(Heap) ์์ญ
: ์ฌ์ฉ์๊ฐ ์ง์ ๊ด๋ฆฌํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ์์ญ. ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ์ ์ํด์๋ง ์ฐธ์กฐ๋๊ณ ์ฌ์ฉ๋๋ฉฐ, ์ฐธ๊ณ ํ์
์ ๋ํ ์ ์ฅ๊ณต๊ฐ
- ํ์์ญ์ ์ฌ์ฉ์์ ์ํด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ๋์ ์ผ๋ก ํ ๋น๋๊ณ ํด์ ๋จ
- ๋ฎ์ ์ฃผ์์์ ๋์ ์ฃผ์์ ๋ฐฉํฅ์ผ๋ก ํ ๋น๋จ
4๏ธโฃ ์คํ(Stack) ์์ญ
: ํจ์์ ํธ์ถ๊ณผ ๊ด๊ณ๋๋ ์ง์ญ ๋ณ์์ ๋งค๊ฐ๋ณ์, ๋ฉ์๋, return๊ฐ ๋ฑ์ด ์ ์ฅ๋๋ ์์ญ.
: ํ๋ก๊ทธ๋จ์ด ์๋์ผ๋ก ์ฌ์ฉํ๋ ์์ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ด๊ธฐ ๋๋ฌธ์ ํจ์์ ํธ์ถ๊ณผ ํจ๊ป ํ ๋น๋๋ฉฐ, ํจ์์ ํธ์ถ์ด ์๋ฃ๋๋ฉด ์๋ฉธํจ.
→ ์ด๋ ๊ฒ ์คํ ์์ญ์ ์ ์ฅ๋๋ ํจ์์ ํธ์ถ ์ ๋ณด๋ฅผ ์คํ ํ๋ ์์ด๋ผ๊ณ ํจ.
- ์คํ์ฌ์ด์ฆ๋ ๊ฐ ํ๋ก์ธ์ค๋ง๋ค ํ ๋น
- ํ๋ก์ธ์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋๋ ๋ ์ฌ์ด์ฆ๊ฐ ๊ณ ์ ๋์ด ์์ด ๋ฐํ์ ์ ๋ณ๊ฒฝ์ ๋ถ๊ฐ๋ฅ
- ํ๊ณผ ์คํ์ ์ฌ์ค ๊ฐ์ ๊ณต๊ฐ์ ๊ณต์ ํ์ง๋ง ์์์ง์ ์ด ๋ค๋ฆ
- ์คํ ์์ญ์ ํธ์(Push) ๋์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ , ํ(Pop) ๋์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ธ์ถ
๐พ ์บ์ ๋ฉ๋ชจ๋ฆฌ
๐ ์ ์
CPU์ ์ฒ๋ฆฌ์๋์ ์ฃผ๊ธฐ์ต์ฅ์น์ ์ ๊ทผ ์๋ ์ฐจ์ด๋ฅผ ์ค์ด๊ธฐ ์ํด ์ฌ์ฉํ๋ ๊ณ ์ Buffer Memory
๐ ํน์ง
- CPU๊ฐ ์ฃผ๊ธฐ์ต์ฅ์น์์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ์ฌ ๋, ์์ฃผ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฅผ ์บ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํ ๋ค ๋ค์ ์ด์ฉํ ๋, ๋ฉ๋ชจ๋ฆฌ์์ ๋จผ์ ๊ฐ์ ธ์ค๋ฉด์ ์๋๋ฅผ ํฅ์์ํด
- ์บ์ ๋ฉ๋ชจ๋ฆฌ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต ๊ตฌ์กฐ์์ ๊ฐ์ฅ ๋น ๋ฅธ ์์์ด๋ฉฐ, ์ฒ๋ฆฌ์๋๊ฐ ๊ฑฐ์ CPU์ ์๋์ ๋น์ท
- ์บ์๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ฃผ ๊ธฐ์ต์ฅ์น๋ฅผ ์ ๊ทผํ๋ ํ์๊ฐ ์ค์ด๋ค์ด ์ปดํจํฐ์ ์ฒ๋ฆฌ์๋๊ฐ ํฅ์๋จ
๐ ์บ์ ๋ฉ๋ชจ๋ฆฌ ์๋ ์๋ฆฌ
์บ์๊ฐ ํจ์จ์ ์ผ๋ก ๋์ํ๋ ค๋ฉด, ์บ์์ ์ ์ฅํ ๋ฐ์ดํฐ๊ฐ ์ง์ญ์ฑ์ ๊ฐ์ ธ์ผ ํจ
โ ์ง์ญ์ฑ์ด๋, ๋ฐ์ดํฐ ์ ๊ทผ์ด ์๊ฐ์ , ํน์ ๊ณต๊ฐ์ ์ผ๋ก ๊ฐ๊น๊ฒ ์ผ์ด๋๋ ๊ฒ์ ์๋ฏธ
1๏ธโฃ ์๊ฐ ์ง์ญ์ฑ : ํน์ ๋ฐ์ดํฐ๊ฐ ํ ๋ฒ ์ ๊ทผ๋์์ ๊ฒฝ์ฐ, ๊ฐ๊น์ด ๋ฏธ๋์ ๋ ํ ๋ฒ ๋ฐ์ดํฐ์ ์ ๊ทผํ ๊ฐ๋ฅ์ฑ์ด ๋์.
์๋ฅผ ๋ค์ด, For, While ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๋ ์ฐธ์กฐ ๊ฐ๋ฅ์ฑ์ด ๋์ผ๋ฏ๋ก ๋ค์ ์ ์ฅํจ
2๏ธโฃ ๊ณต๊ฐ ์ง์ญ์ฑ : ์ก์ธ์ค๋ ๊ธฐ์ต์ฅ์์ ์ธ์ ํ ๊ธฐ์ต์ฅ์๊ฐ ์ก์ธ์ค๋ ๊ฐ๋ฅ์ฑ์ด ๋์. ์๋ฅผ ๋ค์ด, ๋ฐฐ์ด์์ ๊ฐ์ ์ฐ์ ์ ๊ทผ ์, ์ฐธ์กฐ๋ ๋ฐ์ดํฐ ๊ทผ์ฒ์ ์๋ ๋ฐ์ดํฐ๊ฐ ์ฐธ์กฐ ๊ฐ๋ฅ์ฑ์ด ๋์ผ๋ฏ๋ก ์ ์ฅํจ
๐ ์บ์ ๋ฏธ์ค(Cache Miss)
CPU๊ฐ ์์ฒญํ ๋ฐ์ดํฐ๊ฐ ์บ์์ ์์ผ๋ฉด Cache Hit๋ผ๊ณ ํ๋ฉฐ, ๋ฐ๋๋ก ์์ด์ ์ฃผ๊ธฐ์ต์ฅ์น์์ ๊ฐ์ ธ์ค๊ฒ๋๋ฉด Cache Miss๋ผ๊ณ ํจ.
1๏ธโฃ Cold Miss : ํด๋น ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์ฒ์ ๋ถ๋ฌ์ ๋ฐ์ํ๋ Miss
2๏ธโฃ Conflict Miss : A์ B๋ฅผ ์ ์ฅํด์ผ ํ๋๋ฐ, A์ B๊ฐ ๊ฐ์ ์ฃผ์์ ํ ๋น๋์ด ์๋ ๊ฒฝ์ฐ ๋ฐ์ํ๋ Miss
3๏ธโฃ Capacity Miss : ๊ณต๊ฐ์ด ๋ถ์กฑํด์ ๋ฐ์ํ๋ Miss
๐พ ๋ ์ง์คํฐ
๐ ์ ์
CPU๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ๋๋ฐ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ผ์์ ์ผ๋ก ์ ์ฅํ๋ ๋ค๋ชฉ์ ๊ณต๊ฐ ํ๋ก์ธ์ค ๋ด๋ถ์ ์๋ ์์ ๊ณต๊ฐ์ผ๋ก ์ฐ์ฐ ์ ์ด, ๋๋ฒ๊น
๋ฑ๋ฑ์ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ
- ๋ ์ง์คํฐ๋ ๊ณต๊ฐ์ ์๊ณ ๊ฐ๊ฒฉ์ ๋น์ธ์ง๋ง, CPU์ ์ง์ ์ฐ๊ฒฐ๋์ด ์์ด์ ์ฐ์ฐ ์๋๊ฐ RAM, HDD, SDD๋ณด๋ค ๋น ๋ฆ
- CPU๋ ์์ฒด์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์์ผ๋ฏ๋ก ๋ ์ง์คํฐ๋ฅผ ์ด์ฉํ์ฌ ์ฐ์ฐ์ฒ๋ฆฌ ๋ฐ ๋ฒ์ง ์ง์ ์ ๋์์ค
๐ ๋ ์ง์คํฐ์ ์บ์์ ์ฐจ์ด์
- ์บ์ : CPU์ ๋ณ๋๋ก ์๋ ๊ณต๊ฐ์ด๋ฉฐ, ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ CPU๊ฐ์ ์๋ ์ฐจ์ด๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํ ๊ฒ
- ๋ ์ง์คํฐ : CPU ์์์ ์ฐ์ฐ์ ์ฒ๋ฆฌํ๊ธฐ์ํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ณต๊ฐ
๐ ๋ ์ง์คํฐ์ ์บ์์ ๊ณตํต์
- ์ด๋ค ๋ช ๋ น์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํด๋๋ ์ ์ฅ ๊ณต๊ฐ
๐ฅ๏ธ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ
- ๋ค์ค ํ๋ก๊ทธ๋๋ฐ ์์คํ ์ ์ฌ๋ฌ ํ๋ก์ธ์ค๋ฅผ ์์ฉํ๊ธฐ ์ํด ์ฃผ๊ธฐ์ต์ฅ์น(RAM)์ ๋์ ๋ถํ ํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์์ ์ด ํ์
- ์ฆ, ํ๋๋์คํฌ์ ์๋ ํ๋ก๊ทธ๋จ์ ์ด๋ป๊ฒ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌํ ๊ฒ์ธ์ง ํ๋จํด์ผ ํจ
๐พ ๋ ผ๋ฆฌ์ฃผ์, ๋ฌผ๋ฆฌ์ฃผ์
๐ ๋ ผ๋ฆฌ์ฃผ์ : ํ๋ก์ธ์ค์์ ๋ ผ๋ฆฌ ์ฐ์ฐ์ ์ฌ์ฉํ๋ ์ฃผ์, ์ค์ ๋ฉ๋ชจ๋ฆฌ ์์ ๋ฌผ๋ฆฌ์ ์ธ ์ฃผ์๊ฐ ์๋, ๊ฐ์์ ์ฃผ์
๐ ๋ฌผ๋ฆฌ์ฃผ์ : ์ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์. MMU๊ฐ ๋ ผ๋ฆฌ์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ์ฃผ์๋ก ๋งคํ์์ผ์ค. (์ฃผ์ ๋ฐ์ธ๋ฉ)
- ๋ฌผ๋ฆฌ์ฃผ์ = ๋ ผ๋ฆฌ์ฃผ์ + ํ๋ก๊ทธ๋จ ๋ฒ ์ด์ค ๋ ์ง์คํฐ
๐พ ์ค์ํ
- ํ๋ก์ธ์ค A๊ฐ ์์ ๋, A์ ์ ์ฒด ๋ถ๋ถ์ ๋ชจ๋ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆฌ์ง ์๊ณ , ํ์ํ ์ผ๋ถ๋ถ๋ง์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆด ์ ์์. ๊ทธ๋ฆฌ๊ณ ๋๋จธ์ง ๋ถ๋ถ์ ๋ณด์กฐ๊ธฐ์ต์ฅ์น์ ์ค์์์ญ์ ๋
- Swap Out : ๋ฉ๋ชจ๋ฆฌ์์ ํ์์์ด์ง ๋ถ๋ถ์ ์ค์ ์์ญ์ผ๋ก ๋ด๋ณด๋ด๋ ๊ฒ
- Swap In : ๋ฉ๋ชจ๋ฆฌ์ ํ์ํ ๋ถ๋ถ์ ์ค์์์ญ์์ ๋ค์ฌ์ค๋ ๊ฒ
๐พ ๋จํธํ(Fragmentation)
- ๊ธฐ์ต ์ฅ์น์ ๋น ๊ณต๊ฐ ๋๋ ์๋ฃ๊ฐ ์ฌ๋ฌ ์กฐ๊ฐ์ผ๋ก ๋๋๋ ํ์
- ํ๋ก์ธ์ค๋ค์ด ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋๊ณ ์ ๊ฑฐ๋๋ ์ผ์ด ๋ฐ๋ณต๋๋ฉด, ํ๋ก์ธ์ค๋ค์ด ์ฐจ์งํ๋ ๋ฉ๋ชจ๋ฆฌ ํ ์ฌ์ด์ ์ฌ์ฉํ์ง ๋ชปํ ๋งํผ์ ์์ ๊ณต๊ฐ์ด ๋์ด๋๊ฒ ๋จ
1๏ธโฃ ๋ด๋ถ ๋จํธํ
- ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๋จ๋ ๋ถ๋ถ
- ํ๋ก์ธ์ค๊ฐ ์์ฒญํ ์๋ณด๋ค ๋ ๋ง์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ ๋ ๋ฐ์ํ๋ฉฐ, ๋ฉ๋ชจ๋ฆฌ ๋ถํ ์์ ๊ณต๊ฐ๊ณผ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ๊ณต๊ฐ์ ํฌ๊ธฐ ์ฐจ์ด๋ฅผ ์๋ฏธ
2๏ธโฃ ์ธ๋ถ ๋จํธํ
- ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ์ค ์ฌ์ฉํ์ง ๋ชปํ๊ฒ ๋๋ ๋ถ๋ถ
- ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐ ํด์ฒด ์์
์ ๋ฐ๋ณต์ผ๋ก ์์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ค๊ฐ ์ค๊ฐ ์กด์ฌํ ์ ์์. ์ด๋ ๊ฒ ์ฌ์ฉํ์ง ์๋ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์กด์ฌํด์ ์ด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ถฉ๋ถํ์ง๋ง ์ค์ ๋ก ํ ๋นํ ์ ์๋ ์ํฉ
- ์ธ๋ถ ๋จํธํ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์์ถ์ ์ด์ฉํ์ฌ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ๊ณต๊ฐ์ ํ์ชฝ์ผ๋ก ๋ชฐ ์ ์์ง๋ง, ์์
ํจ์จ์ด ์ข์ง๋ ์์
๐พ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐฉ์
๐ ์ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ (์ฐ์ ํ ๋น ๋ฐฉ์)
- ํ๋ก๊ทธ๋จ ์ ์ฒด๊ฐ ํ๋์ ์ปค๋ค๋ ๊ณต๊ฐ์ ์ฐ์์ ์ผ๋ก ํ ๋น๋์ด์ผ ํจ
๊ณ ์ ๋ถํ ๊ธฐ๋ฒ
: ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ณ ์ ๋ ํฌ๊ธฐ์ ํํฐ์ ์ผ๋ก ๋๋์ด ๋๊ณ , ๊ทธ์ ๋ง์ถฐ ํ๋ก์ธ์ค๋ฅผ ์ ์ฌ. (ํ๋์ ๋ถํ ์๋ ํ๋์ ํ๋ก๊ทธ๋จ๋ง์ ์ ์ฌํ ์ ์์)
๐ข ์ฅ์
- ์๋ฆฌ๊ฐ ๋จ์ํจ
- ์์คํ ์์ฑ ์ ๋ฏธ๋ฆฌ ์ฃผ๊ธฐ์ต์ฅ์น๊ฐ ๋ถํ ๋๋ฏ๋ก ์ด์์ฒด์ ์ค๋ฒํค๋๊ฐ ์ค์ด๋ฆ
๋์ ๋ถํ ๊ธฐ๋ฒ
: ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋๋ ํ๋ก๊ทธ๋จ์ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋ถํ ์ ํฌ๊ธฐ, ๊ฐฏ์๊ฐ ๋์ ์ผ๋ก ๋ณํ๋ ๋ฐฉ์.
๐ ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฌธ์ : ๋ฉ๋ชจ๋ฆฌ์ ๊ฐ์ฉ ๊ณต๊ฐ ์ค ์ด๋ค ์์น์ ํ๋ก๊ทธ๋จ์ ์ ์ฌํ ๊ฒ์ธ์ง ๊ฒฐ์ ํ๋ ๋ฌธ์ . ๋ฐฐ์น ์๊ณ ๋ฆฌ์ฆ์ ์ํด ์ด๋ฅผ ํด๊ฒฐํจ
1. ์ต์ด ์ ํฉ(First-fit) : ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ์ฌํ ์ ์๋ ๊ฐ์ฉ ๊ณต๊ฐ์ ํ์ํ๋ค๊ฐ, ์ต์ด๋ก ๋ฐ๊ฒฌํ ์กฐ๊ฑด์ ๋ง๋ ๊ฐ์ฉ ๊ณต๊ฐ์ ์ ์ฌํจ. ์๊ฐ์ ์ธ ์ธก๋ฉด์์ ํจ์จ์ ์
2. ์ต์ ์ ํฉ(Best-fit) : ๊ฐ์ฉ ๊ณต๊ฐ์ ๋ชจ๋ ํ์ํ ํ, ์ ์ฌํ ์ ์๋ ๊ฐ์ฅ ์์ ๊ฐ์ฉ ๊ณต๊ฐ์ ์ ์ฌ. : ๋งค์ฐ ์์ ๊ฐ์ฉ ๊ณต๊ฐ์ด ์๊ธธ ์ ์์ง๋ง, ๋์ฒด๋ก ๊ณต๊ฐ์ ์ธ ์ธก๋ฉด์์ ํจ์จ์ . ๋ญ๋น๋๋ ๊ฐ์ฉ ๊ณต๊ฐ์ ์ค์ธ๋ค๋ ๋งค์ปค๋์ฆ
3. ์ต์ ์ ํฉ(Worst-fit) : ๊ฐ์ฉ ๊ณต๊ฐ์ ๋ชจ๋ ํ์ํ ํ, ์ ์ฌํ ์ ์๋ ๊ฐ์ฅ ํฐ ๊ฐ์ฉ ๊ณต๊ฐ์ ์ ์ฌํจ : ๋์ค์ ์ ์ฌํ๊ณ ๋จ์ ๊ฐ์ฉ๊ณต๊ฐ์ ๋ค๋ฅธ ํ๋ก์ธ์ค๋ฅผ ์ ์ฌํ ์ ์๊ฒ ๋ค๋ ๋งค์ปค๋์ฆ.→ ์ผ๋ฐ์ ์ผ๋ก (์ต์ด์ ํฉ, ์ต์ ์ ํฉ) > ์ต์ ์ ํฉ ์ผ๋ก ํจ์จ์
๐ ๋ถ์ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ
- ํ๋ก๊ทธ๋จ์ ์ผ๋ถ๊ฐ ์๋ก ๋ค๋ฅธ ์ฃผ์ ๊ณต๊ฐ์ ํ ๋น๋ ์ ์๋ ๊ธฐ๋ฒ.
- ๋จํธํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ์๋ ๊ธฐ๋ฒ์ผ๋ก, ์ธ๋ถ ๋จํธํ ํด์๋ฅผ ์ํ ํ์ด์ง๊ณผ ๋ด๋ถ ๋จํธํ ํด์๋ฅผ ์ํ ์ธ๊ทธ๋ฉํ ์ด์ ์ผ๋ก ๋๋จ
'CS > OS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[CS] ํ์ผ ์์คํ (File System) (0) | 2024.03.02 |
---|---|
[CS] ํ์ด์ง ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ (0) | 2024.03.01 |
[CS] ํ์ด์ง๊ณผ ์ธ๊ทธ๋ฉํ ์ด์ (0) | 2024.03.01 |
[CS] ์ธ๋งํฌ์ด(Semaphore) & ๋ฎคํ ์ค(Mutex) (0) | 2024.02.25 |
[CS] ๊ฒฝ์ ์ํ(Race Condition) (0) | 2024.02.25 |