Search
๐Ÿ’ฟ

11 : Multi-Level Page Table

course
last review
2023/04/14
mastery
rookie
progress
not started
date
4 more properties
Previous chapter
ํŽ˜์ด์ง•์˜ ๋˜๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ด๊ณณ์— ์™”๋‹ค!
ํŽ˜์ด์ง•์€ ํ›Œ๋ฅญํ•œ ๊ธฐ๋ฒ•์ด์ง€๋งŒ, ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ํฌ๋ฉด ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„ ๋˜ํ•œ ๋งŽ์ด ์ฐจ์ง€ํ•˜๊ฒŒ ๋œ๋‹ค.

Main QUEST : HOW TO MAKE PAGE TABLE SMALL

์„ ํ˜• ๋ฐฐ์—ด ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์€ ํฌ๊ธฐ๊ฐ€ ํฌ๋ฉฐ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ณผ๋„ํ•˜๊ฒŒ ์ฐจ์ง€ํ•œ๋‹ค. ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ํฌ๊ธฐ๋ฅผ ์ค„์ด๋Š” ๋ฐฉ๋ฒ•์€?

More Big Page

๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์€ ํŽ˜์ด์ง€์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์ด ๋  ๊ฒƒ์ด๋‹ค.
โ€ข
ํŽ˜์ด์ง€๋‹น ํฌ๊ธฐ๊ฐ€ 4KB, ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ๊ฐ ํ•ญ๋ชฉ์ด 4๋ฐ”์ดํŠธ์ธ 32๋น„ํŠธ ์ฃผ์†Œ๊ณต๊ฐ„.
โ—ฆ
ํŽ˜์ด์ง€ ๋„˜๋ฒ„๊ฐ€ 232212=220\cfrac{2^{32}}{2^{12}}=2^{20}๊ฐœ๊ฐ€ ๋˜๋ฉฐ, PFN์ด 2202^{20}์ด๊ณ , ๊ฐ ํ•ญ๋ชฉ์ด 4๋ฐ”์ดํŠธ์ด๋ฉด, ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ์ด ์šฉ๋Ÿ‰์€ 4MB๊ฐ€ ๋œ๋‹ค.
PFN์˜ ๋น„ํŠธ๊ฐ€ 20์ž๋ฆฌ์ธ๋ฐ, ์ด๋ฅผ 18๋กœ ์ค„์—ฌ๋ณด์ž. ํŽ˜์ด์ง€ ๋„˜๋ฒ„๋Š” 4๋ฐฐ ์ค„๊ณ , ์˜คํ”„์…‹(ํŽ˜์ด์ง€์˜ ์ตœ๋Œ€ํ•œ๋„)์€ 4๋ฐฐ ๋Š˜๊ฒŒ ๋œ๋‹ค. ์ด ํŽ˜์ด์ง€ ์šฉ๋Ÿ‰๋„ 1MB๋กœ ์ค„์–ด๋Š”๋‹ค.
ํŽ˜์ด์ง€ ํฌ๊ธฐ์˜ ์ฆ๊ฐ€๋Š” ๋ถ€์ž‘์šฉ์„ ์ˆ˜๋ฐ˜ํ•œ๋‹ค.
๋ฐ”๋กœ ํŽ˜์ด์ง€ ๋‚ด๋ถ€์˜ ๋‚ญ๋น„๊ณต๊ฐ„์ด ๋Š˜์–ด๋‚˜๊ฒŒ ๋œ๋‹ค๋Š” ๋ฌธ์ œ์ธ๋ฐ, ์ด๋ฅผ ๋‚ด๋ถ€ ๋‹จํŽธํ™”(internal fragmentation)์ด๋ผ๊ณ  ํ•œ๋‹ค.
์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋ฅผ ํ• ๋‹น ๋ฐ›์•˜์ง€๋งŒ ํ• ๋‹น๋ฐ›์€ ํŽ˜์ด์ง€์˜ ์ผ๋ถ€๋ถ„๋งŒ ์‚ฌ์šฉํ•ด, ๊ฒฐ๊ตญ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๊ธˆ๋ฐฉ ๊ณ ๊ฐˆ๋˜๊ฒŒ ๋œ๋‹ค.

HYBRID : Paging & Segment

