๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ ๋ต์ ์ ํ๋ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ํจ์จ์ ์ธ ์ฌ์ฉ๊ณผ ๋ฉ๋ชจ๋ฆฌ ์ฐธ์กฐ๋ฐฉ์์ ์ ๊ณตํ๊ธฐ ์ํ ์ ๋ต์ด๋ค.
์ค์ํ(Swapping)
-
์ฌ๋ฌ ์ด์ ๋ก ์คํ๋์ง ์๋ ํ๋ก์ธ์ค๋ฅผ ์์๋ก ๋ณด์กฐ๊ธฐ์ต์ฅ์น ์ผ๋ถ ์์ญ์ผ๋ก ๋ณด๋ด๊ณ ๋์จ ๋น ๊ณต๊ฐ์ ๋ ๋ค๋ฅธ ํ๋ก์ธ์ค๋ฅผ ์ ์ฌํ์ฌ ์คํํ๋ ๋ฐฉ์์ ๋ปํ๋ค.
-
๋ฉ๋ชจ๋ฆฌ ๋ด์ ์๋ ํ๋ก์ธ์ค๋ค ์ค์์ ์คํ๋์ง ์๋ ํ๋ก์ธ์ค๋ฅผ ์ค์ ์์ญ์ ๋๋ค. ์ด ๊ณผ์ ์ ์ค์ ์์(out)์ด๋ผ๊ณ ๋ถ๋ฅด๊ณ ๋ฐ๋๋ก ๋ฉ๋ชจ๋ฆฌ์ ๋น ๊ณต๊ฐ์ด ์๊ฒจ ์ค์ ์์ญ์ ์๋ ํ๋ก์ธ์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ๋ก ์ฎ๊ธฐ๋ ๊ฒ์ ์ค์ ์ธ(in)์ด๋ผ๊ณ ํ๋ค.
-
์ค์ํ์ ํตํด์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฅํ๋ฉฐ ํจ์จ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ฅผ ํ ์ ์๋ค. ํ์ง๋ง ์ฃผ ๋ฉ๋ชจ๋ฆฌ์ ๋ณด์กฐ ๊ธฐ์ต ์ฅ์น ๊ฐ์ ์ด๋ํ๋ ์์
์์ ๋์คํฌ I/O๊ฐ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ์ฑ๋ฅ์ด ์ ํ๋ ์ ์๋ค.
๋จํธํ
๋จํธํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฌ์ ๊ฐ ์์์๋ ํ๋ก์ธ์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋์ง ๋ชปํด ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ญ๋น๋๋ ํ์์ ๋งํ๋ค.
์ธ๋ถ ๋จํธํ
- ์ธ๋ถ ๋จํธํ๋ ํ๋ก์ธ์ค๋ค์ด ๋ฉ๋ชจ๋ฆฌ์ ์ฐ์์ ์ผ๋ก ํ ๋น๋๋ ํ๊ฒฝ์์ ์ฌ์ฉํ ์ ์๋ ๋น ๊ณต๊ฐ์ ์ ๋ถ ํฉ์น ๊ณต๊ฐ๋ณด๋ค ์์ ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ ์ ์๋ ํ์์ ์ธ๋ถ ๋จํธํ๋ผ๊ณ ํ๋ค.
๋ด๋ถ ๋จํธํ
- ๋ด๋ถ ๋จํธํ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ ๋ ํ์ํ ์๋ณด๋ค ๋ ํฐ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํ ๋น๋์ด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ๋ญ๋น๊ฐ ๋ฐ์ํ ํ์์ ๋งํ๋ค.
๋จํธํ ํด๊ฒฐ
ํตํฉ
- ์ธ๋ถ ๋จํธํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก ์ธ๋ถ ๋จํธํ๋ก ์ธํด ๋ถ์ฐ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ๋ค ์ค ์ธ์ ํด ์๋ ๊ณต๊ฐ๋ผ๋ฆฌ ํตํฉ์์ผ ํฐ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ผ๋ก ํฉ์น๋ ๊ธฐ๋ฒ์ด๋ค.
์์ถ
- ์ธ๋ถ ๋จํธํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ์ฌ๋ฐฐ์น๋ฅผ ํตํด ๋จํธํ๋์ด ์๋ ๊ณต๊ฐ์ ํ๋๋ก ํฉ์น๋ ๋ฐฉ๋ฒ์ด๋ค.
ํ์ด์ง
- ์ธ๋ถ ๋จํธํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์ ๋ฌผ๋ฆฌ ์ฃผ์ ๊ณต๊ฐ์ ํ๋ ์ ๋จ์๋ก ์๋ฅด๊ณ , ํ๋ก์ธ์ค์ ๋
ผ๋ฆฌ ์ฃผ์ ๊ณต๊ฐ์ ํ์ด์ง ๋จ์๋ก ์๋ฅธ ๋ค ๊ฐ ํ์ด์ง๋ฅผ ํ๋ ์์ ํ ๋นํ๋ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ์ด๋ค.
- ํ์ด์ง๋ค์ ๋
ผ๋ฆฌ์ ์ ์ฐ์์ ์ธ ๊ณต๊ฐ์ ํ ๋น๋์ง๋ง, ๋ฌผ๋ฆฌ์ ์ผ๋ก๋ ๋ถ์ฐ๋์ด ํ ๋น๋๋ค.
- ํ์ด์ง์์๋ ์ค์ํ์ ์ฌ์ฉํ ์ ์๋ค. ํ์ด์ง์ ์ฌ์ฉํด์ ํ๋ก์ธ์ค ์ ์ฒด๊ฐ ์ฎ๊ฒจ์ง๋ ๊ฒ์ด ์๋ ํ์ด์ง ๋จ์๋ก ์ค์ ์์, ์ค์ ์ธ์ด ๋๋ค.
์ธ๊ทธ๋ฉํ
์ด์
- ์ธ๊ทธ๋ฉํ
์ด์
์ ํ๋ก์ธ์ค๋ฅผ ๋
ผ๋ฆฌ์ ์ธ ๋ด์ฉ์ ๊ธฐ๋ฐ์ผ๋ก ๋๋์ด ๋ฉ๋ชจ๋ฆฌ์ ๋ฐฐ์นํ๋ ๊ฒ์ด๋ค.
- ํ๋ก์ธ์ค๋ฅผ code ์์ญ, data ์์ญ, statck ์์ญ ๋ฑ์ผ๋ก ๋๋๋ ๊ฒ๋ ์ธ๊ทธ๋ฉํ
์ด์
์ด๋ผ๊ณ ํ ์ ์๋ค.
- ํ๋ก์ธ์ค๋ฅผ ์ธ๊ทธ๋จผํธ์ ์งํฉ์ผ๋ก ํํํ๋ค. ๋
ผ๋ฆฌ ๋จ์๋ก๋ main program, procedure, function, method, object, stack, local variable, global variable ๋ฑ์ด ์๋ค.
ํ์ด์ง ๊ต์ฒด
ํ์ด์ง ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ FIFO(First-In_First-Out)
- FIFO ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ฅ ๋จผ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์จ ํ์ด์ง๋ฅผ ๊ฐ์ฅ ๋จผ์ ๋ด๋ณด๋ด๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๊ตฌํ์ด ๊ฐ๋จํ์ง๋ง ์ฑ๋ฅ์ด ์ข์ง ์๋ค.
ํ์ด์ง ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ LRU(Least Recently Used)
- LRU ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ฅ ์ค๋ซ๋์ ์ฌ์ฉํ์ง ์์ ํ์ด์ง๋ฅผ ๊ต์ฒดํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ์ฑ๋ฅ์ด ์ข๊ณ ๋ง์ ์ด์์ฒด์ ๊ฐ ์ ํํ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
ํ์ด์ง ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ LFU(Least Frequently Used)
- LFU ์๊ณ ๋ฆฌ์ฆ์ ์ฐธ์กฐํ์๊ฐ ๊ฐ์ฅ ์ ์ ํ์ด์ง๋ฅผ ๊ต์ฒดํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๊ต์ฒด ๋์์ด ์ฌ๋ฌ ๊ฐ๋ฉด ๊ฐ์ฅ ์ค๋ซ๋์ ์ฌ์ฉํ์ง ์์ ํ์ด์ง๋ฅผ ๊ต์ฒดํ๋ค.
์ฐ๋ ์ฑ
- ํ๋ก์ธ์ค๊ฐ ์ค์ ์คํ๋๋ ์๊ฐ๋ณด๋ค ํ์ด์ง์ ๋ง์ ์๊ฐ์ ์์ํด ์ฑ๋ฅ์ด ๋๋ ค์ง๋ ๊ฒ์ ์ฐ๋ ์ฑ์ด๋ผ๊ณ ํ๋ค.