9. Memory Management(2)
Structure of the Page Table
Hierarchical Paging
- ๋ ผ๋ฆฌ ์ฃผ์ ๊ณต๊ฐ์ ์ฌ๋ฌ ํ์ด์ง ํ ์ด๋ธ๋ก ๋ถํ
Hashed Page Tables
Inverted Page Tables
Two-Level Page-Table Scheme (Hierarchical Paging)
๋ฌธ์ : ํ๋ก๊ทธ๋จ์ด ํฐ ์ฃผ์ ๊ณต๊ฐ์ ๊ฐ์ง
- 32๋นํธ ์ฃผ์์ 4KB () ํ์ด์ง ํฌ๊ธฐ์ผ ๋ (m = 32, n = 12)
- , ์ฆ ๊ฐ์ ๋ ผ๋ฆฌ ํ์ด์ง
- ๊ฐ์ ํ์ด์ง ํ ์ด๋ธ ํญ๋ชฉ
- ํ์ด์ง ํ ์ด๋ธ ํฌ๊ธฐ = ๋ฐ์ดํธ (4MB, ๊ฐ ํญ๋ชฉ์ด 4๋ฐ์ดํธ์ผ ๊ฒฝ์ฐ)
- 4MB ํ์ด์ง ํ ์ด๋ธ์ ์ ์ฅํ๋ ค๋ฉด, ํ๋ก์ธ์ค๋น ๊ฐ์ ํ์ด์ง ํ๋ ์ ํ์
ํด๊ฒฐ:
- ์ ์ฒด ํ์ด์ง ํ ์ด๋ธ์ ๋์คํฌ์ ์ ์ฅ
- ํ์ด์ง ํ ์ด๋ธ ์์ฒด๋ ํ์ด์ง ๋จ์๋ก ์์ฒญ ์ ๋ก๋ฉ โ ํ์ด์ง ํ ์ด๋ธ์ ์ํ ํ์ด์ง ํ ์ด๋ธ ํ์
Two-Level Page-Table Scheme
outer-page
table
โ
+----------+ +----------+ +----------+
| 1 | ----> | 500 | | page | โ ๋ฉ๋ชจ๋ฆฌ ๋ด ์ค์ ํ์ด์ง
| 2 | ----> | 100 | โ | 100 |
| 3 | | 300 | | page |
| ... | | 600 | | table |
+----------+ +----------+ +----------+
(์ด๋์ ๋
ผ๋ฆฌ ํ์ด์ง์ ๋ํ ๋ฌผ๋ฆฌ ํ์ด์ง ๋ฒํธ๋ฅผ ์ ์ฅํ๋ ํ์ด์ง ํ
์ด๋ธ ํ๋ ์์ด ์๋๊ฐ?)
(์ด๋์ ๋
ผ๋ฆฌ ํ์ด์ง์ ํด๋นํ๋ ์ค์ ๋ฌผ๋ฆฌ ํ์ด์ง๊ฐ ์๋๊ฐ?)
Two-Level Paging Example
๋ ผ๋ฆฌ ์ฃผ์ (32๋นํธ ๋จธ์ , 4KB ํ์ด์ง ํฌ๊ธฐ ๊ธฐ์ค)๋ ๋ค์๊ณผ ๊ฐ์ด ๋๋จ:
- ํ์ด์ง ๋ฒํธ (20๋นํธ)
- ํ์ด์ง ์คํ์ (12๋นํธ)
ํ์ด์ง ๋ฒํธ๋ ๋ ๋ถ๋ถ์ผ๋ก ๋ค์ ๋๋จ:
- 10๋นํธ ์ธ๋ถ ํ์ด์ง ๋ฒํธ: outer-page table์ ์ ๊ทผ
- 10๋นํธ ๋ด๋ถ ํ์ด์ง ๋ฒํธ: page table ๋ด์ ์ ๊ทผ
์ฆ, ๋ ผ๋ฆฌ ์ฃผ์ ๊ตฌ์ฑ:
page number page offset
pโ pโ d
10 10 12
- ์ฌ๊ธฐ์:
- pโ: outer-page table ๋ด ์ธ๋ฑ์ค
- pโ: ๋ด๋ถ page table์์์ displacement
Address-Translation Scheme
- 2๋จ๊ณ 32๋นํธ ํ์ด์ง ๊ตฌ์กฐ์ ์ฃผ์ ๋ณํ ๋ฐฉ์:
logical address: pโ | pโ | d
โ
outer-page table
โ
page of page table
โ
d
<Forward-mapped page table>
Multilevel Paging and Performance
๋ ํฐ ์ฃผ์ ๊ณต๊ฐ์ ๊ฒฝ์ฐ,
- ์ธ ๋ฒ์งธ ํ์ด์ง๋ (B-ํธ๋ฆฌ์ฒ๋ผ) ๋ฐ์ดํฐ ๋ธ๋ก์ด ์๋, ๋ ๋ค๋ฅธ ๋ ๋ฒจ์ ํ์ด์ง ํ ์ด๋ธ
- ๊ฐ ๋ ๋ฒจ์ด ๋ฉ๋ชจ๋ฆฌ์ ๋ณ๋๋ก ์ ์ฅ๋๋ฏ๋ก, ๋ ผ๋ฆฌ ์ฃผ์๋ฅผ ์ค์ ์ฃผ์๋ก ๋ณํํ ๋ ์ต๋ 4ํ์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ด ํ์ํจ
๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ์๊ฐ์ด 5๋ฐฐ๋ก ์ฆ๊ฐํ๋๋ผ๋, TLB๋ฅผ ํตํด ์ฑ๋ฅ์ ํฉ๋ฆฌ์ ์ธ ์์ค์ผ๋ก ์ ์ง๋จ
- 4๋จ๊ณ ํ์ด์ง ํ
์ด๋ธ์์๋ TLB ํํธ์จ์ด 98%์ผ ๊ฒฝ์ฐ,
(๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ์๊ฐ์ด 100ns์ผ ๋, TLB ์ ๊ทผ ์๊ฐ = 20ns)
- 4๋จ๊ณ ํ์ด์ง ํ
์ด๋ธ์์๋ TLB ํํธ์จ์ด 98%์ผ ๊ฒฝ์ฐ,
ํ์ง๋ง 64๋นํธ ์ฃผ์ ์ฒด๊ณ์์๋ 6๋จ๊ณ ํ์ด์ง์ด ์๊ตฌ๋จ
- ํ์ค์ ์ผ๋ก ๋ถ์ ์ ํจ
- ํ๋ 64๋นํธ ์ด์์ฒด์ ์์๋ 48๋นํธ ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ฏ๋ก, ๋ณดํต 4๋จ๊ณ ํ์ด์ง ์ฌ์ฉ
Hashed Page Tables
- ์ฃผ์ ๊ณต๊ฐ์ด 32๋นํธ๋ณด๋ค ํด ๊ฒฝ์ฐ์ ์ ํฉ
- ๊ฐ์ ํ์ด์ง ๋ฒํธ๋ฅผ ํด์ ํจ์๋ก ํ์ด์ง ํ
์ด๋ธ์ ๋งคํ
- ์ด ํ ์ด๋ธ์ ๋์ผ ํด์ ์์น์ ๋์ํ๋ ํญ๋ชฉ๋ค์ ์ฒด์ธ์ผ๋ก ๊ตฌ์ฑ๋จ
- ์ฒด์ธ ๋ด๋ถ์์ ๊ฐ์ ํ์ด์ง ๋ฒํธ์ ์ผ์นํ๋ ํญ๋ชฉ์ ์ฐพ์ผ๋ฉด ํด๋น ๋ฌผ๋ฆฌ ์ฃผ์๋ฅผ ๋ฐํ
logical address (P | d)
โ
[hash function]
โ
[hash table] โ [p1โp2โ...] โ ๋น๊ต โ ์ผ์น โ [physical address]
Inverted Page Table
๋ฌธ์ : ํ์ด์ง ํ ์ด๋ธ์ด ๋๋ฌด ํผ
- ํ์ด์ง ํ ์ด๋ธ์ ํฌ๊ธฐ๋ ์ ์ฒด ํ์ด์ง ์์ ๋น๋ก
- ๋ ผ๋ฆฌ ํ์ด์ง๋ง๋ค ํ๋์ ํ ์ด๋ธ ํญ๋ชฉ์ด ํ์
- ๊ทธ๋ฌ๋ ์ค์ ๋ก๋ ๋์์ ์ ์ ์์ ํ์ด์ง๋ง ๋ฉ๋ชจ๋ฆฌ์ ์กด์ฌํจ
ํด๊ฒฐ: ๋ ผ๋ฆฌ ํ์ด์ง๊ฐ ์๋ ๋ฌผ๋ฆฌ์ ํ์ด์ง ํ๋ ์๋น ํ๋์ ํ ์ด๋ธ ํญ๋ชฉ๋ง ์ ์ง
- ๊ฐ ํญ๋ชฉ์ ํ๋ก์ธ์ค ID ํฌํจ
- ํ๋์ ์์คํ ์ ์ญ ํ์ด์ง ํ ์ด๋ธ ์ฌ์ฉ
- ํ์ํ ํญ๋ชฉ ์๋ ๋ฌผ๋ฆฌ ํ๋ ์ ์์ ๋์ผ
- ๋ชจ๋ ํ๋ก์ธ์ค๊ฐ ๊ณต์ ํ๋ ๊ตฌ์กฐ
Inverted Page Table Architecture
๋จ์ :
- ํ ์ด๋ธ ์ ์ฒด๋ฅผ ๊ฒ์ํด์ผ ํจ
- ํ์ด์ง ๊ณต์ ๋ถ๊ฐ๋ฅ
ํด๊ฒฐ์ฑ :
- ํด์ ํ ์ด๋ธ์ ์ฌ์ฉํด ๊ฒ์ ๋ฒ์ ์ ํ (ํ ๋ฒ์ ๋ฉ๋ชจ๋ฆฌ ์กฐํ)
- TLB์ ๋ณํ ์ฌ์ฉํ์ฌ ์๋ ํฅ์
CPU
โ
[logical address] โ [search]
โ
+------โ [page table]
| โ
[hash table] -----+ [physical address]
Segmentation
- ์ฌ์ฉ์์ ๋ฉ๋ชจ๋ฆฌ ๊ด์ ์ ์ง์ํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ
- ํ๋ก๊ทธ๋จ์ ๋ค์ํ ๊ธธ์ด์ ์ธ๊ทธ๋จผํธ๋ค๋ก ๊ตฌ์ฑ๋จ
- ์ธ๊ทธ๋จผํธ๋ ๋ ผ๋ฆฌ์ ๋จ์ (์: main(), ํจ์, ์ ์ญ ๋ณ์, ์คํ, ์ฌ๋ณผ ํ ์ด๋ธ, ๋ฐฐ์ด ๋ฑ)
User's view of a program:
+--------------+
| subroutine |
+--------------+
| stack |
+--------------+
| symbol table |
+--------------+
| main program |
+--------------+
Segmentation Architecture
๋ ผ๋ฆฌ ์ฃผ์ ๊ตฌ์กฐ:
<segment-number, offset>
์ธ๊ทธ๋จผํธ ํ ์ด๋ธ
- ๋ ผ๋ฆฌ ์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์๋ก ๋งคํ
- ๊ฐ ํญ๋ชฉ์ ๋ค์ ํฌํจ:
- base: ์ธ๊ทธ๋จผํธ๊ฐ ์์นํ ์์ ๋ฌผ๋ฆฌ ์ฃผ์
- limit: ์ธ๊ทธ๋จผํธ์ ๊ธธ์ด
STBR (Segment-table base register):
- ์ธ๊ทธ๋จผํธ ํ ์ด๋ธ์ ๋ฌผ๋ฆฌ ์์น๋ฅผ ๊ฐ๋ฆฌํด
STLR (Segment-table length register):
- ์ฌ์ฉ ๊ฐ๋ฅํ ์ธ๊ทธ๋จผํธ ์๋ฅผ ๋ํ๋
- ์ ํจํ ์ธ๊ทธ๋จผํธ ๋ฒํธ ์กฐ๊ฑด: segment number < STLR
Example of Segmentation
User's view:
+--------------+ +--------------+
| subroutine | | segment 0 |
+--------------+ +--------------+
| stack | | segment 3 |
+--------------+ | segment 4 |
| symbol table | | segment 1 |
+--------------+ | segment 2 |
| main program | | segment 5 |
+--------------+ | segment 6 |
| segment 1 | | segment 7 |
| segment 2 | +--------------+
physical memory
์ธ๊ทธ๋จผํธ ํ ์ด๋ธ:
- segment 0 โ base: 1400, limit: 1000
- segment 1 โ base: 6300, limit: 400
- segment 2 โ base: 4300, limit: 400 ...
Segmentation Hardware
logical address = (s, d)
+--------+ +----------------+
CPU ---> | s | ----> | segment table |
+--------+ +----------------+
| |
v v
limit base
| |
v v
if d < limit?
| yes
v
physical address = base + d
|
v
physical memory
else โ trap (addressing error)
Segmentation Architecture (Cont.)
๋ณดํธ (Protection)
- ์ธ๊ทธ๋จผํธ ํ
์ด๋ธ ํญ๋ชฉ๋ง๋ค ๋ค์์ ํฌํจ:
- valid/invalid bit = 0 โ illegal segment
- RWX ๊ถํ ๋นํธ
- ์ธ๊ทธ๋จผํธ ํ
์ด๋ธ ํญ๋ชฉ๋ง๋ค ๋ค์์ ํฌํจ:
๊ณต์ (Sharing)
- ์ธ๊ทธ๋จผํธ ์์ค์์ ๊ณต์ ๊ฐ ๋ฐ์
- ๊ณต์ ์ธ๊ทธ๋จผํธ์ ๊ฒฝ์ฐ, ๋ชจ๋ ํ๋ก์ธ์ค๊ฐ ๋์ผํ ์ธ๊ทธ๋จผํธ ๋ฒํธ๋ฅผ ์ฌ์ฉํด์ผ ํจ
- ์: ์๊ธฐ์ฐธ์กฐ ์ฝ๋๊ฐ segment number์ offset์ผ๋ก ์์ ์ ์ฐธ์กฐ
ํ ๋น (Allocation)
- ์ธ๊ทธ๋จผํธ์ ๊ธธ์ด๋ ๊ฐ๋ณ์ ์ด๋ฏ๋ก, ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ๋์ ํ ๋น ๋ฌธ์
- first fit / best fit ์ ๋ต ์ฌ์ฉ
- ์ธ๋ถ ๋จํธํ ๋ฐ์, ๋ด๋ถ ๋จํธํ๋ ์์
Sharing of Segments
Process P1:
segment 0 = editor
segment 1 = data1
Process P2:
segment 0 = editor
segment 1 = data2
โ physical memory์์ editor๋ ๊ณต์ ๋๊ณ ,
data1, data2๋ ๊ฐ์ ๋ถ๋ฆฌ๋์ด ์ ์ฅ๋จ
Segmentation with Paging
์ธ๋ถ ๋จํธํ ๋ฌธ์ ๋ ์ธ๊ทธ๋จผํธ๋ฅผ ํ์ด์ง๋ก ๋๋๋ ๊ฒ์ผ๋ก ํด๊ฒฐ ๊ฐ๋ฅ
์ด ๋ฐฉ์์ ์์ segmentation๊ณผ ๋ค๋ฆ:
- ์ธ๊ทธ๋จผํธ ํ ์ด๋ธ ํญ๋ชฉ์ ์ธ๊ทธ๋จผํธ์ base ์ฃผ์๊ฐ ์๋๋ผ, page table์ base ์ฃผ์๋ฅผ ํฌํจ
๊ฐ์ ์ฃผ์ ํ์:
Segment number s | Page number p | Displacement d
โ Virtual address V = (s, p, d)
Segmentation with Paging: Address Translation
logical address = (s, p, d)
โ
[STBR]
โ
segment table
โ
segment length, page-table base
โ
if p < segment length?
โ
yes โ page table โ frame โ +d โ physical address โ memory
no โ trap (addressing error)
Segmentation with Paging (TLB incorporated)
๊ฐ์ ์ฃผ์ ๊ตฌ์กฐ:
- s: ์ธ๊ทธ๋จผํธ ๋ฒํธ
- p: ํ์ด์ง ๋ฒํธ
- d: ๋ณ์ (offset)
ํ๋ฆ ์์ฝ:
- ์ธ๊ทธ๋จผํธ ํ ์ด๋ธ ์์์ ๋ ์ง์คํฐ๊ฐ ์ฃผ์ b๋ฅผ ๊ฐ๋ฆฌํด
- ์ธ๊ทธ๋จผํธ ๋ฒํธ s๋ฅผ ๋ํด ํด๋น ์ธ๊ทธ๋จผํธ ํญ๋ชฉ ์ฃผ์ b + s๋ก ์ ๊ทผ
- ์ธ๊ทธ๋จผํธ ํ
์ด๋ธ์์:
- ํ์ด์ง ์ฌ์ํ(page table)์ ์์ ์ฃผ์ **sโฒ**๋ฅผ ์ป์
- (s, p) ์์ด TLB(์ฐ๊ด ์ ์ฅ ์ฅ์น)์ ์๋์ง ๋จผ์ ํ์ธ
- ์์ผ๋ฉด TLB์ ์ ์ฅ๋ pโฒ ๊ฐ์ผ๋ก ๋ฐ๋ก ๋งคํ
- ์์ผ๋ฉด:
- ํ์ด์ง ์ฌ์ํ์์ p๋ฅผ ์ธ๋ฑ์ค๋ก ์ฌ์ฉํ์ฌ ํ์ด์ง ํ๋ ์ ๋ฒํธ **pโฒ**๋ฅผ ์กฐํ
- TLB์ ์ ํญ๋ชฉ์ผ๋ก ์ ์ฅ ๊ฐ๋ฅ
- ํ์ด์ง ํ๋ ์ ๋ฒํธ **pโฒ**์ ๋ณ์ d๋ฅผ ๋ํด ์ค์ ์ฃผ์ r์ ๊ณ์ฐ
๊ฐ์์ฃผ์ v = (s, p, d)
โ
TLB์์ (s, p) ์กฐํ
โโ ์์ผ๋ฉด โ pโฒ ์ป์
โโ ์์ผ๋ฉด
โโ ์ธ๊ทธ๋จผํธ ํ
์ด๋ธ ์์ ์ฃผ์ b + s ์ ๊ทผ
โโ ์ธ๊ทธ๋จผํธ s์ page table ์ฃผ์ sโฒ ํ๋
โโ page table์์ p ์ธ๋ฑ์ค๋ก pโฒ ์กฐํ
โโ TLB์ (s, p) โ pโฒ ์ ์ฅ
pโฒ + d โ ์ค์ฃผ์ r
FileSystem - ๊ต์๋ ๊ฐ์ ๋ด์ฉ ์์ฝ
ํ์ด์ง ํ ์ด๋ธ์ ํ๊ณ
- ํ๋์ page table์ด ๋๋ฌด ์ปค์ง ๊ฒฝ์ฐ, ์ฐ์์ ์ธ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฐจ์งํ๊ธฐ ์ด๋ ค์
- 1024๊ฐ์ entry๊ฐ ํ์ํ ๊ฒฝ์ฐ, ๊ฐ๊ฐ์ entry๋ 4KB frame์ผ๋ก ๊ตฌ์ฑ๋จ
๋ค๋จ๊ณ ํ์ด์ง ํ ์ด๋ธ
- ํ์ด์ง ํ ์ด๋ธ์ ๊ณ์ธต ๊ตฌ์กฐ๋ก ๋๋์ด ๊ด๋ฆฌ
- Outer Page Table โ Inner Page Table โ Data Page
- ๊ฐ ํ ์ด๋ธ์ ํ๋์ frame์ 1024๊ฐ entry๋ฅผ ๊ฐ์ง
- Logical Address: ์์ 10๋นํธ (outer index), ์ค๊ฐ 10๋นํธ (inner index), ํ์ 12๋นํธ (offset)
์ฃผ์ ๋ณํ ๋ฐฉ์
- Logical Address๋ฅผ 10/10/12 ๋นํธ๋ก ๋๋
- Outer index โ inner page table์ ์์น
- Inner index โ data page์ ์์น
- offset์ ๋ํด์ ์ต์ข physical address ๊ณ์ฐ
64๋นํธ ์ฃผ์ ์ฒด๊ณ
- ๋๋ฌด ๋ง์ entry๋ก ์ธํด ํ์ค์ ์ผ๋ก ์ฌ์ฉ ์ด๋ ค์
- ์ค์ ๊ตฌํ์์๋ 48๋นํธ๋ง ์ฌ์ฉ (4๋ ๋ฒจ ๊ตฌ์กฐ)
- TLB๊ฐ ์ด ๊ณผ์ ์ ์บ์ํ์ฌ ์ฑ๋ฅ ์ ํ ๋ฐฉ์ง
Inverted Page Table
๊ฐ๋
- ๊ธฐ์กด page table์ด logical โ physical ๋ณํ์ด๋ผ๋ฉด,
- Inverted page table์ physical โ logical ๋ณํ
- ์ ์ฒด ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋์ page table๋ง ์ ์ง
์ฅ์
- ํ๋ก์ธ์ค๋ง๋ค page table์ ๋ง๋ค์ง ์์๋ ๋จ
- ๋ฉ๋ชจ๋ฆฌ ์ ์ฝ ๊ฐ๋ฅ
๋ฌธ์ ์
- associative search ํ์ โ ์ฑ๋ฅ ์ ํ
- ๊ณต์ ์ด๋ ค์ (PID ๊ธฐ๋ฐ ๋งค์นญ ํ์)
- Sharing์ ์ ์ฝ ๋ง๊ณ ํ์์๊ฐ์ด ์ฆ๊ฐํจ
ํด๊ฒฐ ์๋
- Hashing ๊ธฐ๋ฐ ํ์ ๊ตฌ์กฐ ์ฌ์ฉ
- Chain์ด ์๋ hash function ์ค๊ณ๊ฐ ํต์ฌ
Segmentation
๊ฐ๋
- ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ฏธ ๋จ์(ํจ์, ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์คํ ๋ฑ)๋ก ๋๋
- Logical address = segment ๋ฒํธ + offset
- ์ฃผ์ ๋ณํ ์ base address + offset ๋ฐฉ์
์ฅ์
- ์๋ฏธ ๋จ์ ๊ณต์ ๊ฐ๋ฅ
- ๋ค์ํ protection level ๋ถ์ฌ ๊ฐ๋ฅ
๋จ์
- ์ฐ์์ ๋ฉ๋ชจ๋ฆฌ ์๊ตฌ โ external fragmentation ๋ฐ์ ๊ฐ๋ฅ
Segmentation with Paging
๊ฐ๋
- Segmentation์ ๊ธฐ๋ฐ์ผ๋ก, ๊ฐ segment ์์ paging ๊ธฐ๋ฒ ์ ์ฉ
- ๊ฐ segment๋ paging ๊ธฐ๋ฒ์ ํตํด ๋ด๋ถ ์ฃผ์ ๊ณต๊ฐ ๊ด๋ฆฌ
์ฅ์
- ๊ณต์ ๋จ์ ์ ์ง (segment)
- paging์ ํตํด ๋ด๋ถ fragmentation ํด๊ฒฐ
์ฃผ์ ๋ณํ ๋ฐฉ์
- Logical address = segment ๋ฒํธ + offset
- segment ๋ฒํธ โ ํด๋น segment์ page table ์ฃผ์
- offset โ page index + page offset
- ์ต์ข ์ ์ผ๋ก frame ๋ฒํธ + offset์ผ๋ก physical address ๊ณ์ฐ
์ ๋ฆฌ: ์ฃผ์ ๋ณํ ๊ณผ์
์ ์ฒด ํ๋ฆ
- CPU๊ฐ logical address ์์ฑ (seg#, page#, offset)
- TLB ์คํจ ์ โ segment table/page table ํ์
- frame ๋ฒํธ ํ๋ ํ offset ๋ํ์ฌ physical address ์์ฑ
๊ฒฐ๋ก
- Multi-level paging, inverted page table, segmentation, segmentation with paging์ ๊ฐ๊ธฐ ๋ค๋ฅธ ์ํฉ์์ trade-off๋ฅผ ๊ฐ์ง๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ
- ํจ์จ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๊ณผ ๊ณต์ , ๋ณดํธ ์์ค ์ ๊ณต์ ์ํ ๋ค์ํ ๊ตฌ์กฐ์ ์๋