STUDY/OS
[OS] CPU ์ค์ผ์ค๋ง : ์ต๋จ ์์ ์ฐ์ ์ค์ผ์ค๋ง, ๋ผ์ด๋ ๋ก๋น ์ค์ผ์ค๋ง
ozllzL
2022. 3. 27. 19:11
๐คทโ๏ธ CPU ์ค์ผ์ค๋ง์ด๋?
์๋.. ๊ธ์จ ํฌ๊ธฐ ์กฐ์ ๊ฐ๋ฅํ๊ฑฐ ์ง๊ธ์..
- OS๋ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฌ ๊ฐ์ ํ๋ก์ธ์ค๋ฅผ ์ฌ๋ ค๋๊ณ , CPU์ ๊ฐ๋ ์๊ฐ์ ์ ์ ํ ๋๋์ด ๊ฐ๊ฐ์ ํ๋ก์ธ์ค์๊ฒ ๋ถ๋ฐฐํ์ฌ ์คํํ๋๋ก ํ๋ค.
ํ์ฌ ์คํ ์ค์ธ ํ๋ก์ธ์ค๋ก๋ถํฐ ๋ค๋ฅธ ํ๋ก์ธ์ค๋ก CPU๋ฅผ ๋๊ฒจ์ฃผ์ด์ผ ๋ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ ํ๋ก์ธ์ค๋ค ์ค์ ์ด๋ค ํ๋ก์ธ์ค๋ฅผ ์ ํํด์ผ ํ ์ง์ ๋ํ ๋ฐฉ์,๊ธฐ์ค - ์ฅ๊ธฐ ์ค์ผ์ค๋ง - ์ด๋ ์์
์ ์ปค๋์ ๋ฑ๋ก์์ผ ํ๋ก์ธ์ค๋ก ๋ง๋ค์ด ์ค ๊ฒ์ธ๊ฐ
์ค๊ธฐ ์ค์ผ์ค๋ง - ๋ณด๋ฅ ์ํ์ ํ๋ก์ธ์ค๋ค(์์์ ๋ฑ๋กํ ํ๋ก์ธ์ค) ์ค์์ ์ด๋ ํ๋ก์ธ์ค์๊ฒ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํด ์ค ๊ฒ์ธ๊ฐ
๋จ๊ธฐ ์ค์ผ์ค๋ง - ์ค๋น ์ํ์ ํ๋ก์ธ์ค๋ค(์์์ ํ ๋น๋ฐ์ ํ๋ก์ธ์ค) ์ค์์ ์ด๋ ํ๋ก์ธ์ค์๊ฒ CPU๋ฅผ ํ ๋นํ ๊ฒ์ธ๊ฐ. <- ์ผ๋ฐ์ ์ผ๋ก ๋ถ๋ฅด๋ ์ค์ผ์ค๋ง - ์ฌ์ฉ์ ๊ด์ ์์๋ ์๋ต์๊ฐ, ์์คํ ๊ด์ ์์๋ CPU์ ์ฒ๋ฆฌ๋๊ณผ ํ์ฉ๋๊ฐ ์ฑ๋ฅ ์งํ๊ฐ ๋๋ค.
๐โ๏ธ ์ต๋จ ์์ ์ฐ์ ์ค์ผ์ค๋ง
- SJS(Shortest Job First) ์ค์ผ์ค๋ง, SPN(Shortest Process Next) ์ค์ผ์ค๋ง์ด๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค.
- ์ค๋น ํ์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ ํ๋ก์ธ์ค ์ค์์ ๊ฐ์ฅ ์งง์(CPU ์๊ตฌ๋์ด ๊ฐ์ฅ ์ ์) ํ๋ก์ธ์ค๋ฅผ ๋จผ์ ์คํ์์ผ ์ค๋ค.
- ํ๋ก์ธ์ค๊ฐ ์์์ ํ ๋น๋ฐ์ผ๋ฉด ์ค์ค๋ก ๋ฐ๋ฉํ ๋๊น์ง ๊ณ์ ๊ทธ ์์์ ์ฌ์ฉํ๋๋ก ํ๋ ๋น์ ์ ๋ฐฉ์์ด๋ค.(Nonpreemption) <-> SRT(Shortest Remaining Time) ์ค์ผ์ค๋ง
- ๋จ์ :
๊ธด ํ๋ก์ธ์ค๋ ์์์ ํ ๋น๋ฐ์ง ๋ชปํ ์ํ์์ ์งง์ ํ๋ก์ธ์ค๊ฐ ๊ณ์ํด์ ๋์ฐฉํ ์ ์์ผ๋ฏ๋ก, ๋ฌดํ ๋๊ธฐ ํ์์ด ๋ฐ์ํ ์ ์๋ค.
๊ฐ ํ๋ก์ธ์ค๋ค์ ํฌ๊ธฐ๋ฅผ ์คํ ์ ์ ์ ํํ ์ ์ ์๋ค. ๋น์ทํ ํ๊ฒฝ์์ ์์ฃผ ์คํ๋์ด ์ง๋ ํ๋ก์ธ์ค๋ ์ง์ ํ๊ท ์ผ๋ก ์ถ์ธกํ์ฌ ์ค์ผ์ค๋ง ํ๊ธฐ๋ ํ๋ค.
- ์์
ํ๋ก์ธ์ค | ๋์ฐฉ ์๊ฐ | CPU ์๊ตฌ๋(์ด) |
P1 | 0 | 10 |
P2 | 0.5 | 5 |
P3 | 1 | 2 |
P4 | 1 | 4 |
๐ซ ๋ผ์ด๋ ๋ก๋น ์ค์ผ์ค๋ง
- TMI : ๋ผ์ด๋ ๋ก๋น์ ์ฌ์ ์ ์๋ฏธ๋ ์๋ช ํ ์ฌ๋์ ์์๋ฅผ ๋ฐํ์ง ์๊ธฐ ์ํด ์ํ์ผ๋ก ์๋ช ํ ํญ์์ ์ฌ๋ฐํต๋ฌธ(ๆฒ้ข้ๆ)์ด๋ค. ์ฆ, ๊ทธ๋ฐ ์์ผ๋ก ๋ชจ๋ ํ๋ก์ธ์ค์ ์์๋ฅผ ๊ณตํํ๊ฒ ํ์๋ ์์ผ๋ก ์ง์ ๊ฒ ๊ฐ์๋ฐ... ์ด๊ฑด ๋ํผ์ ์ด๋ค.
- FCFS ์ค์ผ์ค๋ง ๊ธฐ๋ฐ(First Come First Service, ์จ ์์๋๋ก ์คํ์ํค๋ ๋น์ ์ ๋ฐฉ์) ์ผ๋ก ํ๋,
๊ฐ ํ๋ก์ธ์ค๋ ํ ๋ฒ์ ์ธ ์ ์๋ CPU ์๊ฐ ํฌ๊ธฐ(์๊ฐ ํ ๋น๋)์ด ์ง๋๋ฉด ์๊ฐ ์ข ๋ฃ ์ธํฐ๋ฝํธ์ ์ํด CPU๋ฅผ ๋บ๊ธฐ๋ ์ ์ ๋ฐฉ์์ด๋ค. - ๊ธฐ๋ณธ์ ๋ผ์ด๋ ๋ก๋น
- ๊ฐ์(Virtual) ๋ผ์ด๋ ๋ก๋น
- ๊ธฐ๋ณธ์ ๋ผ์ด๋ ๋ก๋น์์๋ ์ ์ถ๋ ฅ ์์ฃผ์ ํ๋ก์ธ์ค๋ ์ ์ถ๋ ฅ์ ๋ฐ์์ํจ ๋ค์, ์ ์ถ๋ ฅ์ด ์๋ฃ๋๋ฉด ๋ฐ๋ก ์ค๋น ํ์ ๋งจ ๋ค๋ก ๋์๊ฐ๋ค. ์ด ๋, ์๊ฐ ํ ๋น๋์ด ๋จ์์๋ค๋ฉด, ๊ทธ ์๊ฐ์ ๋ณด์๋ฐ์ง ๋ชปํ๋ค. ๋ฐ๋ฉด, ์ฐ์ฐ ์์ฃผ์ ํ๋ก์ธ์ค๋ ์๊ฐ ํ ๋น๋์ ๋ชจ๋ ์์งํ๊ณ ์ค๋น ํ๋ก ๋ค์ด๊ฐ๋ค.
- ์ด ๋ฌธ์ ๋ฅผ ๋ณด์ํ๊ธฐ ์ํด ์๊ฐ ํ ๋น๋์ด ๋จ์ ์ ์ถ๋ ฅ์ ๋ง์น ํ๋ก์ธ์ค๋ค์ด ๋ค์ด๊ฐ๋ ์ค๋น ํ๋ฅผ ๋ฐ๋ก ํ๋ ๋๋ค. ์ด ํ์ ์ฐ์ ์์๋ ์๋ ์ค๋น ํ๋ณด๋ค ๋ ๋์ผ๋ฉฐ, CPU์ ์๊ฐ ํ ๋น์ ๋ฐ์ ๋๋ ์ฐ์ง ๋ชปํ๊ณ ๋จ๊ธด ์๊ฐ๋ง ์ค๋ค. - CPU๋ฅผ ๋
์ ํ๋ ๋จ์ ์ ๋ณด์ํ ์๋ ์์ง๋ง, CPU์ ์ ์ ์ ๋ฐ๋ฅธ ๋ฌธ๋งฅ ๊ตํ์ ์ค๋ฒํค๋๋ฅผ ๊ฐ์ํด์ผํ๋ค.
์๊ฐ ํ ๋น๋์ด ์์ผ๋ฉด ์ค๋ฒํค๋๊ฐ ๋๋ฌด ์ปค์ง๋ฉฐ, ๋๋ฌด ํฌ๋ฉด FCFS์ ๊ฐ์์ง๊ฒ ๋๋ฏ๋ก ์ ์ ํ ์๊ฐ ํ ๋น๋์ ์ฐพ์์ผ ํ๋ค. - ์ค๋ฒํค๋์๋ ๋ถ๊ตฌํ๊ณ ๋ํ์ ์์คํ ์ด๋ ์๋ถํ ์์คํ ์ ์ ํฉํ ๋ฐฉ๋ฒ์ผ๋ก ์๋ ค์ ธ์๋ค.
- ์์
ํ๋ก์ธ์ค | CPU ์๊ตฌ๋(์ด) |
P1 | 30 |
P2 | 8 |
P3 | 15 |
P4 | 10 |
์ถ์ฒ
๊น์ฃผ๊ท , ใOS? Oh Yes!ใ, ํด๋จผ์ธ์ด์ธ์ค
https://ko.wikipedia.org/wiki/%EB%B9%84%EC%84%A0%EC%A0%90_%EC%8A%A4%EC%BC%80%EC%A4%84%EB%A7%81
Silbershartz, Galvin andGagne ใOperating System Concepts - 10th Editionใ, Wiley