<h1><center> Segmentation </center></h1>
###### tags: `๐ป TIL`, `Comptuer Science`, `Operation System`
###### date: `2024-02-01T15:12:33.284Z`
> [color=#724cd1][name=๋ฐ๋ฆญ]
> [Nossi.DEV](https://www.nossi.dev/67c13b13-664b-4cea-9d70-90d672c6b719)
>
## Segmentation

> ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ ์ค ํ๋๋ก, ์ฃผ๊ธฐ์ต ์ฅ์น๋ฅผ ๋
ผ๋ฆฌ์ ์ผ๋ก ๋๋์ด ์ฌ๋ฌ ์ธ๊ทธ๋จผํธ๋ก ๊ตฌ์ฑํ๋ค. ๊ทธ ํ ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ๋ ๋ฐฉ๋ฒ์ด๋ค.
> ์ด๋ ์ธ๊ทธ๋จผํธ๋ผ ๋ถ๋ฆฌ๋ ๋
ผ๋ฆฌ์ ์ธ ๋ธ๋ก ๋จ์๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํจ์ผ๋ก์จ, ํ๋ก์ธ์ค์ ๋ฐ์ดํฐ ๋ฐ ์ฝ๋๋ฅผ ๋ถ๋ฆฌํ๊ณ ๋ณด๋ค ์ ์ฐํ๊ฒ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ค.
์ผ๋ฐ์ ์ผ๋ก ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ ์์ญ ์ค Code, Data, Stack, Heap ๋ฑ์ ๊ธฐ๋ฅ ๋จ์๋ก Segment๋ฅผ ์ ์ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
์ธ๊ทธ๋ฉํ
์ด์
๊ธฐ๋ฒ์์๋ ์ฃผ์ ๋ฐ์ธ๋ฉ(address binding)์ ์ํด ๋ชจ๋ ํ๋ก์ธ์ค๊ฐ ๊ฐ๊ฐ์ ์ฃผ์ ๋ณํ์ ์ํ segment table์ ๊ฐ์ง๋ค.
**NOTE**
> ์ฃผ์ ๋ฐ์ธ๋ฉ: ํ๋ก๊ทธ๋จ์ด ์ ์ฌ๋๋ ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์๊ฐ ๊ฒฐ์ ๋๋ ์๊ธฐ์ ๋ฐ๋ผ 3 ๊ฐ์ง๋ก ๋ถ๋ฅํ๋ค. ์ปดํ์ผ ํ์ ๋ฐ์ธ๋ฉ, ๋ก๋ ํ์ ๋ฐ์ธ๋ฉ, ์คํ์๊ฐ ๋ฐ์ธ๋ฉ
**ํน์ง**
- ์ธ๊ทธ๋จผํธ์ ๋ถ๋ฆฌ: ํ๋ก์ธ์ค์ ๋
ผ๋ฆฌ์ ์ธ ๋ถ๋ถ(์ฝ๋ ์ธ๊ทธ๋จผํธ, ๋ฐ์ดํฐ ์ธ๊ทธ๋จผํธ, ์คํ ์ธ๊ทธ๋จผํธ ๋ฑ)์ ์ธ๊ทธ๋จผํธ๋ก ๋๋๋ค.
- ๋
ผ๋ฆฌ์ ๋จ์ ํ ๋น: ๊ฐ ์ธ๊ทธ๋จผํธ๋ ๋
ผ๋ฆฌ์ ์ผ๋ก ๋
๋ฆฝ์ ์ธ ๋จ์๋ก ์กด์ฌํ๋ฉฐ, ํ๋ก์ธ์ค์ ๋ค์ํ ๋ถ๋ถ์ ๋ํ๋ธ๋ค.
- ์ธ๋ถ ๋จํธํ ๋ฌธ์ : ์ธ๊ทธ๋ฉํ
์ด์
์ ์ธ๋ถ ๋จํธํ๊ฐ ๋ฐ์ํ ์ ์๋ค. ์ฌ๋ฌ ์ธ๊ทธ๋จผํธ๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ํฉ์ด์ ธ ํ ๋น๋๋ฉด, ์์ ๋น ๊ณต๊ฐ๋ค์ด ๋ฐ์ํ๊ณ ์ด๋ฅผ ํ์ฉํ์ง ๋ชปํ๋ ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.
์ธ๊ทธ๋ฉํ
์ด์
์ ํ์ด์ง๊ณผ ํจ๊ป ์ฌ์ฉ๋๊ธฐ๋ ํ๋ฉฐ, ์ธ๊ทธ๋จผํธ ํ
์ด๋ธ์ด๋ผ๋ ์๋ฃ๊ตฌ์กฐ๋ฅผ ํตํด ๊ฐ ์ธ๊ทธ๋จผํธ์ ์ ๋ณด๋ฅผ ๊ด๋ฆฌํ๋ค.
## Paging๊ณผ Segmentation์ ์ฐจ์ด๋?
**๋จ์**
- ํ์ด์ง: ํ์ด์ง๋ผ ๋ถ๋ฆฌ๋ ๊ณ ์ ํฌ๊ธฐ์ ๋ธ๋ก์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ค. ๋ฌผ๋ฆฌ์ ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ด์ง ๋จ์๋ก ๋๋์ด ๊ด๋ฆฌ.
- ์ธ๊ทธ๋ฉํ
์ด์
: ์ธ๊ทธ๋จผํธ๋ก ๋ถ๋ฆฌ๋ ๋
ผ๋ฆฌ์ ์ธ ๋ธ๋ก์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ค. ๋ฌผ๋ฆฌ์ ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ธ๊ทธ๋จผํธ ๋จ์๋ก ๋๋์ด ๊ด๋ฆฌ
**ํฌ๊ธฐ ๋ณ๋**
- ํ์ด์ง: ํ์ด์ง ํฌ๊ธฐ๋ ๊ณ ์ ๋์ด ์์ผ๋ฉฐ, ์ผ๋ฐ์ ์ผ๋ก 4KB, 8KB์ ๊ฐ์ ์์ ํฌ๊ธฐ.
- ์ธ๊ทธ๋ฉํ
์ด์
: ์ธ๊ทธ๋จผํธ์ ํฌ๊ธฐ๋ ๊ฐ๋ณ์ ์ด๋ฉฐ, ์๋ก ๋ค๋ฅธ ์ธ๊ทธ๋จผํธ๋ ๋ค์ํ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง ์ ์๋ค.
**์ธ๋ถ ๋จํธํ**
- ๋ ๋ค ์ธ๋ถ ๋จํธํ๊ฐ ๋ฐ์ํ ์ ์๋ค.
**๊ตฌํ ๋ณต์ก์ฑ**
- ํ์ด์ง: ๊ตฌํ์ด ๋น๊ต์ ๊ฐ๋จํ๊ณ , ์ธ๋ถ ๋จํธํ๊ฐ ์ ์ด๋๊ธฐ ์ฝ๋ค.
- ์ธ๊ทธ๋ฉํ
์ด์
: ์ธ๊ทธ๋จผํธ์ ํฌ๊ธฐ๊ฐ ๊ฐ๋ณ์ ์ด๋ผ ๊ตฌํ์ด ๋ ๋ณต์กํ ์ ์์
**๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐฉ์**
- ํ์ด์ง: ํ์ด์ง๋ ๋ฌผ๋ฆฌ์ ์ธ ์ฃผ์์ ์ฐ์์ ์ผ๋ก ํ ๋น๋๋ค.
- ์ธ๊ทธ๋ฉํ
์ด์
: ์ธ๊ทธ๋จผํธ๋ ๋
ผ๋ฆฌ์ ์ธ ์ฃผ์์ ์ฐ์์ ์ผ๋ก ํ ๋น๋์ง ์์ ์ ์๋ฐ.
## Paged Segmentation๊ธฐ๋ฒ์?
ํ์ด์ง๊ณผ ์ธ๊ทธ๋ฉํ
์ด์
์ ์กฐํฉํ ๊ธฐ๋ฒ์ผ๋ก, ์ธ๊ทธ๋จผํธ๊ฐ ํ์ด์ง๋ก ๋๋์ด์ ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ ใด๋ฐฉ๋ฒ์ด๋ค.
์ด ๊ธฐ๋ฒ์ ์ธ๊ทธ๋จผํธ์ ํ์ด์ง์ ์ด์ ์ ๊ฒฐํฉํ์ฌ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ์ ์ ์ฐ์ฑ๊ณผ ํจ์จ์ฑ์ ๋์ด๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.
๊ฐ ์ธ๊ทธ๋จผํธ๊ฐ ํ์ด์ง๋ก ๋๋์ด์ง๊ณ , ๊ฐ ํ์ด์ง๋ ๊ณ ์ ๋ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๋ค. ์ด๋ก์จ ์ธ๊ทธ๋ฉํ
์ด์
์ ์ ์ฐ์ฑ๊ณผ ํ์ด์ง์ ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๋ฅผ ์ด๋์ ๋ ํด๊ฒฐํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ Paged Segmentation์ ์ธ๊ทธ๋จผํธ ํ
์ด๋ธ๊ณผ ํ์ด์ง ํ
์ด๋ธ ๋ ๊ฐ์ง๋ฅผ ์ฌ์ฉํด ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ๋ณํ์ ์ํํ๋ค.