์ค์ผ์ค๋ง(Scheduling)
์ฌ๋ฌ ํ๋ก์ธ์ค์ ์ฒ๋ฆฌ ์์๋ฅผ ๊ฒฐ์ ํ๋ ๊ธฐ๋ฒ
1๏ธโฃ ์ ์ ํ (Preemptive)
์ด์์ฒด์ ๊ฐ ์คํ ์ค์ธ ํ๋ก์ธ์๋ก๋ถํฐ CPU๋ฅผ ๊ฐ์ ๋ก ๋นผ์์
→ ํ๋ก์ธ์ ๋ณ CPU ์ฒ๋ฆฌ ์๊ฐ ๋จ์(์๋ถํ )๋ก ํจ์จ์ ์ธ ์ด์ ๊ฐ๋ฅ, ํ์ง๋ง ๋์ ์ค๋ฒํค๋* ๋ฐ์
| Round Robin | ์ฐ์ ์์ ์์ด ์๊ฐ ๋จ์๋ก CPU ํ ๋น (๊ณตํํ ์์ ๋ถ๋ฐฐ) |
| SRT (Shortest Remaining Time) |
SJF ๊ธฐ๋ฐ์ผ๋ก, ๋จ์ ์คํ ์๊ฐ์ด ๊ฐ์ฅ ์งง์ ํ๋ก์ธ์ค์ CPU ํ ๋น |
| ๋ค๋จ๊ณ ํ (Multilevel Queue) |
์์ ๋ค์ ์ฌ๋ฌ ๊ฐ์ ํ๋ก ๋ถ๋ฅํ๊ณ ๊ฐ ํ๋ง๋ค ๋ค๋ฅธ ์ค์ผ์ค๋ง ๊ธฐ๋ฒ ์ฌ์ฉ |
| ๋ค๋จ๊ณ ํผ๋๋ฐฑ ํ (Multilevel Feedback Queue) |
ํ๋ก์ธ์ค์ ์ฐ์ ์์๋ฅผ ๋์ ์ผ๋ก ์กฐ์ ์ฐ์ ์์๊ฐ ๋ฎ์ ํ์์ ์ค๋ ๊ธฐ๋ค๋ฆฌ๋ฉด ์์ ํ๋ก ์ด๋ (Starvation* ๋ฐฉ์ง) ๊ฐ ํ๋ง๋ค ์๊ฐ ํ ๋น๋(Time Quantum)์ด ๋ค๋ฆ |
2๏ธโฃ ๋น์ ์ ํ (Non-Preemptive)
์ด๋ฏธ CPU๋ฅผ ํ ๋น๋ฐ์ ํ๋ก์ธ์ค๊ฐ ์๋ฐ์ ์ผ๋ก CPU๋ฅผ ๋ฐ๋ฉํ ๋๊น์ง ๊ธฐ๋ค๋ฆผ
→ ๋ฎ์ ์ค๋ฒํค๋, ํ์ง๋ง ํจ์จ์ด ๋จ์ด์ง ์ ์์
| FCFS (First Come First Serve) |
๋จผ์ ๋์ฐฉํ ์์๋๋ก ์ฒ๋ฆฌ (FIFO) |
| SJF (Shortest Job First) |
์คํ ์๊ฐ์ด ๊ฐ์ฅ ์งง์ ํ๋ก์ธ์ค๋ถํฐ ์ฒ๋ฆฌ (ํ๊ท ๋๊ธฐ ์๊ฐ ์ต์ํ) |
| HRN (Highest Response ratio Next) |
(๋๊ธฐ ์๊ฐ + ์๋น์ค ์๊ฐ) / ์๋น์ค ์๊ฐ ๋น์จ์ด ๊ฐ์ฅ ๋์ ํ๋ก์ธ์ค ์ฐ์ ์คํ. SJF์ ๋จ์ ์ธ ๊ธฐ์ ํ์(Starvation)์ ๋ฐฉ์งํจ |
์ค๋ฒํค๋: ์ปดํจํฐ ์์คํ ์ด ์ผ์ ์ฒ๋ฆฌํ ๋, ์ค์ ์ผ ์ด์ธ์ ์ถ๊ฐ๋ก ๋๋ ์๊ฐ์ด๋ ์์ ๋ญ๋น(๊ด๋ฆฌ·์ ์ง·์กฐ์ ์์ )
๊ธฐ์ ํ์(Starvation): ํน์ ํ๋ก์ธ์ค๊ฐ CPU๋ ์์์ ๊ณ์ ๊ธฐ๋ค๋ฆฌ๊ธฐ๋ง ํ๊ณ , ์คํ ๊ธฐํ๋ฅผ ์์ํ ์ป์ง ๋ชปํ๋ ์ํ
'๐ป CS > ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [๋ฐ์ดํฐ๋ฒ ์ด์ค] ์ ๊ทผ ํต์ ๊ธฐ์ (AC, Access Control) (0) | 2025.11.03 |
|---|---|
| [๋คํธ์ํฌ] ๋ผ์ฐํ ํ๋กํ ์ฝ (0) | 2025.10.22 |
| [์ํํธ์จ์ด ๊ตฌ์ถ] ๋ชจ๋์ ๊ฒฐํฉ๋(Coupling)์ ์์ง๋(Cohesion) (0) | 2025.10.21 |
| [์ํํธ์จ์ด ๊ตฌ์ถ] GoF(Gang of Four) ๋์์ธ ํจํด (3) | 2025.10.16 |
| [์ ๋ณด ๋ณด์] ๋ณด์ ๊ณต๊ฒฉ ๊ธฐ๋ฒ (0) | 2025.10.16 |