์๋ก
์ด์ ๊ฒ์๊ธ์์๋ TLB(translation look-aside buffer)๊ฐ ํฌํจ๋ ํ์ด์ง ์์คํ ์์ ๋ ผ๋ฆฌ ์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์๋ก ๋ณํํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ ๋ฆฌํ์์ต๋๋ค. ์ด๋ฒ ๊ฒ์๊ธ์์๋ ํ์ด์ง ํ ์ด๋ธ์ ๊ตฌ์ฑํ๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ธ ์๋ ์ธ ๊ฐ์ง ๋ฐฉ๋ฒ์ ๋ํด ํ๋ฒ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
- ๊ณ์ธต์ ํ์ด์ง
- ํด์ ํ์ด์ง ํ ์ด๋ธ
- ์ญ ํ์ด์ง ํ ์ด๋ธ
์ด ์ฅ์ ๋ชฉํ
1. ๋ ผ๋ฆฌ ์ฃผ์์ ๋ฌผ๋ฆฌ ์ฃผ์์ ์ฐจ์ด์ ๊ณผ ์ฃผ์๋ฅผ ๋ณํํ ๋ MMU(๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ฅ์น)์ ์ญํ ์ ์ ๋ฆฌํด ๋ณธ๋ค.(์ด์ ๊ฒ์๊ธ)
2. ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฐ์์ ์ผ๋ก ํ ๋นํ๊ธฐ ์ํด ์ต์ด, ์ต์ , ๋ฐ ์ต์ ์ ํฉ ์ ๋ต์ ์ ์ฉํด ๋ณธ๋ค.(์ด์ ๊ฒ์๊ธ)
3. ๋จํธํ์ ๋ํด ์์๋ณด๊ณ ๋จํธํ์ ๋ ๊ฐ์ง ์ข ๋ฅ ๋ด๋ถ ๋ฐ ์ธ๋ถ ๋จํธํ์ ์ฐจ์ด์ ์ ์ ๋ฆฌํด ๋ณธ๋ค. (์ด์ ๊ฒ์๊ธ)
4. ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ํ์ด์ง ๊ธฐ๋ฒ์ ์ดํด๋ณธ๋ค. (์ด์ ๊ฒ์๊ธ)
5. TLB(translation look-aside buffer)๊ฐ ํฌํจ๋ ํ์ด์ง ์์คํ ์์ ๋ ผ๋ฆฌ ์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์๋ก ๋ณํํ๋ค. (์ด์ ๊ฒ์๊ธ)
6. ๊ณ์ธต์ ํ์ด์ง, ํด์ ํ์ด์ง ๋ฐ ์ญ ํ์ด์ง ํ ์ด๋ธ์ ์ค๋ช ํ๋ค. (ํ์ฌ ๊ฒ์๊ธ)
1. ๊ณ์ธต์ ํ์ด์ง(hierachical Paging)
์์ฆ ๋ง์ ํ๋ ์ปดํจํฐ๋ ๋งค์ฐ ํฐ ์ฃผ์ ๊ณต๊ฐ(2^32 ~ 2^64)์ ๊ฐ์ง๋๋ค. ์ด๋ฌํ ํ๊ฒฝ์์๋ ํ์ด์ง ํ ์ด๋ธ๋ ์๋นํ ์ปค์ง๋๋ค. ์๋ฅผ ๋ค์ด, 32๋นํธ ๋ ผ๋ฆฌ ์ฃผ์ ๊ณต๊ฐ์ ๊ฐ์ง ์์คํ ์ ์๊ฐํด ๋ด ์๋ค. ์ด ์์คํ ์์ ํ์ด์ง ํฌ๊ธฐ๊ฐ 4KB(2^12)๋ผ๋ฉด ํ์ด์ง ํ ์ด๋ธ์ 100๋ง(2^20 = 2^32 / 2^12) ๊ฐ ์ด์์ ํญ๋ชฉ์ผ๋ก ๊ตฌ์ฑ๋ ๊ฒ์ ๋๋ค. ๊ฐ ํญ๋ชฉ์ ๋ค์ 4B๋ก ๊ตฌ์ฑ๋๊ธฐ ๋๋ฌธ์ ๊ฐ ํ๋ก์ธ์ค๋ ํ์ด์ง ํ ์ด๋ธ๋ง์ ์ํด์๋ 4 MB์ ๊ณต๊ฐ์ด ํ์ํ๊ฒ ๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ ๋ชจ๋ ํ์ด์ง ํ ์ด๋ธ์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์์ ์ฐ์์ ์ผ๋ก ํ ๋นํ๊ธฐ์๋ ์๋นํ ๋ฌด๋ฆฌ๊ฐ ์์ต๋๋ค. ๊ทธ๋์ ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ํ์ด์ง ํ ์ด๋ธ์ ์ฌ๋ฌ ๊ฐ์ ์์ ์กฐ๊ฐ์ผ๋ก ๋๋๋ ๊ฒ์ธ๋ฐ ์ด๊ฒ๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ด ๊ฐ๋ฅํฉ๋๋ค.
ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ 2๋จ๊ณ ํ์ด์ง ๊ธฐ๋ฒ(two-level paging scheme)์ผ๋ก์ ํ์ด์ง ํ ์ด๋ธ ์์ฒด๊ฐ ๋ค์ ํ์ด์ง ๋๊ฒ ํ๋ ๊ฒ์ ๋๋ค.(์๋ ์ด๋ฏธ์ง)
์์์ 4 KB์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง 32๋นํธ ๊ธฐ๊ณ์ ์๋ฅผ ๋ค์ ๋ค์ด๋ด ์๋ค. ์ด ๊ฒฝ์ฐ ๋ ผ๋ฆฌ ์ฃผ์๋ 20๋นํธ์ง๋ฆฌ ํ์ด์ง ๋ฒํธ์ 12๋นํธ์ง๋ฆฌ ํ์ด์ง ์คํ์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ค. ์ด์ ๋ ํ์ด์ง ํ ์ด๋ธ๋ ํ์ด์ง๋ก ๋๋์ด์ง๊ธฐ ๋๋ฌธ์, ํ์ด์ง ๋ฒํธ๋ ๋ค์ 10๋นํธ์ง๋ฆฌ ํ์ด์ง ๋ฒํธ์ 10๋นํธ์ง๋ฆฌ ํ์ด์ง ์คํ์ ์ผ๋ก ๋๋์ด์ง๋๋ค. ์ฆ, ๋ ผ๋ฆฌ ์ฃผ์๋ ๋ค์๊ณผ ๊ฐ์ด ๋ฉ๋๋ค
์ฌ๊ธฐ์ p1์ ๋ฐ๊นฅ ํ์ด์ง ํ ์ด๋ธ์ ์ธ๋ฑ์ค์ด๊ณ , p2๋ ์์ชฝ ํ์ด์ง ํ ์ด๋ธ์ ํ์ด์ง ๋ด์ ์คํ์ ์ ๋๋ค. ์๋ ์ด๋ฏธ์ง๋ ์ด ๊ตฌ์กฐ์ ์ํ ์ฃผ์ ๋ณํ ๊ธฐ๋ฒ์ ๋ํ๋ด๊ณ ์์ต๋๋ค.
์ด ๋ฐฉ์์์๋ ์ฃผ์ ๋ณํ์ด ๋ฐ๊นฅ ํ์ด์ง ํ ์ด๋ธ์์ ์์ํ์ฌ ์์ชฝ์ผ๋ก ๋ค์ด์ค๋ฏ๋ก ์ด ๋ฐฉ์์ forward-mapped ํ์ด์ง ํ ์ด๋ธ์ด๋ผ๊ณ ๋ ๋ถ๋ฆ ๋๋ค.
64๋นํธ ๋ ผ๋ฆฌ ์ฃผ์ ๊ณต๊ฐ์ ๊ฐ์ง ์์คํ ์์๋ 2๋จ๊ณ ํ์ด์ง ๊ธฐ๋ฒ๋ ์ ์ ํ์ง ๋ชปํฉ๋๋ค. ์ด ์ ์ ์ค๋ช ํ๊ธฐ ์ํด์ ํ์ด์ง ํฌ๊ธฐ๊ฐ 4 KB(2^12)๋ผ๊ณ ๊ฐ์ ํด๋ด ์๋ค. ์ด ๊ฒฝ์ฐ ํ์ด์ง ํ ์ด๋ธ์ 2^52 ํญ๋ชฉ์ผ๋ก ๊ตฌ์ฑ๋ ๊ฒ์ ๋๋ค. 2๋จ๊ณ ํ์ด์ง ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ฉด ์์ชฝ ํ์ด์ง ํ ์ด๋ธ์ 1ํ์ด์ง๊ฐ ๋๊ฑฐ๋ 2^10๊ฐ์ 4B์ง๋ฆฌ ํญ๋ชฉ์ ๊ฐ์ง๊ฒ ๋ ๊ฒ์ ๋๋ค. ์ฃผ์๋ ๋ค์๊ณผ ๊ฐ์ด ๋ํ๋ด์ง ๊ฒ์ ๋๋ค.
๋ฐ๊นฅ ํ์ด์ง ํ ์ด๋ธ์ 2^42 ํญ๋ชฉ์ ๊ฐ์ง๊ฒ ๋๊ณ 2^44 ๋ฐ์ดํธ๋ก ๊ตฌ์ฑ๋ ๊ฒ์ ๋๋ค. ์ด์ ๊ฐ์ด ํฐ ๋ฐ๊นฅ ํ ์ด๋ธ์ ํผํ๋ ๋ฐฉ๋ฒ์ ๋ฐ๊นฅ ํ์ด์ง ํ ์ด๋ธ์ ์๊ฒ ๋๋๋ ๊ฒ์ ๋๋ค. ์ด ๋ฐฉ์์ 32๋นํธ ํ๋ก์ธ์์์ ํจ์จ์ฑ๊ณผ ์ ์ฐ์ฑ์ ํฅ์ํ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค.
์ด์ ๊ฐ์ ๋ฐฉ๋ฒ์๋ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ ์ ์์ต๋๋ค. ์ฒซ์งธ๋ก, ๋ฐ๊นฅ ํ์ด์ง ํ ์ด๋ธ์ ํ์ด์ง ์ํด์ผ๋ก์จ 3๋จ๊ณ ํ์ด์ง ๋ฐฉ๋ฒ์ ๋ง๋ค ์ ์์ต๋๋ค. ๋ฐ๊นฅ ํ์ด์ง ํ ์ด๋ธ์ ํ์ค ํฌ๊ธฐ ํ์ด์ง๋ค๋ก ๊ตฌ์ฑ๋๋ค๊ณ ๊ฐ์ ํด๋ด ์๋ค(2^10 ํญ๋ชฉ, ๋๋ 2^12 ๋ฐ์ดํธ). ์ด ๊ฒฝ์ฐ 64๋นํธ ์ฃผ์ ๊ณต๊ฐ์ ์ฌ์ ํ ๊ด๋ฆฌํ๊ธฐ๊ฐ ์ด๋ ต์ต๋๋ค.
๋ฐ๊นฅ ํ์ด์ง ํ ์ด๋ธ์ ์ฌ์ ํ 2^34๋ฐ์ดํธ(16 GB)์ ํฌ๊ธฐ๋ฅผ ์๊ตฌํฉ๋๋ค.
๋ค์ ๋จ๊ณ๋ 2๋ฒ์งธ ๋ฐ๊นฅ ํ ์ด๋ธ ์์ฒด๋ฅผ ํ์ด์ง ํ๋ ๋ฑ์ 4๋จ๊ณ ํ์ด์ง ๊ธฐ๋ฒ์ ์ฌ์ฉํ ์ ์์ ๊ฒ์ ๋๋ค. 64๋นํธ ๊ตฌ์กฐ๋ 7๋จ๊ณ๋ฅผ ํ์ด์ง ํด์ผ ํ๋ฉฐ ๊ฐ ๋ ผ๋ฆฌ ์ฃผ์๋ฅผ ๋งคํํ๊ธฐ ์ํด ๋๋ฌด ๋ง์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ ํ์๋ก ํ๊ธฐ ๋๋ฌธ์ ๋นํ์ค์ ์ ๋๋ค. ์ด ์์์ ์ผ๋ฐ์ ์ผ๋ก ์ฐ๋ฆฌ๋ 64๋นํธ ๊ตฌ์กฐ์์๋ ๊ณ์ธต์ ํ์ด์ง ํ ์ด๋ธ์ด ๋ถ์ ํฉํ๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
2. ํด์ ํ์ด์ง ํ ์ด๋ธ(Hashed Page Table)
์ฃผ์ ๊ณต๊ฐ์ด 32๋นํธ๋ณด๋ค ์ปค์ง๋ฉด ๊ฐ์ ์ฃผ์๋ฅผ ํด์๋ก ์ฌ์ฉํ๋ ํด์ ํ์ด์ง ํ ์ด๋ธ์ ๋ง์ด ์ฌ์ฉํฉ๋๋ค. ํด์ ํ์ด์ง ํ ์ด๋ธ์ ๊ฐ ํญ๋ชฉ์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ด๊ณณ์๋ ์ถฉ๋์ ์ผ์ผ์ผ์ ๋ชจ๋ ์ด๊ณณ์ผ๋ก ํด์๋๋ ์์๋ค์ด ๋งค๋ฌ๋ฆฌ๊ฒ ๋ฉ๋๋ค. ๊ฐ ์์๋ ์ธ ๊ฐ์ ํ๋๋ฅผ ๊ฐ์ง๋๋ค.
- ๊ฐ์ ํ์ด์ง ๋ฒํธ
- ๋งคํ๋๋ ํ์ด์ง ํ๋ ์ ๋ฒํธ
- ์ฐ๊ฒฐ ๋ฆฌ์คํธ์์ ๋ค์ ์์ ํฌ์ธํฐ
์ฌ๊ธฐ์๋ ์๊ณ ๋ฆฌ์ฆ์ด ๋ค์๊ณผ ๊ฐ์ด ๋์ํฉ๋๋ค.
- ๊ฐ์ ์ฃผ์ ๊ณต๊ฐ์ผ๋ก๋ถํฐ ํ์ด์ง ๋ฒํธ๊ฐ ์ค๋ฉด ๊ทธ๊ฒ์ ํด์ฑํ๋ค.
- ๊ทธ๊ฒ์ผ๋ก ํด์ ํ์ด์ง ํ ์ด๋ธ์์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ๋ฐ๋ผ๊ฐ๋ฉฐ ์ฒซ ๋ฒ์งธ ์์์ ๊ฐ์ ํ์ด์ง ๋ฒํธ๋ฅผ ๋น๊ตํด ๋ณธ๋ค.
- ๋ง์ฝ ์ผ์นํ๋ฉด ๊ทธ์ ๋์ํ๋ ํ์ด์ง ํ๋ ์ ๋ฒํธ๋ฅผ ๊ฐ์ ธ์ ๋ฌผ๋ฆฌ ์ฃผ์๋ฅผ ์ป๋๋ค.
- ์ผ์นํ์ง ์๋ค๋ฉด ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ๊ทธ๋ค์ ์์๋ก ๋๊ฐ์ ์ผ์ ๋ฐ๋ณตํ๋ค.
์๋ ์ด๋ฏธ์ง๋ ์ ๊ณผ์ ์ ์ ๋ํ๋ด๊ณ ์์ต๋๋ค.
64๋นํธ ์์คํ
์์ ์ ์ฉํ๋๋ก ๋ณํ๋ ํด์ ํ
์ด๋ธ ๊ธฐ๋ฒ์ด ์ ์๋์์ต๋๋ค. ์ด ๋ณํ ๊ธฐ๋ฒ์ ํด์ ํ
์ด๋ธ๊ณผ ๋น์ทํ ํด๋ผ์คํฐ ํ์ด์ง ํ
์ด๋ธ์ ์ฌ์ฉํฉ๋๋ค. ํด์ ํ์ด์ง ํ
์ด๋ธ์ ๊ฐ ํญ๋ชฉ์ด ํ ๊ฐ์ ํ์ด์ง๋ง ๊ฐ๋ฆฌํค๋ ๊ฒ์ ๋ฐํด ํด๋ฌ์คํฐ ํ์ด์ง ํ
์ด๋ธ์ ๊ฐ ํญ๋ชฉ์ ์ฌ๋ฌ(์๋ฅผ ๋ค๋ฉด 16๊ฐ) ํ์ด์ง๋ฅผ ๊ฐ๋ฆฌํต๋๋ค. ๋ฐ๋ผ์ ํ ๊ฐ์ ํ์ด์ง ํ
์ด๋ธ ํญ๋ชฉ์ด ์ฌ๋ฌ ํ์ด์ง ํ๋ ์์ ๋ํ ๋ณํ ์ ๋ณด๋ฅผ ์ง๋ ์ ์์ต๋๋ค. ํด๋ฌ์คํฐ ํ์ด์ง ํ
์ด๋ธ์ ์ฑ๊ธด(sparse, ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์์ stack์์ญ๊ณผ heap์์ญ ์ฌ์ด์ ๋น์ด์๋ ๋ฉ๋ชจ๋ฆฌ) ์ฃผ์ ๊ณต๊ฐ์ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋ฉ๋๋ค. ์ฆ ๋ฉ๋ชจ๋ฆฌ ์ก์ธ์ค๊ฐ ๋น์ฐ์์ ์ด๋ฉด์ ์ ์ฃผ์ ๊ณต๊ฐ์ผ๋ก ๋๊ฒ ํผ์ ธ ๋์ค๋ ๊ฒฝ์ฐ์ ์ ์ฉํฉ๋๋ค.
3. ์ญ ํ์ด์ง ํ ์ด๋ธ(Inverted Page Table)
๋ณดํต ํ๋ก์ธ์ค๋ ๊ฐ์ ํ๋์ฉ ํ์ด์ง ํ ์ด๋ธ์ ๊ฐ์ง๊ณ ๋ ํ์ด์ง ํ ์ด๋ธ์ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ํ์ด์ง๋ง๋ค ํ๋์ ํญ๋ชฉ์ ๊ฐ์ง๋๋ค. ํ๋ก์ธ์ค๋ ํ์ด์ง์ ๊ฐ์ ์ฃผ์๋ฅผ ํตํ์ฌ ํ์ด์ง๋ฅผ ์ฐธ์กฐํ๊ธฐ ๋๋ฌธ์ ์ด ํ ์ด๋ธ ๊ตฌ์กฐ๋ ์์ฐ์ค๋ฝ์ต๋๋ค. ์ด์์ฒด์ ๋ ํ๋ก์ธ์ค๊ฐ ๊ฐ์ ํ์ด์ง ์ฃผ์๋ฅผ ์ ์ํ ๋๋ง๋ค ๊ทธ๊ฒ์ ์ค์ ํ์ด์ง ์ฃผ์๋ก ๋ณํ์์ผ ์ฃผ์ด์ผ ํฉ๋๋ค. ํ์ด์ง ํ ์ด๋ธ์ ๊ฐ์ ์ฃผ์์ ๋ํด ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋์ด ์๊ณ ์ด์์ฒด์ ๋ ํ ์ด๋ธ ๋ด์ ์ด๋ ๊ณณ์ ์ํ๋ ๋ฌผ๋ฆฌ ํ์ด์ง๊ฐ ์๋์ง๋ฅผ ๊ณ์ฐํ ์ ์๊ณ , ์ด ๊ฐ์ ํตํด์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ก์ธ์ค ํ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฒ์ ๋จ์ ์ค ํ๋๋ ๊ฐ ํ์ด์ง ํ ์ด๋ธ ํญ๋ชฉ์ ๊ฐ์๊ฐ ์๋ฐฑ๋ง ๊ฐ๊ฐ ๋ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ํ ์ด๋ธ์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ์ฉ์ ์ถ์ ํ๊ธฐ ์ํด ๋ง์ ์์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋นํฉ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ํ ๋ฐฉ๋ฒ์ด ์ญ ํ์ด์ง ํ ์ด๋ธ(inverted page table)์ ๋๋ค. ์ญ ํ์ด์ง ํ ์ด๋ธ์์๋ ๋ฉ๋ชจ๋ฆฌ ํ๋ ์๋ง๋ค ํ ํญ๋ชฉ์ฉ์ ํ ๋นํฉ๋๋ค. ๊ฐ ํญ๋ชฉ์ ๊ทธ ํ๋ ์์ ์ฌ๋ผ์ ์๋ ํ์ด์ง ์ฃผ์, ๊ทธ๋ฆฌ๊ณ ๊ทธ ํ์ด์ง๋ฅผ ์์ ํ๊ณ ์๋ ํ๋ก์ธ์ค์ ID๋ฅผ ํ์ํ๊ณ ์์ต๋๋ค. ์ด๋ ๊ฒ ๋๋ฉด ์์คํ ์๋ ๋จ ํ๋์ ํ์ด์ง ํ ์ด๋ธ๋ง์ด ์กด์ฌํ๊ฒ ๋๊ณ , ํ ์ด๋ธ ๋ด ๊ฐ ํญ๋ชฉ์ ๋ฉ๋ชจ๋ฆฌ ํ ํ๋ ์์ฉ์ ๊ฐ๋ฆฌํค๊ฒ ๋ฉ๋๋ค. ์๋ ์ด๋ฏธ์ง๋ ์ญ ํ์ด์ง ํ ์ด๋ธ์ ์ด์ฉ ๋ฐฉ์์ ๋ํ๋ด๊ณ ์์ต๋๋ค.
์ญ ํ์ด์ง ํ ์ด๋ธ์ ์ข ์ข ๊ฐ๊ฐ์ ํ์ด์ง ํ ์ด๋ธ ์ํธ๋ฆฌ์ ์ ์ฅ๋๋ ์ฃผ์ ๊ณต๊ฐ ID(address-space indentifier)๋ฅผ ์๊ตฌํฉ๋๋ค. ์๋ํ๋ฉด ์ฃผ์ ๊ณต๊ฐ ID๋ฅผ ์ ์ฅํจ์ผ๋ก์จ ํน์ ํ๋ก์ธ์ค์ ๋ ผ๋ฆฌ ํ์ด์ง๊ฐ ๊ทธ์ ์์ํ๋ ๋ฌผ๋ฆฌ ํ์ด์ง ํ๋ ์๊ณผ ๋งคํ๋์๋ค๋ ๊ฒ์ ๋ณด์ฅํด์ฃผ๊ธฐ ๋๋ฌธ์ ๋๋ค.
์์คํ ์์์ ๊ฐ์ ์ฃผ์๋ ์ธ ๊ฐ์ง ํญ๋ชฉ์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
<process-id, page-number, offset>
- ๊ฐ๊ฐ์ ์ญ ํ์ด์ง ํ ์ด๋ธ์ ์ํธ๋ฆฌ๋ <process-id, page-number>์ ์์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ, process-id๋ ์ฃผ์ ๊ณต๊ฐ ID์ ์ญํ ์ ํฉ๋๋ค.
- ๋ฉ๋ชจ๋ฆฌ ์ฐธ์กฐ๊ฐ ๋ฐ์ํ๋ฉด, <process-id, page-number>์ ์์ผ๋ก ์ด๋ฃจ์ด์ง ๊ฐ์ ์ฃผ์์ ์ผ๋ถ๊ฐ ๋ฉ๋ชจ๋ฆฌ ํ๋ถ ์์คํ ์ ์ ๋ฌ๋ฉ๋๋ค.
- ์ญ ํ์ด์ง ํ ์ด๋ธ์์ ์ผ์นํ๋ ๊ฒ์ด ์๋์ง ๊ฒ์ํฉ๋๋ค.
- ์ผ์นํ๋ ๊ฒ์ด i๋ฒ์งธ ์ํธ๋ฆฌ์์ ๋ฐ๊ฒฌ๋๋ฉด ๋ฌผ๋ฆฌ ์ฃผ์๋ <i, offset>์ด ๋๊ณ , ์ผ์นํ๋ ๊ฒ์ด ์์ผ๋ฉด ์๋ชป๋ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ผ๋ก ๊ฐ์ฃผํฉ๋๋ค.
์ด ๋ฐฉ๋ฒ์ ๋ ผ๋ฆฌ ํ์ด์ง๋ง๋ค ํญ๋ชฉ์ ๊ฐ์ง๋ ๋์ ๋ฌผ๋ฆฌ ํ๋ ์์ ๋์๋๋ ํญ๋ชฉ๋ง ํ ์ด๋ธ์ ์ ์ฅํ๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ์์ ํจ์ฌ ์์ ๊ณต๊ฐ์ ์ ์ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ค๋ฅธ ํํธ ์ญ ํ์ด์ง ํ ์ด๋ธ์ ์ฃผ์๋ณํ ์๊ฐ์ด ๋ ์ค๋ ๊ฑธ๋ฆด ์ ์์ต๋๋ค. ์ญ ํ์ด์ง ํ ์ด๋ธ์ ๋ฌผ๋ฆฌ ์ฃผ์์ ๋ฐ๋ผ ์ ๋ ฌ๋์ด ์๊ณ ํ์์ ๊ฐ์ ์ฃผ์๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋ฏ๋ก ํ์ด์ง ์ ์ฒด๋ฅผ ํ์ํ์ฌ์ผ ํ ์๋ ์์ต๋๋ค. ๋๋ฌธ์ ์ด ํ์์ ๋งค์ฐ ์ค๋ ๊ฑธ๋ฆด ์๋ ์์ต๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ์์์ ์ค๋ช ํ ๊ฒ์ฒ๋ผ ํ๋ ๋๋ ๊ธฐ๊ปํด์ผ ๋ช ๋ฒ์ ํ์ด์ง ํ ์ด๋ธ์ ํ์ํ๋๋ก ํด์ ํ ์ด๋ธ์ ์ฌ์ฉํฉ๋๋ค. ๋ฌผ๋ก ์ ๊ทผ๋ง๋ค ํด์ ํ ์ด๋ธ์ ์ฐธ์กฐํด์ผ ํ๋ฏ๋ก ๋ฉ๋ชจ๋ฆฌ ์ฐธ์กฐ ํ์๋ฅผ ์ฆ๊ฐ์ํค๊ฒ ๋ฉ๋๋ค.(ํด์ ํ ์ด๋ธ ํ๋ฒ, ํ์ด์ง ํ ์ด๋ธ ํ๋ฒ). ์ฑ๋ฅ ํฅ์์ ์ํ์ฌ ํด์ ํ ์ด๋ธ์ด ์ฐธ์กฐ๋๊ธฐ ์ ์ ์ด์ ๊ฒ์๊ธ์ ์ค๋ช ํ ๊ฒ์ฒ๋ผ TLB๊ฐ ์ฐธ์กฐ๋๋ค๋ ๊ฒ์ ๊ธฐ์ตํด์ผ ํฉ๋๋ค.
์ด๋ฒ ๊ฒ์๊ธ๋ก ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๋ํ ์ ๋ฆฌ๋ฅผ ๋๋ด๊ณ ๋ค์ ๊ฒ์๊ธ๋ถํฐ๋ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ํด ํ๋ฒ ์ ๋ฆฌํด ๋ณด๊ฒ ์ต๋๋ค.
'ComputerScience ๐ > ์ด์์ฒด์ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[OS] ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ(3) - TLB(translation look-aside buffers) (0) | 2022.03.28 |
---|---|
[OS] ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ(2) - ํ์ด์ง ๊ธฐ๋ฒ (0) | 2022.03.20 |
[OS] ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ(1) - ๋ฌผ๋ฆฌ, ๋ ผ๋ฆฌ์ฃผ์ ๋ฐ ์ฐ์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น (0) | 2022.03.20 |
[OS] ๊ต์ฐฉ ์ํ(Deadlocks) (0) | 2022.03.10 |
[OS] ์์ฌํ๋ ์ฒ ํ์๋ค ๋ฌธ์ (The Dining-Philosophers Problem) (0) | 2022.03.02 |
[OS] ํ๋ก์ธ์ค ๋๊ธฐํ(Process Synchronization) (0) | 2022.02.24 |
๋๊ธ