ํฐ์คํ ๋ฆฌ ๋ทฐ
[์ด์์ฒด์ ] ํ์ด์ง๊ณผ ์ธ๊ทธ๋จผํ ์ด์
๊ฐ๋ฐ๊ฐ๊ตด๐ธ 2022. 7. 20. 16:28๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ์ด๋?
ํ์ด์ง๊ณผ ์ธ๊ทธ๋จผํ ์ด์ ์ *๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ ๊ธฐ๋ฒ์ผ๋ก ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์๊ฒ ๋๋์ด ๋น์ฐ์์ ์ผ๋ก ์ค์ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋นํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ์ ๋๋ค.
*๊ฐ์ ๋ฉ๋ชจ๋ฆฌ : ์ค์ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ์ ์๊ด์์ด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉ ํ ์ ์๋๋ก ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ
https://j-su2.tistory.com/59?category=1016207
์ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ์ ๋ฌธ์ ์
๋ค์ค ํ๋ก๊ทธ๋๋ฐ ์์คํ ์ ์ฌ๋ฌ ํ๋ก์ธ์ค๋ฅผ ์์ฉํ๊ธฐ ์ํด RAM์ ๋์ ๋ถํ ํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์์ ์ด ํ์ํฉ๋๋ค. ์ด๋ ํ๋ก๊ทธ๋จ ์ ์ฒด๊ฐ ํ๋์ ์ปค๋ค๋ ๊ณต๊ฐ์ ์ฐ์์ ์ผ๋ก ํ ๋น๋์ด ์๋ค๋ฉด *๋จํธํ ํ์์ด ๋ฐ์ํฉ๋๋ค.
- ๊ณ ์ ๋ถํ ๊ธฐ๋ฒ : ์ฃผ ๊ธฐ์ต ์ฅ์น๊ฐ ๊ณ ์ ๋ ํํฐ์ ์ผ๋ก ๋ถํ -> ๋ด๋ถ ๋จํธํ ๋ฐ์
- ๋์ ๋ถํ ๊ธฐ๋ฒ : ํํฐ์ ๋ค์ด ๋์ ์์ฑ๋๋ฉฐ ์์ ์ ํฌ๊ธฐ์ ๊ฐ์ ํํฐ์ ์ ์ ์ฌ -> ์ธ๋ถ ๋จํธํ ๋ฐ์
*๋จํธํ ํ์ : ๊ธฐ์ต ์ฅ์น์ ๋น ๊ณต๊ฐ ๋๋ ์๋ฃ๊ฐ ์ฌ๋ฌ ์กฐ๊ฐ์ผ๋ก ๋๋๋ ํ์์ผ๋ก ํ๋ก์ธ์ค๋ค์ด ์ฐจ์งํ๋ ๋ฉ๋ชจ๋ฆฌ ํ ์ฌ์ด์ ์ฌ์ฉํ์ง ๋ชปํ ๋งํผ์ ์์ ๊ณต๊ฐ์ด ๋์ด๋๊ฒ ๋ฉ๋๋ค.
์์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ฐ์ํ ์ธ๋ถ ๋จํธํ ํด์๋ฅผ ์ํ ํ์ด์ง๊ณผ ๋ด๋ถ ๋จํธํ ํด์๋ฅผ ์ํ ์ธ๊ทธ๋จผํ ์ด์ ๊ธฐ๋ฒ์ด ์์ต๋๋ค.
ํ์ด์ง(Paging)์ด๋?
ํ๋ก์ธ์ค์ ์ฃผ์ ๊ณต๊ฐ์ ์ผ์ ํ ํฌ๊ธฐ์ ํ์ด์ง๋ก ๋ถํ ํด์ ๋ฉ๋ชจ๋ฆฌ์ ๋ถ์ฐ์์ผ๋ก ์ ์ฅํ๋ ๋ฐฉ์์ ๋๋ค.
- ํ์ด์ง : ๊ณ ์ ์ฌ์ด์ฆ์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๋ด ํ๋ก์ธ์ค ์กฐ๊ฐ
- ํ๋ ์ : ํ์ด์ง ํฌ๊ธฐ์ ๊ฐ์ ์ฃผ ๊ธฐ์ต ์ฅ์น์ ๋ฉ๋ชจ๋ฆฌ ์กฐ๊ฐ
์์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ํ์ด์ง ํ ์ด๋ธ์ ์ฌ์ฉํด ๊ณ ์ ํฌ๊ธฐ์ ํ์ด์ง๋ก ๋ถ๋ฆฌ๋ ๊ฐ์๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ณ ์ ํฌ๊ธฐ์ ํ๋ ์์ธ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋งคํํด์ค๋๋ค. ์ด๋, ๊ฐ๋ฐ ํ์ด์ง๋ ์์์ ์๊ด ์์ด ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์๋ ํ๋ ์์ ๋งค์นญ๋์ด ์ ์ฅ๋ฉ๋๋ค.
- ๋ชจ๋ ํ๋ก์ธ์ค๋ ํ๋์ ํ์ด์ง ํ ์ด๋ธ์ ๊ฐ์ง๊ณ ์์
- ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋์ด ์๋ ํ์ด์ง ๋ฒํธ์ ํด๋น ํ์ด์ง๊ฐ ์์นํ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์์ ์ฃผ์๊ฐ ์์
- ํ๋์ ํ๋ก์ธ์ค๋ฅผ ๋๋ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ํ์ด์ง๋ค์ด ๊ฐ๊ฐ ์ค์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์ด๋ ํ๋ ์์ ์ ์ฌ๋์ด ์๋์ง ์์๋
- ๋ ผ๋ฆฌ ์ฃผ์์ ๋ฌผ๋ฆฌ ์ฃผ์๋ก ๋ณํ๋ ๋ MMU๊ฐ ํ์ํจ
๋ฐ๋ผ์ ์์ ๊ทธ๋ฆผ์์ P1 ํ๋ก์ธ์ค์ 0๋ฒ์งธ ํ์ด์ง๋ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ 5๋ฒ์งธ ํ๋ ์์ด ์กด์ฌํ๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
ํ์ด์ง์ ์ฅ์
- ๋ ผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ ๋ ์ฐ์๋์ด ์ ์ฅ๋ ํ์๊ฐ ์์
- ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ๋จ๋ ํ๋ ์์ ์ ์ ํ ๋ฐฐ์น๋๊ธฐ ๋๋ฌธ์ ์ธ๋ถ ๋จํธํ๊ฐ ์๊ธฐ์ง ์์
ํ์ด์ง์ ๋จ์
- ๋ด๋ถ ๋จํธํ ๋ฌธ์ ๊ฐ ๋ฐ์
- ํ์ด์ง ๋จ์๋ฅผ ๋งค์ฐ ์๊ฒ ๋ง๋ค๋ฉด ๋ด๋ถ ๋จํธํ๋ฅผ ์ค์ผ ์ ์์ง๋ง ํ์ด์ง ๋งคํ ๊ณผ์ ์ด ๋ณต์กํด์ ธ ์คํ๋ ค ๋นํจ์จ์
์ธ๊ทธ๋จผํ ์ด์ (Segmentation)์ด๋?
๋ฌผ๋ฆฌ์ ์ธ ๊ณ ์ ํฌ๊ธฐ๋ก ๋ถํ ํ๋ ํ์ด์ง๊ณผ ๋ฌ๋ฆฌ ํ๋ก๊ทธ๋จ์ ๋ ผ๋ฆฌ์ ์ธ ๋ด์ฉ ๋จ์๋ก ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๋ถ๋ฆฌํ๋ ๊ธฐ๋ฒ์ ๋๋ค. ์ฆ, ํ๋ก์ธ์ค๋ฅผ ํฌ๊ธฐ๊ฐ ์๋ก ๋ค๋ฅธ ๋ ผ๋ฆฌ์ ์ธ ๋จ์์ธ ์ธ๊ทธ๋จผํธ๋ก ๋ถํ ํด ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
ํ์ด์ง๊ณผ ๋งคํ ํ ์ด๋ธ ๋์ ๋ฐฉ์์ ๋์ผํ์ง๋ง, ๋ ผ๋ฆฌ ์ฃผ์์ ์ ๋นํธ๋ค์ ํ์ด์ง ๋ฒํธ๊ฐ ์๋๋ผ ์ธ๊ทธ๋จผํธ ๋ฒํธ๋ฅผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. <segment, offset> ํํ๋ก ๊ตฌ์ฑ๋์ด ์์ด ์ธ๊ทธ๋จผํธ ๋ฒํธ๋ฅผ ํตํด ์ธ๊ทธ๋จผํธ์ ๊ธฐ์ค( ์ธ๊ทธ๋จผํธ์ ์์ ๋ฌผ๋ฆฌ ์ฃผ์)์ ํ๊ณ (์ธ๊ทธ๋จผํธ์ ๊ธธ์ด)๋ฅผ ํ์ ํ ์ ์์ต๋๋ค.
์ธ๊ทธ๋จผํ ์ด์ ์ ์ฅ์
- ๊ฐ๋ณ์ ์ธ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๋จํธํ ๋ฌธ์ ๊ฐ ํด์๋จ
- ๋ณดํธ์ ๊ณต์ ๊ธฐ๋ฅ์ ์ํํ ์ ์์. ํ๋ก๊ทธ๋จ์ ์ค์ํ ๋ถ๋ถ๊ณผ ์ค์ํ์ง ์์ ๋ถ๋ถ์ ๋ถ๋ฆฌํ์ฌ ์ ์ฅํ ์ ์๊ณ , ๊ฐ์ ์ฝ๋ ์์ญ์ ํ๋ฒ์ ์ ์ฅ ๊ฐ๋ฅ
์ธ๊ทธ๋จผํ ์ด์ ์ ๋จ์
- ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๊ฐ ๋ฐ์
ํ์ด์ง๊ณผ ์ธ๊ทธ๋จผํ ์ด์ ์ข ๋ฅ
๋จ์ ํ์ด์ง
- ๊ฐ ํ๋ก์ธ์ค๋ ํ๋ ์๊ณผ ๊ฐ์ ๊ธธ์ด๋ฅผ ๊ฐ์ง ๊ท ๋ฑ ํ์ด์ง๋ก ๋๋จ
- ์ธ๋ถ ๋จํธํ X
- ๋ด๋ถ ๋จํธํ O
๋จ์ ์ธ๊ทธ๋จผํ ์ด์
- ๊ฐ ํ๋ก์ธ์ค๋ ์ฌ๋ฌ ์ธ๊ทธ๋จผํธ๋ก ๋๋จ
- ๋ด๋ถ ๋จํธํ X, ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ ๊ฐ์ , ๋์ ๋ถํ ์ ํตํ ์ค๋ฒํค๋๊ฐ ๊ฐ์
- ์ธ๋ถ ๋จํธํ O
๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ํ์ด์ง
- ๋จ์ ํ์ด์ง๊ณผ ๋น๊ตํด ํ๋ก์ธ์ค ํ์ด์ง ์ ๋ถ๋ฅผ ๋ก๋ํ ํ์๊ฐ ์์
- ํ์ํ ํ์ด์ง๊ฐ ์์ผ๋ฉด ๋์ค์ ์๋์ผ๋ก ๋ถ๋ฌ ๋ค์ผ ์ ์์
- ์ธ๋ถ ๋จํธํX
- ๋ณต์กํ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ก ์ค๋ฒํค๋๊ฐ ๋ฐ์ํ ์ ์์
๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ธ๊ทธ๋จผํ ์ด์
- ํ์ํ์ง ์์ ์ธ๊ทธ๋จผํธ๋ค์ ๋ก๋๋์ง ์์
- ํ์ํ ์ธ๊ทธ๋จผํธ๊ฐ ์์ ๋ ๋์ค์ ์๋์ผ๋ก ๋ถ๋ฌ ๋ค์ผ ์ ์์
- ๋ด๋ถ ๋จํธํX
- ๋ณต์กํ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ก ์ค๋ฒํค๋๊ฐ ๋ฐ์ํ ์ ์์
[์ฐธ๊ณ ]
https://bellog.tistory.com/159
https://steady-coding.tistory.com/524
'CS > Operating System' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ด์์ฒด์ ] ๋๊ธฐ์ ๋น๋๊ธฐ, Blocking๊ณผ Non-Blocking (0) | 2022.10.19 |
---|---|
[์ด์์ฒด์ ] Unix์ Linux๋? + (Shell Script๋?) (1) | 2022.10.18 |
[์ด์์ฒด์ ] ํ๋ก์ธ์ค์ ์ค๋ ๋ (1) | 2022.09.25 |
[์ด์์ฒด์ ] ๋ฌธ๋งฅ ๊ตํ(Context Switching)์ด๋? (0) | 2022.07.23 |
[์ด์์ฒด์ ] ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋? (VM์ด๋?) (0) | 2022.07.19 |
- Total
- Today
- Yesterday
- ์ฝ๋ฉํ ์คํธ
- ๋คํธ์ํฌ
- ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
- ๋ฐฑ์ค
- http
- ๋์์ธ ํจํด
- ํ๋กํผํฐ
- ์นด์นด์ค ์ธํด
- map
- ๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ deep dive
- ์ด๋ถํ์
- ์ ์ญ ๋ณ์
- ๋ ์์ปฌ ํ๊ฒฝ
- ํฌํฌ์ธํฐ
- ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
- TDD
- ํ๋ก๊ทธ๋๋จธ์ค
- ์๊ณ ๋ฆฌ์ฆ
- git
- ์ด์์ฒด์
- ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ
- 2019 ์นด์นด์ค ๊ฐ๋ฐ์ ๊ฒจ์ธ ์ธํด
- ๋ฐฑ์ค node.js
- ์๋ฐ
- fp
- ํ๋กํ ์ฝ
- Baekjoon
- ๋ฐฑ์ค javascript
- JavaScript
- ์๋ฐ์คํฌ๋ฆฝํธ
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |