ํ๋ก์ธ์ค ์ ์ด ๋ธ๋ก๊ณผ ๋ฌธ๋งฅ๊ตํ
1. ํ๋ก์ธ์ค ์ ์ด๋ธ๋ก(PCB; Process Control Block)
- ํ๋ก์ธ์ค๋ฅผ ์คํํ๋ ๋ฐ ํ์ํ ์ค์ํ ์ ๋ณด๋ฅผ ๋ณด๊ดํ๋ ์๋ฃ ๊ตฌ์กฐ
- ํ๋ก์ธ์ค๋ ์์ ๋ง์ ํ๋ก์ธ์ค ์ ์ด ๋ธ๋ก์ ๊ฐ์ง
- ํ๋ก์ธ์ค ์์ฑ ์ ๋ง๋ค์ด์ ธ์ ํ๋ก์ธ์ค๊ฐ ์คํ์ ์๋ฃํ๋ฉด ํ๊ธฐ๋จ
โ ํ๋ก์ธ์ค ์ ์ด ๋ธ๋ก์ ๊ตฌ์ฑ
- ํฌ์ธํฐ : ์ค๋น ์ํ๋ ๋๊ธฐ ์ํ์ ํ๋ฅผ ๊ตฌํํ ๋ ์ฌ์ฉ / ๊ฐ์ ์ ์ถ๋ ฅ์ ์๊ตฌํ๋ ํ๋ก์ธ์ค๋ผ๋ฆฌ ์ฐ๊ฒฐํ ๋ ์ฌ์ฉ
- ํ๋ก์ธ์ค ์ํ : ํ๋ก์ธ์ค๊ฐ ํ์ฌ ์ด๋ค ์ํ์ ์๋์ง๋ฅผ ๋ํ๋ด๋ ์ ๋ณด
- ํ๋ก์ธ์ค ๊ตฌ๋ถ์ (PID) : ์ด์์ฒด์ ๋ด์ ์๋ ์ฌ๋ฌ ํ๋ก์ธ์ค๋ฅผ ๊ตฌํํ๊ธฐ ์ํ ๊ตฌ๋ถ์
- ํ๋ก๊ทธ๋จ ์นด์ดํฐ : ๋ค์์ ์คํ๋ ๋ช ๋ น์ด์ ์์น๋ฅผ ๊ฐ๋ฆฌํค๋ ํ๋ก๊ทธ๋จ ์นด์ดํฐ์ ๊ฐ
- ํ๋ก์ธ์ค ์ฐ์ ์์ : ํ๋ก์ธ์ค์ ์คํ ์์๋ฅผ ๊ฒฐ์ ํ๋ ์ฐ์ ์์
- ๊ฐ์ข ๋ ์ง์คํฐ ์ ๋ณด : ํ๋ก์ธ์ค๊ฐ ์คํ๋๋ ์ค์ ์ฌ์ฉํ๋ ๋ ์ง์คํฐ์ ๊ฐ
- ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ ๋ณด : ํ๋ก์ธ์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ด๋์ ์๋์ง ๋ํ๋ด๋ ๋ฉ๋ชจ๋ฆฌ ์์น ์ ๋ณด, ๋ฉ๋ชจ๋ฆฌ ๋ณดํธ๋ฅผ ์ํด ์ฌ์ฉํ๋ ๊ฒฝ๊ณ ๋ ์ง์คํฐ ๊ฐ๊ณผ ํ๊ณ ๋ ์ง์คํฐ ๊ฐ ๋ฑ
- ํ ๋น๋ ์์ ์ ๋ณด : ํ๋ก์ธ์ค๋ฅผ ์คํํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ ์ถ๋ ฅ ์์์ด๋ ์คํ ํ์ผ ๋ฑ์ ๋ํ ์ ๋ณด
- ๊ณ์ ์ ๋ณด : ๊ณ์ ์ ๋ณด, CPU ํ ๋น ์๊ฐ, CPU ์ฌ์ฉ ์๊ฐ ๋ฑ ํฌํจ
- ๋ถ๋ชจ ํ๋ก์ธ์ค ๊ตฌ๋ถ์์ ์์ ํ๋ก์ธ์ค ๊ตฌ๋ถ์
>> ํด๋น ๋ด์ฉ๋ค์ด ํ์ํ ์ด์ ๋ '๋ฌธ๋งฅ๊ตํ'์ด ๋ฐ์ํ๊ธฐ ๋๋ฌธ
2. ๋ฌธ๋งฅ ๊ตํ(Context Switching)
- CPU๋ฅผ ์ฐจ์งํ๋ ํ๋ก์ธ์ค๊ฐ ๋๊ฐ๊ณ ์๋ก์ด ํ๋ก์ธ์ค๋ฅผ ๋ฐ์๋ค์ด๋ ์์
- ์คํ ์ํ์์ ๋๊ฐ๋ PCB์๋ ์ง๊ธ๊น์ง์ ์์ ๋ด์ฉ์ ์ ์ฅํ๊ณ , ์คํ์ํ๋ก ๋ค์ด์ค๋ PCB์ ๋ด์ฉ์ผ๋ก CPU๊ฐ ๋ค์ ์ธํ ํจ