[OS] ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๊ธฐ๋ฒ(์ฐ์ ํ ๋น, ๋ถ์ฐ์ ํ ๋น)์ ๋ํด ์์๋ณด์.
by rlaehddnd0422์ด์์ฒด์ ๋ ํ๋ก๊ทธ๋จ์ด ์คํ๋์ด ํ๋ก์ธ์ค๊ฐ ๋๊ธฐ ์ํด ํ์ํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ ๋ ์์ ๋ฉ๋ชจ๋ฆฌ ์์น, ๋ฉ๋ชจ๋ฆฌ ํ ๋น ํฌ๊ธฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๋นํ ์์น(๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์)๋ฅผ ์ ํฉ๋๋ค. ์ด ๋ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐฉ์์๋ ํฌ๊ฒ ๋ ๊ฐ์ง๋ก '์ฐ์ํ ๋น'๋ฐฉ์๊ณผ '๋ถ์ฐ์ํ ๋น' ๋ฐฉ์์ด ์์ต๋๋ค. ์ด๋ฒ ํฌ์คํ ์์ ์ด ๋ ๊ฐ์ง ๋ฐฉ์์ ๋ํด ์์๋ด ์๋ค.
๋จผ์ ์ฐ์ํ ๋น ๋ฐฉ์์ ๋๋ค.
์ฐ์ ํ ๋น ๋ฐฉ์
์ฐ์ํ ๋น ๋ฐฉ์์ ๋ฉ๋ชจ๋ฆฌ์ '์ฐ์์ '์ผ๋ก ๊ณต๊ฐ์ ํ ๋นํ๋ ๊ฒ์ ๋งํฉ๋๋ค.
์ฐ์ํ ๋น ๋ฐฉ์์ ๊ณ ์ ๋ถํ ๋ฐฉ์๊ณผ ๊ฐ๋ณ๋ถํ ๋ฐฉ์์ผ๋ก ๋๋ ์ ์์ต๋๋ค.
1. ๊ณ ์ ๋ถํ ๋ฐฉ์
๊ณ ์ ๋ถํ ๋ฐฉ์์ ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ฏธ๋ฆฌ ๊ฐ์ ํฌ๊ธฐ๋ก ๋ถํ ํด์ ํ ๋นํ๋ ๋ฐฉ๋ฒ์ ๋งํฉ๋๋ค. ๋ฏธ๋ฆฌ ๋๋์ด๋ ๋ถํ ์ ํ๋์ ํ๋ก์ธ์ค๋ฅผ ์ ์ฌํด ์คํ์ํฌ ์ ์๊ฒ ํ๋ ๋ฐฉ์์ ๋๋ค. ๊ทธ๋ฐ๋ฐ ๋ง์ฝ ๋ถํ ํ ํฌ๊ธฐ๋ณด๋ค ๋ ํฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ด ๋ค์ด์ค๊ฒ ๋๋ฉด ์ด๋ป๊ฒ ๋ ๊น์?
๊ทธ๋ฆผ๊ณผ ๊ฐ์ด 2์ ํฌ๊ธฐ๋ก ๊ณ ์ ๋ถํ ํ๊ฒ ๋๋ฉด 2๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ํ๋ก์ธ์ค๋ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋ ์ ์์ง๋ง, 2๋ณด๋ค ํฐ ํ๋ก์ธ์ค๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ๋ ์ ์๊ฒ ๋ฉ๋๋ค. ์ด๋ ๊ฒ ๋ฉ๋ชจ๋ฆฌ์์ ์ฌ์ฉ๊ฐ๋ฅํ ๊ณต๊ฐ์ ์ฌ์ฉํ์ง ๋ชปํ๊ฒ ๋๋ ํ์์ "์ธ๋ถ ๋จํธํ" ๋ผ๊ณ ํฉ๋๋ค!
๊ทธ๋ ๋ค๋ฉด ๊ณ ์ ๋ถํ ๋ฐฉ์์์๋ ์ธ๋ถ ๋จํธํ ๋ง๊ณ ๋ ๋ฌธ์ ๊ฐ ์์๊น์? ๊ทธ๋ ์ง ์์ต๋๋ค.
๋ง์ฝ ์ ๊ทธ๋ฆผ์์ P2๊ฐ ์๊ตฌํ๋ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ๊ฐ 1์ด๋ผ๊ณ ํด๋ด ์๋ค. ๊ทธ๋ฌ๋ฉด ๊ณ ์ ๋ถํ ์ ๋ฐ๋ผ ํ ๋น๋ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ํฌ๊ธฐ๋ 2์ธ๋ฐ 1๋ฐ์ ์ฌ์ฉํ์ง ๋ชปํ๊ฒ ๋์ด 1์ ๋จ๋ ๊ณต๊ฐ์ด ๋ฐ์ํ์ฃ ? ์ด์ฒ๋ผ ํ ๋น๋ฐ์์ง๋ง, ์ฌ์ฉํ์ง ์๋ ๊ณต๊ฐ์ด ๋ฐ์ํ๋ ๊ฒ์ "๋ด๋ถ ๋จํธํ"๋ผ๊ณ ํฉ๋๋ค.
์ธ๋ถ ๋จํธํ, ๋ด๋ถ ๋จํธํ๊ฐ ๋ฐ์ํ๊ฒ ๋๋ฉด ์ฌ์ฉํ์ง ์๋ ๊ณต๊ฐ์ด ๋ฐ์ํ๊ฒ ๋์ด, ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ญ๋น๋๊ฒ ๋ฉ๋๋ค.
2. ๊ฐ๋ณ ๋ถํ ๋ฐฉ์
๊ฐ๋ณ ๋ถํ ๋ฐฉ์์ ๊ณ ์ ๋ถํ ๋ฐฉ์๊ณผ ๋ฌ๋ฆฌ ํ๋ก๊ทธ๋จ์ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋์ ์ผ๋ก ํ ๋นํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
- ๋์ ์ผ๋ก ํ ๋นํ๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๋จํธํ ๋ฌธ์ ๋ ๋ฐ์ํ ์ผ์ด ์์ง๋ง, ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๋ ์ฌ์ ํ ๋ฐ์ํ ์ ์์ต๋๋ค.
์ด๋ ๊ฒ ์ธ๋ถ ๋จํธํ๊ฐ ๋ฐ์ํ ์ํ์์ ์ด ๋น ๊ณต๊ฐ์ ๊ณต๊ฐ์ ํฌ๊ธฐ๋ณด๋ค ํฐ ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๊ฒฝ์ฐ ๋ด๋ถ ๋จํธํ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค. ๋ฐ๋ผ์ ์ด ํ์์ ๋ง๊ธฐ ์ํด์๋ ์ด๋ค ์์น์ ์ฌ๋ฆด ์ง ๊ฒฐ์ ํ๋ ๊ฒ์ด ์ค์ํ๋ฐ์, ๋ํ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก 3๊ฐ์ง๊ฐ ์์ต๋๋ค.
- ์ต์ด์ ํฉ(First fit) : ์ต์๋จ ๋๋ ์ตํ๋จ์์๋ถํฐ ๋ค์ด๊ฐ ์ ์๋ ํ์ ์ฐพ์ผ๋ฉด ๋ฐ๋ก ํ ๋นํ๋ ๋ฐฉ์.
- ๋ชจ๋ ๊ณต๊ฐ์ ํ์ํ ํ์๊ฐ ์์ผ๋ฏ๋ก ์ค๋ฒํค๋ ๋ฐ์ X. ์๊ฐ์ ์ธ ์ธก๋ฉด์์๋ ์ ์ผ ํจ์จ์ ์ธ ๋ฐฉ์์ ๋๋ค
- ์ต์ ์ ํฉ(Best fit) : ํ์ํ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ ์ด์์ธ ๊ณต๊ฐ ์ค์์ ๊ฐ์ฅ ์์ ํ์ ํ ๋นํ๋ ๋ฐฉ์.
- ๋ชจ๋ ๊ณต๊ฐ์ ํ์ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ค๋ฒํค๋๊ฐ ๋ฐ์ํ์ง๋ง ๊ณต๊ฐ์ ์ธ ์ธก๋ฉด์์๋ ์ ์ผ ํจ์จ์ ์ ๋๋ค.
- ์ต์
์ ํฉ(Worst fit) : ํ๋ก์ธ์ค์ ํฌ๊ธฐ์ ๊ฐ์ฅ ๋ง์ด ์ฐจ์ด๊ฐ ๋๋ ํ์ ํ ๋นํ๋ ๋ฐฉ์. ๊ฐ์ฅ ๋๋ํ ๊ณณ์ ๋ค์ด๊ฐ๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๋จํธํ ๋ฐ์.
- ๋ง์ฐฌ๊ฐ์ง๋ก ๋ชจ๋ ๊ณต๊ฐ์ ํ์ํด์ผ ํ๋ ์ค๋ฒํค๋๋ ๋ฐ์ํ๊ณ ๊ณต๊ฐ์ ์ธ ์ธก๋ฉด์์๋ ์ ์ผ ๋นํจ์จ์ ..
์ธ ๊ฐ์ง ๋ฐฉ์ ๋ชจ๋ ๋ด๋ถ ๋จํธํ๊ฐ ๋ฐ์ํ ์ฌ์ง๊ฐ ์์ผ๋, ์ต์ ์ ํฉ์ด ๊ฐ์ฅ ๋ด๋ถ๋จํธํ๊ฐ ์๊ฒ ๋ฐ์ํ๊ณ ๊ทธ ๋ค์์ผ๋ก ์ต์ด ์ ํฉ, ๊ทธ ๋ค์์ผ๋ก ์ต์ ์ ํฉ์ด ๋ด๋ถ ๋จํธํ๊ฐ ํฌ๊ฒ ๋ฐ์ํ ์ฌ์ง๊ฐ ์์ต๋๋ค.
๊ฐ๋ณ ๋ถํ ๋ฐฉ์์์ ๋ฐ์ํ๋ ๋ด๋ถ ๋จํธํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ 3๊ฐ์ง ๋ฐฉ๋ฒ์ ์์๋ณด์์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๋ ํด๊ฒฐํ ์ ์์๊น์?
๋ฉ๋ชจ๋ฆฌ ์ปดํฉ์ ์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค!
๋ฉ๋ชจ๋ฆฌ ์ปดํฉ์ ์ด๋?
- ํ๋ก์ธ์ค๊ฐ ์ข ๋ฃ๋ ์๋ฆฌ์์ ์๊ฒจ๋ ๊ฐ์ฉ๊ณต๊ฐ์ ์์ ๊ธฐ ์ํด ์ ์ฌ๋ ํ๋ก์ธ์ค๋ค์ ํ์ชฝ์ผ๋กท ๋ชฐ๊ณ ๊ฐ์ฉ๊ณต๊ฐ์ ๋ค๋ฅธํ์ชฝ์ผ๋ก ๋ชจ์์ ํ๋์ ํฐ ๊ฐ์ฉ๊ณต๊ฐ์ ๋ง๋๋ ๊ฒ์ "๋ฉ๋ชจ๋ฆฌ ์ปดํฉ์ "์ด๋ผ๊ณ ํฉ๋๋ค.
- ์ด๋ ๊ฒ ํ๋ก์ธ์ค๋ค์ ํ์ชฝ์ผ๋ก ์ญ ์ด๋์์ผ, ์์ ๋น ๊ณต๊ฐ์ ๋ง๋ ๋ค๋ฉด ์ธ๋ถ์ ๋น ์กฐ๊ฐ์ด ์๊ฒจ๋๋ ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๋ฅผ ๋ง์ ์ ์๋ต๋๋ค.
- ํ์ง๋ง ์ด๋ ๊ฒ ํ๋ก์ธ์ค๋ค์ ์ด๋์ํค๋ ๊ฒ๋ ๋น์ฉ์ด ๋งค์ฐ ๋ง์ด ๋๋ ์์ ์ ๋๋ค.
๋ถ์ฐ์ ํ ๋น
๋ถ์ฐ์ ํ ๋น ๊ธฐ๋ฒ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฐ์์ ์ผ๋ก ํ ๋นํ์ง ์๋ ๋ฐฉ๋ฒ์ผ๋ก ํ๋ ์ด์์ฒด์ ์์ ์ฌ์ฉํ๋ ๋ฐฉ์์ ๋๋ค.
๋ถ์ฐ์ ํ ๋น ๊ธฐ๋ฒ์ ํ๋ก๊ทธ๋จ์ ํ์ํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ "์ชผ๊ฐ์ด" ์๋ก ๋ค๋ฅธ ์์น์ ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋นํ๋ ๋ฐฉ์์ผ๋ก, ๋ํ์ ์ผ๋ก ํ์ด์ง ๋ฐฉ์๊ณผ ์ธ๊ทธ๋จผํ ์ด์ ๊ธฐ๋ฒ์ด ์์ต๋๋ค.
ํ์ด์ง
ํ์ด์ง์ ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ ๋ "๋์ผํ ํฌ๊ธฐ"์ ํ์ด์ง ๋จ์๋ก ๋๋์ด ๋ฉ๋ชจ๋ฆฌ์ "์๋ก ๋ค๋ฅธ ์์น"์ ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ๋ ๋ฐฉ์์ ๋๋ค.
- ๋ชจ๋ ํ๋ก์ธ์ค๋ฅผ ์ผ์ ํ ํฌ๊ธฐ๋ก ๋๋์ด์ ํ ๋นํ๊ธฐ ๋๋ฌธ์ ํ์ ํฌ๊ธฐ๊ฐ ๊ท ์ผํ์ง ์์ ๋ฐ์ํ๋ ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๋ ์์ง๋ง, ์ฃผ์ ๋ณํ์ ํ์ด์ง๋ณ๋ก ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ฃผ์ ๋ณํ์ด ๋ณต์กํด์ง๋ ๋จ์ ์ด ์์ต๋๋ค.
Q. ํ์ด์ง์์ ๋ด๋ถ ๋จํธํ๋ ๋ฐ์ํ์ง ์๋์?
A. ๋ฐ์ํ ์ ์์ต๋๋ค. ํ์ด์ง ์ฌ์ด์ฆ๊ฐ 2์ผ๋ 5์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง ํ๋ก๊ทธ๋จ์ ํ์ด์งํ๋ฉด 2/2/1๋ก ๋๋ ์ ์์ด์. ์ด ๋ ๋ง์ง๋ง ํ์ด์ง์์ (2-1)์ ๋ด๋ถ ๋จํธํ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ธ๊ทธ๋จผํ ์ด์
- ์ธ๊ทธ๋จผํ ์ด์ ๋ฐฉ์์ ํ์ด์ง ๋จ์๊ฐ ์๋ ์๋ฏธ ๋จ์์ธ Segment๋ก ๋๋๋ ๋ฐฉ์์ ๋๋ค. ํ๋ก์ธ์ค๋ ์ฝ๋, ๋ฐ์ดํฐ, ์คํ, ํ ์์ญ์ผ๋ก ๋๋์ด์ ธ์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํ ๋น๋๋๋ฐ ์ด๋ฌํ ๋ ผ๋ฆฌ์ ์ธ ์์ญ์ ์ธ๊ทธ๋จผํธ๋ผ๊ณ ํฉ๋๋ค.
- ์ด ์ฝ๋, ๋ฐ์ดํฐ ์์ญ ๋ฑ ์ธ๊ทธ๋จผํธ๋ค ๋ด๋ถ์์๋ ๋ ์์ ์ธ๊ทธ๋จผํธ๋ก ๋๋ ์ ์์ด์.
- ์ฝ๋์์ญ์๋ ์ฌ๋ฌ ํจ์๋ค์ด ์กด์ฌํ๋๋ฐ ์ด ์ฝ๋์์ญ ์ ์ฒด๋ฅผ ์ธ๊ทธ๋จผํธ๋ก ์ฌ๋ฆฌ๋ ๊ฒ์ด ์๋ a ํจ์ ์ธ๊ทธ๋จผํธ, bํจ์ ์ธ๊ทธ๋จผํธ์ ๊ฐ์ด ์ชผ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋นํฉ๋๋ค.
- ์ธ๊ทธ๋จผํธ๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋นํ ๋๋ ํ์ด์ง๋ฅผ ํ ๋นํ๋ ๊ฒ๊ณผ ๋์ผํ์ง๋ง ์ด ๋ Segment Table์ด๋ผ๋ ์ฃผ์์ ํฌ๊ธฐ๋ฅผ ๋ด๊ณ ์๋ ํ ์ด๋ธ์ ํตํด ๋ฉ๋ชจ๋ฆฌ์ ํ ๋นํฉ๋๋ค.
- ํ๋ก์ธ์ค์ ์์ญ๋ณ๋ก ๋ค๋ฅธ ์ฃผ์์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋น๋ฐ๊ธฐ ๋๋ฌธ์ ๊ณต์ ์ ๋ณด์ ์ธก๋ฉด์์๋ ์ข์ง๋ง, ํ ํฌ๊ธฐ๊ฐ ๊ท ์ผํ์ง ์์ ๋ฐ์ํ๋ ์ธ๋ถ ๋จํธํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
- ์์ญ๋ณ๋ก ํฌ๊ธฐ์ ๋ง๊ฒ ๋์ ์ผ๋ก ํ ๋นํ๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๋จํธํ ๋ฌธ์ ๋ ๋ฐ์ํ์ง ์๋๋ค๋ ์ !
์ด๋ฒ ํฌ์คํ ์์๋ ์ด๋ ๊ฒ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๊ธฐ๋ฒ์ ๋ํด ์์๋ณด์์ต๋๋ค!
<์ฐธ๊ณ ์๋ฃ>
'๐ CS > OS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[OS] ์บ์ ๋ฉ๋ชจ๋ฆฌ์ ์ง์ญ์ฑ(Locality)๊ณผ ๋งคํ ๊ธฐ๋ฒ (0) | 2024.05.27 |
---|---|
[OS] CPU ์ค์ผ์ค๋ง ์๊ณ ๋ฆฌ์ฆ (1) | 2024.05.27 |
[OS] Deadlock๊ณผ Banker's Algorithm (0) | 2024.05.23 |
[OS] ํ๋ก์ธ์ค, ์ค๋ ๋์์ ๋ฐ์ํ๋ ๊ฒฝ์์ํ์ ํด๊ฒฐ์ฑ ์ ๋ํด (1) | 2024.05.22 |
[OS] ํ๋ก์ธ์ค ๊ฐ ํต์ ์ ์ฌ์ฉ๋๋ IPC (Inter Process Communication)์ ์ข ๋ฅ (1) | 2024.05.22 |
๋ธ๋ก๊ทธ์ ์ ๋ณด
Study Repository
rlaehddnd0422