ํŽ˜์ด์ง•๊ณผ ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์„ ๊ฒฐํ•ฉํ•˜์—ฌ ํ…Œ์ด๋ธ” ํฌ๊ธฐ๋ฅผ ์ค„์ผ ์ˆ˜๋„ ์žˆ๋‹ค!
๊ธฐ์กด์˜ ์„ ํ˜• ํŽ˜์ด์ง• ๋ฐฉ์‹์€ ํ•„์š”ํ•œ ์ •๋ณด๊ฐ€ ์ ์„ ๊ฒฝ์šฐ, ๋ฉ”๋ชจ๋ฆฌ ๋‚ญ๋น„๊ฐ€ ์‹ฌํ•œ ๋‹จ์ ์ด ์žˆ๋‹ค.
valid bit์˜ ๋ฌด์ˆ˜ํ•œ 0์„ ๋ณด๋ผ. ์ €๋งŒํผ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋‚ญ๋น„๋œ๋‹ค.
ํ”„๋กœ์„ธ์Šค์˜ ์ „์ฒด ์ฃผ์†Œ ๊ณต๊ฐ„์„ ์œ„ํ•ด ํ•˜๋‚˜์˜ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ๋‘๋Š” ๋Œ€์‹ , ์„ธ๊ทธ๋จผํŠธ๋ณ„๋กœ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ๋‘๋ฉด ์–ด๋–จ๊นŒ? ์ข‹์€ ์•„์ด๋””์–ด ๊ฐ™๋‹ค.
์ด ๋ฐฉ๋ฒ•์—์„œ๋Š” ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์—์„œ ํ–ˆ๋˜ ๊ฒƒ ์ฒ˜๋Ÿผ ๋ฒ ์ด์Šค, ๋ฐ”์šด๋“œ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๊ฐ๊ฐ์˜ ์„ธ๊ทธ๋จผํŠธ์— ๋Œ€ํ•œ ์‹œ์ž‘ ์ฃผ์†Œ๊ฐ€ ์•„๋‹Œ, ์„ธ๊ทธ๋จผํŠธ์˜ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ์‹œ์ž‘ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง„๋‹ค.
32๋น„ํŠธ ๊ฐ€์ƒ์ฃผ์†Œ๋Š”๋Š” ์ด์ œ VPN, ์˜คํ”„์…‹ ๊ทธ๋ฆฌ๊ณ  ์ƒˆ๋กœ ๋“ค์–ด์˜จ ์„ธ๊ทธ๋จผํŠธ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.
์†Œ์† ์„ธ๊ทธ๋จผํŠธ๋ฅผ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•ด ์ƒ์œ„ 2๋น„ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒ ๋‹ค. 01 = ์ฝ”๋“œ, 10 = ํž™, 11 = ์Šคํƒ
๋˜ํ•œ ํ•˜๋“œ์›จ์–ด์— ์„ธ ๊ฐœ์˜ ๋ฒ ์ด์Šค, ๋ฐ”์šด๋“œ ๋ ˆ์ง€์Šคํ„ฐ ์Œ์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž.
์‹คํ–‰์ค‘์ธ ํ”„๋กœ์„ธ์Šค์—์„œ ๊ฐ ๋ฒ ์ด์Šค ๋ ˆ์ง€์Šคํ„ฐ๋Š” ๊ฐ ์„ธ๊ทธ๋จผํŠธ ํŽ˜์ด์ง€์˜ ์‹œ์ž‘ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง„๋‹ค.
TLB์˜ ๋ฏธ์Šค๊ฐ€ ์ผ์–ด๋‚˜๋ฉด ํ•˜๋“œ์›จ์–ด๋Š” ์„ธ๊ทธ๋จผํŠธ ๋„˜๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์–ด๋–ค ๋ฒ ์ด์Šค์™€ ๋ฐ”์šด๋“œ๋ฅผ ์“ธ ์ง€ ๊ฒฐ์ •ํ•œ๋‹ค.
๊ทธ ๋ ˆ์ง€์Šคํ„ฐ์— ๋“ค์–ด์žˆ๋Š” ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋ฅผ VPN๊ณผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์กฐ์ž‘ํ•ด PTE์˜ ์ฃผ์†Œ๋ฅผ ์–ป๋Š”๋‹ค.
SN = (VirtualAddress & SEG_MASK) >> SN_SHIFT VPN = (virtualAddress & VPN_MASK) >> VPN_SHIFT AddressOfPTE = Base[SN] + (VPN*sizeof(PTE))
C
๋ณต์‚ฌ
ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ธฐ๋ฒ•์˜ ํ•ต์‹ฌ์€ ์„ธ๊ทธ๋จผํŠธ๋งˆ๋‹ค ๋ฐ”์šด๋“œ ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ๋”ฐ๋กœ ์กด์žฌํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
๊ฐ ๋ฐ”์šด๋“œ ๋ ˆ์ง€์Šคํ„ฐ์˜ ๊ฐ’์€ ์ตœ๋Œ€ ์„ธ๊ทธ๋จผํŠธ์˜ ์œ ํšจํŽ˜์ด์ง€ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.
ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ธฐ๋ฒ• ์—ญ์‹œ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š”๋ฐ,
1.
์—ฌ์ „ํžˆ ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์„ ์‚ฌ์šฉํ•œ๋‹ค.
๋นˆ๊ณต๊ฐ„์ด ๋งŽ์€ ํž™์˜ ๊ฒฝ์šฐ ์—ฌ์ „ํžˆ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ๋‚ญ๋น„๋ฅผ ๋ฉด์น˜ ๋ชปํ•œ๋‹ค.
2.
ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ธฐ๋ฒ•์€ ์™ธ๋ถ€ ๋‹จํŽธํ™”๋ฅผ ์œ ๋ฐœํ•œ๋‹ค.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ํฌ๊ธฐ์— ์ œํ•œ์ด ์—†์œผ๋ฉฐ, ๋‹ค์–‘ํ•œ ํฌ๊ธฐ๋ฅผ ๊ฐ–๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
์ด๋Ÿฐ ๋ฌธ์ œ๋กœ ์ธํ•ด ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ํฌ๊ธฐ๋ฅผ ์ค„์ด๋Š” ๊ฒŒ ๋” ์ข‹์€ ๋ฐฉํ–ฅ์ด๋ผ๊ณ  ํŒ๋‹จ๋œ๋‹ค.

Multi-Level Page Table

๋ฉ€ํ‹ฐ๋ ˆ๋ฒจ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์—์„œ๋Š” ์„ ํ˜• ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋กœ ํ‘œํ˜„ํ•œ๋‹ค.
์ด๋Š” ๋งค์šฐ ํšจ์œจ์ ์ด๋ฉฐ ๋งŽ์€ ํ˜„๋Œ€ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค.
๋ฉ€ํ‹ฐ ๋ ˆ๋ฒจ ํŽ˜์ด์ง€ ํ…Œ์ž…๋ฅด์˜ ๊ฐœ๋…์€ ๊ฐ„๋‹จํ•˜๋‹ค.
1.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ํŽ˜์ด์ง€ ํฌ๊ธฐ์˜ ๋‹จ์œ„๋กœ ๋‚˜๋ˆˆ๋‹ค.
2.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ํŽ˜์ด์ง€๊ฐ€ ์œ ํšจํ•˜์ง€ ์•Š๋Š” ํ•ญ๋ชฉ๋งŒ ์žˆ๋‹ค๋ฉด, ํ•ด๋‹น ํŽ˜์ด์ง€๋ฅผ ๋‚ ๋ ค๋ฒ„๋ฆฐ๋‹ค.
3.
ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ(page directory)๋ผ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ๊ฐ ํŽ˜์ด์ง€์˜ ํ• ๋‹น ์—ฌ๋ถ€์™€ ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•œ๋‹ค.
a.
ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ๋Š” ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ํŽ˜์ด์ง€์˜ ์กด์žฌ์—ฌ๋ถ€์™€ ์œ„์น˜๋ฅผ ๊ฐ€์ง„๋‹ค.
์œ„ ์˜ˆ์ œ๋ฅผ ํ•ด์ฒดํ•ด๋ณด์ž.
์ขŒ์ธก ๊ทธ๋ฆผ์€ ์ „ํ˜•์ ์ธ ์„ ํ˜• ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”๋กœ, ๊ฐ€์šด๋ฐ ์ฃผ์†Œ๊ณต๊ฐ„์€ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ณ  ์žˆ์ง€๋งŒ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์— ํ• ๋‹น๋˜์–ด์žˆ๋‹ค.
์šฐ์ธก์€ ๋ฉ€ํ‹ฐ๋ ˆ๋ฒจ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”๋กœ, ๋‘๊ฐœ์˜ ์œ ํšจํ•œ ํŽ˜์ด์ง€๊ฐ€ ์žˆ๋‹ค. ์œ ํšจํŽ˜์ด์ง€ ๋‘๊ฐœ๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ์กด์žฌํ•œ๋‹ค.
๋ฉ€ํ‹ฐ๋ ˆ๋ฒจ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์€ ๋ช‡๊ฐ€์ง€ ์žฅ์ ์ด ์žˆ๋‹ค.
1.
๋ฉ€ํ‹ฐ ๋ ˆ๋ฒจ ํ…Œ์ด๋ธ”์€ ์‚ฌ์šฉ๋œ ์ฃผ์†Œ๊ณต๊ฐ„์˜ ํฌ๊ธฐ์— ๋น„๋ก€ํ•ด ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ๊ณต๊ฐ„์ด ํ• ๋‹น๋œ๋‹ค.
๋ณด๋‹ค ์ž‘์€ ํฌ๊ธฐ์˜ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”๋กœ ์ฃผ์†Œ๊ณต๊ฐ„์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.
2.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ํŽ˜์ด์ง€ ํฌ๊ธฐ๋กœ ๋ถ„ํ• ํ•จ์œผ๋กœ์จ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ดํ•˜๋‹ค.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ํ• ๋‹น, ํ™•์žฅํ• ๋•Œ OS๋Š” free ํŽ˜์ด์ง€ ํ’€์— ์žˆ๋Š” ๋นˆ ํŽ˜์ด์ง€๋ฅผ ๊ฐ€์ ธ๋‹ค ์“ฐ๋ฉด ๋์ด๋‹ค!
์ƒ๊ฐํ•ด๋ณด์ž. ์„ ํ˜• ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์€ ์—ฐ์†๋œ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•œ๋‹ค. ๋ณดํ†ต ์„ ํ˜• ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ๊ฒฝ์šฐ ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ๊ฐ€ ํฐ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์€๋ฐ, ํฌ๊ธฐ๊ฐ€ ํฌ๊ณ  ์—ฐ์†๋œ ๋ฌผ๋ฆฌ ๊ณต๊ฐ„์„ ์ฐพ๋Š” ๊ฑด ์‰ฌ์šด์ผ์ด ์•„๋‹ˆ๋‹ค.
๋ฐ˜๋Œ€๋กœ ๋ฉ€ํ‹ฐ๋ ˆ๋ฒจ ํŽ˜์ด์ง€๋Š” ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฐ ํŽ˜์ด์ง€๊ฐ€ ์ค‘๊ตฌ๋‚œ๋ฐฉ์ด๋”๋ผ๋„ ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ํ†ตํ•ด ์œ„์น˜์ถ”์ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค!
๊ทธ๋Ÿฌ๋‚˜ ์žฅ์ ๋งŒ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค.(๋Š˜ ๊ทธ๋ ‡๋“ฏ์ด) ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹จ์ ์„ ๊ฐ€์ง„๋‹ค.
1.
๋ฉ€ํ‹ฐ ๋ ˆ๋ฒจ ํ…Œ์ด๋ธ”์€ ์ถ”๊ฐ€ ๋น„์šฉ์ด ๋ฐœ์ƒํ•œ๋‹ค.
์ฃผ์†Œ๋ณ€ํ™˜์„ ์œ„ํ•ด ๋‘๋ฒˆ ์ด์ƒ์˜ ๋ฉ”๋ชจ๋ฆฌ ๋กœ๋“œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.(ํ•œ๋ฒˆ์€ ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ, ํ•œ๋ฒˆ์€ PTE)
์„ ํ˜• ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์— ๋น„ํ•ด์„œ ์‹œ๊ฐ„ ํšจ์œจ์„ ์ผ์ • ๋ฒ„๋ฆฐ ์…ˆ์ด๋‹ค.
2.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ๊ฒ€์ƒ‰์ด ์„ ํ˜• ํ…Œ์ด๋ธ”๋ณด๋‹ค ๋ณต์žกํ•ด์ง„๋‹ค.

