728x90
๋ฉ๋ชจ๋ฆฌ ํ ๋น
- ์์ ๋ฉ๋ชจ๋ฆฌ ์์น, ๋ฉ๋ชจ๋ฆฌ ํ ๋น ํฌ๊ธฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์ ํ๋ก๊ทธ๋จ ํ ๋น
- ์ฐ์ ํ ๋น๊ณผ ๋ถ์ฐ์ ํ ๋น์ผ๋ก ๋๋จ
1. ์ฐ์ ํ ๋น
- ๋ฉ๋ชจ๋ฆฌ์ ์ฐ์์ ์ผ๋ก ๊ณต๊ฐ ํ ๋น
- ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ค์์ ๊ณต๊ฐ์ผ๋ก ๋ถํ ํ์ฌ ํ๋์ ๋ถํ ๊ณต๊ฐ์ ํ๋์ ํ๋ก์ธ์ค๊ฐ ์ ์ฌ๋๋๋ก ํจ
- ๊ณ ์ ๋ถํ ๋ฐฉ์๊ณผ ๊ฐ๋ณ ๋ถํ ๋ฐฉ์์ผ๋ก ๋๋จ
1-1) ๊ณ ์ ๋ถํ ๋ฐฉ์(Fixed Partition Allocation)
- ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๋ฏธ๋ฆฌ ๋ถํ ํ์ฌ ๊ณ ์ ๋ ํฌ๊ธฐ๋ก ๋๋์ด ๊ด๋ฆฌํ๋ ๋ฐฉ์
- ๋ถํ ํฌ๊ธฐ๋ ๋ชจ๋ ๋์ผํ ์๋ ์๊ณ ๋ค๋ฅผ ์๋ ์์
- ๋ถํ ๋ ๊ณต๊ฐ์ ์๊ตฌ์ ์ผ๋ก ๊ณ ์ ๋๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆด ์ ์๋ ํ๋ก๊ทธ๋จ์ ์ ๋ฐ ํฌ๊ธฐ๊ฐ ์ ํ์ ์ด๊ณ ์ตํต์ฑ์ด ๋จ์ด์ง
- ๋ด๋ถ ๋จํธํ(๋ด๋ถ ์กฐ๊ฐ)์ ์ธ๋ถ ๋จํธํ(์ธ๋ถ ์กฐ๊ฐ) ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์
1-2) ๊ฐ๋ณ ๋ถํ ๋ฐฉ์(Variable Partition Allocation)
- ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋๋ ํ๋ก๊ทธ๋จ์ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋งค์์ ๋ถํ ์ ํฌ๊ธฐ์ ๊ฐ์๊ฐ ๋์ ์ผ๋ก ๋ณํ๋ ๋ฐฉ์
- ํ๋ก์ธ์ค ํฌ๊ธฐ ๋งํผ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๋จํธํ(๋ด๋ถ ์กฐ๊ฐ)์ ๋ฐ์ํ์ง ์์
- ํ๋ก์ธ์ค๋ฅผ ์ฌ๋ฆฌ๊ธฐ์ ์ถฉ๋ถํ ๊ณต๊ฐ์ด ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ ์ธ๋ถ ๋จํธํ(์ธ๋ถ ์กฐ๊ฐ) ๋ฌธ์ ๋ฐ์
- ํ๋ก์ธ์ค๋ฅผ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ์ค ์ด๋์ ์ฌ๋ ค์ผ ํ ์ง ๊ฒฐ์กํด์ผ ํจ
- ์ต์ด ์ ํฉ: ๊ฐ์ฅ ๋จผ์ ๋์ค๋ ๊ฐ์ฉ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ๋ ๋ฐฉ๋ฒ
- ์ต์ ์ ํฉ: ๊ฐ์ฅ ๋ฑ ๋ง๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฐพ์์ ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ๋ ๋ฐฉ๋ฒ
- ์ต์ ์ ํฉ: ๊ฐ์ฅ ํฐ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ๋ ๋ฐฉ๋ฒ
2. ๋ถ์ฐ์ ํ ๋น
- ๋ฉ๋ชจ๋ฆฌ์ ๋ถ์ฐ์์ ์ผ๋ก ๊ณต๊ฐ ํ ๋น
- ํ๋์ ํ๋ก์ธ์ค๊ฐ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ ์์ ์ฌ๋ฌ ์์น์ ๋ถ์ฐ๋์ด ์ ์ฌ๋๋๋ก ํจ
- ํ์ด์ง, ์ธ๊ทธ๋ฉํ ์ด์ ์ผ๋ก ๋๋จ
2-1) ํ์ด์ง(Paging)
- ํ๋ก์ธ์ค์ ์ฃผ์ ๊ณต๊ฐ์ ๊ณ ์ ๋ ์ฌ์ด์ฆ์ ํ์ด์ง(Page) ๋จ์๋ก ๋๋์ด ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ถ์ฐ์์ ์ผ๋ก ํ ๋นํ๋ ๋ฐฉ์
- ๋ฉ๋ชจ๋ฆฌ๋ ํ๋ ์(Frame)์ด๋ผ๋ ๊ณ ์ ํฌ๊ธฐ๋ก ๋ถํ , ํ๋ก์ธ์ค๋ ํ์ด์ง(Page)๋ผ๋ ๊ณ ์ ํฌ๊ธฐ๋ก ๋ถํ
- ํ์ด์ง์ ํ๋ ์์ ๊ฐ์ ํฌ๊ธฐ
- ํ์ด์ง์ ํ๋ ์์ ๋์์ํค๋ Page Mapping์ ์ํด Page Table ํ์
- Page Table์๋ ๊ฐ ํ์ด์ง ๋ฒํธ์ ํด๋น ํ์ด์ง๊ฐ ํ ๋น๋ ํ๋ ์์ ์์ ๋ฌผ๋ฆฌ ์ฃผ์๋ฅผ ์ ์ฅ
- ์ฐ์์ ์ด์ง ์์ ๊ณต๊ฐ๋ ํ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ ์ธ๋ถ ๋จํธํ ๋ฌธ์ ํด๊ฒฐ
- ํ๋ก์ธ์ค์ ํฌ๊ธฐ๊ฐ ํ์ด์ง ํฌ๊ธฐ์ ๋ฐฐ์๊ฐ ์๋ ๊ฒฝ์ฐ ๋ง์ง๋ง ํ์ด์ง์ ๋ํ ๋ด๋ถ ๋จํธํ ๋ฐ์
- ํ์ด์ง ๋จ์๋ฅผ ์๊ฒํ๋ฉด ๋ด๋ถ ๋จํธํ๋ฅผ ํด๊ฒฐํ ์ ์์ง๋ง Page Mapping ๊ณผ์ ์ด ๋ง์์ ธ ๋นํจ์จ์
2-2) ์ธ๊ทธ๋ฉํ ์ด์ (Segmentation)
- ํ๋ก์ธ์ค๋ฅผ ์๋ก ๋ค๋ฅธ ํฌ๊ธฐ์ ๋ ผ๋ฆฌ์ ๋ธ๋ก ๋จ์์ธ ์ธ๊ทธ๋จผํธ(Segment)๋ก ๋๋์ด ๋ฉ๋ชจ๋ฆฌ์ ๋ถ์ฐ์์ ์ผ๋ก ํ ๋นํ๋ ๋ฐฉ์
- ์ธ๊ทธ๋จผํธ ๋จ์๋ ํจ์ ๋จ์์ผ ์๋ ์๊ณ , Code/Data/Heap/Stack ๋ฑ ๋ ผ๋ฆฌ์ ๋จ์์ผ ์ ์์
- ํ์ด์ง๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก Segment Mapping ๊ณผ์ ์ ์ํด Segment Table ํ์
- ์ธ๊ทธ๋จผํธ์ ํฌ๊ธฐ๋ ๊ฐ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ Segment Table์๋ ์์ ์ฃผ์์ ํจ๊ป limit ์ ๋ณด๊ฐ ์ฃผ์ด์ง
- ํ๋ก์ธ์ค๊ฐ ํ์๋กํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ๋งํผ์ด ํ ๋น๋๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๋จํธํ ๋ฌธ์ ํด๊ฒฐ
- ๋ฉ๋ชจ๋ฆฌ ํด์ ๋ฅผ ํตํ ์ธ๋ถ ๋จํธํ ๋ฐ์
Paging VS Segmentation
- Paging์ ๊ณ ์ ํฌ๊ธฐ์ ๋ถํ ๋จ์, Segmentation์ ๊ฐ๋ณ ํฌ๊ธฐ์ ๋ถํ ๋จ์๋ฅผ ๊ฐ์ง
- Paging์ ๋ด๋ถ ๋จํธํ ๋ฐ์ ๊ฐ๋ฅ, Segment์ ์ธ๋ถ ๋จํธํ ๋ฐ์ ๊ฐ๋ฅ
- Paging์ ์ธ๋ถ ๋จํธํ ํด๊ฒฐ, Segment์ ๋ด๋ถ ๋จํธํ ํด๊ฒฐ
โญ๏ธ ์ฐธ๊ณ
728x90