Examples

ํŽ˜์ด์ง€๋‹น 64๋ฐ”์ดํŠธ๋ฅผ ๊ฐ–๋Š” 16KB์˜ ํฌ๊ธฐ์˜ ์ž‘์€ ์ฃผ์†Œ๊ณต๊ฐ„์„ ์ƒ๊ฐํ•ด๋ณด์ž.
16KB = 2142^{14}์ด๋ฏ€๋กœ, ์ฃผ์†Œ๊ณต๊ฐ„์˜ ๋น„ํŠธ๊ธธ์ด๋Š” 14๋น„ํŠธ๋‹ค.
ํŽ˜์ด์ง€๋‹น 64๋ฐ”์ดํŠธ์ด๋ฏ€๋กœ, ์˜คํ”„์…‹์€ 6, VPN์€ 8๋น„ํŠธ๋กœ ๊ตฌ์„ฑ๋˜์–ด, 256๊ฐœ์˜ ์„ ํ˜• ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์ด 1์ฐจ์ ์œผ๋กœ ๊ฐ€์ •๋  ์ˆ˜ ์žˆ๋‹ค.
๊ฐ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ๋‹น 4๋ฐ”์ดํŠธ๋ผ๊ณ  ๊ฐ€์ •ํ•  ๊ฒฝ์šฐ, ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ํฌ๊ธฐ๋Š” 256 ^ 4 = 1024๋ฐ”์ดํŠธ = 1KB์ด๋‹ค.
ํŽ˜์ด์ง€๊ฐ€ 64๋ฐ”์ดํŠธ์˜€์œผ๋ฏ€๋กœ, 1KB๋ฅผ 64๋ฐ”์ดํŠธ๋กœ ์ชผ๊ฐœ์ž. ์ด 16๊ฐœ์˜ ํŽ˜์ด์ง€๋กœ ๋ถ„ํ•  ๋  ๊ฒƒ์ด๋ฉฐ, ๊ฐ ํŽ˜์ด์ง€์—๋Š” 16๊ฐœ์˜ PTE๊ฐ€ ์žˆ์„ ๊ฒƒ์ด๋‹ค.
์ด์ œ VPN์œผ๋กœ๋ถ€ํ„ฐ ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ ์ธ๋ฑ์Šค๋ฅผ ์ถ”์ถœํ•˜๊ณ , ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ๊ฐ ํŽ˜์ด์ง€ ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋ฒ•์„ ์‚ดํŽด๋ณด์ž. ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ, ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ํŽ˜์ด์ง€ ๋ชจ๋‘ ํ•ญ๋ชฉ์˜ ๋ฐฐ์—ด์ž„์„ ์žŠ์ง€ ๋ง์ž.
๋จผ์ € ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ์ธ๋ฑ์Šค๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค. ์ž‘์€ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์€ 256๊ฐœ์˜ ํ•ญ๋ชฉ์œผ๋กœ ๊ฐ 16๊ฐœ์˜ ํŽ˜์ด์ง€๋กœ ๋‚˜๋‰˜์–ด ์žˆ์œผ๋ฉฐ, ๊ฐ ํŽ˜์ด์ง€๋‹น 16๊ฐœ์˜ PTE๊ฐ€ ์žˆ๋‹ค.
๊ฒฐ๊ณผ์ ์œผ๋กœ 16๊ฐœ์˜ ํŽ˜์ด์ง€๋ฅผ ์ธ๋ฑ์‹ฑํ•˜๋ ค๋ฉด, 4bit๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค. VPN์˜ ์ƒ์œ„ 4๋น„ํŠธ๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‚ฌ์šฉํ•œ๋‹ค.
VPN์—์„œ ํŽ˜์ด์ง€-๋””๋ ‰ํ† ๋ฆฌ ์ธ๋ฑ์Šค(page-directory index : PDIndex)๋ฅผ ์ถ”์ถœํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‹์ด ๋‚˜์˜ฌ ๊ฒƒ์ด๋‹ค.
PDEAddr = PageDirBaseReg + (PDIndex * sizeof(PDE))
C
๋ณต์‚ฌ
PD์˜ ํ•ด๋‹น ํ•ญ๋ชฉ์ด ๋ฌดํšจ ์ฒ˜๋ฆฌ๋˜์–ด์žˆ์œผ๋ฉด, ์ด ์ ‘๊ทผ์€ ์œ ํšจํ•˜์ง€ ์•Š๋‹ค.
๋ฐ˜๋Œ€๋กœ PDE๊ฐ€ ์œ ํšจํ•˜๋‹ค๋ฉด ์ถ”๊ฐ€ ์ž‘์—…์„ ํ•ด์•ผํ•œ๋‹ค.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์˜ ํŽ˜์ด์ง€์—์„œ ์›ํ•˜๋Š” ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ์—”๋“œ๋ฆฌ๋ฅผ ์ฝ์–ด๋“ค๊ธฐ๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ๋‹ค. ๋‚˜๋จธ์ง€ ๋น„ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์ž.
ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ์—”ํŠธ๋ฆฌ์˜ ์ฃผ์†Œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ณ„์‚ฐํ•œ๋‹ค.
PTEAddr = (PDE.PFN << SHIFT) + (PTIndex * sizeof(PTE))
C
๋ณต์‚ฌ
PTE์˜ ์ฃผ์†Œ๋ฅผ ์ƒ์„ฑํ•˜๋ ค๋ฉด, ํŽ˜์ด์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ ํ•ญ๋ชฉ์—์„œ ์–ป์€ ํŽ˜์ด์ง€-ํ”„๋ ˆ์ž„ ๋„˜๋ฒ„๋ฅผ ๋จผ์ € ์ขŒ์ธก ์‰ฌํ”„ํŠธ ์—ฐ์‚ฐํ•œ ํ›„, ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค์— ํ•ฉ์‚ฐํ•œ๋‹ค.

Inverted Page Table

๋‚˜์ค‘์—โ€ฆ
Next chapter