- Dispatch (ready -> running)
- 여러 프로세스들 중 한 프로세스를 선정하여 CPU에 할당하는 과정입니다.
- Interrupt (running -> ready)
- 할당된 CPU 시간이 지나면 Timeout Interrupt 가 발생하여 CPU를 다른 프로세스에게 양도하고 자신은 ready 상태로 전이되는 과정입니다.
- Block (running -> waiting)
- I/O 등의 자원 요청 후 즉시 할당받을 수 없어, 할당받을 때까지 기다리기 위해 running에서 waiting 상태로 전이되는 과정입니다.
- I/O 처리는 CPU가 아닌 I/O 프로세스가 담당하기 때문에 block이 발생합니다.
- Wakeup (waiting -> ready)
- 필요한 자원이 할당되면 프로세스는 waiting에서 ready 상태로 전이되는 과정입니다.
'CS > 운영체제' 카테고리의 다른 글
메모리가 고갈된다면 (0) | 2023.09.17 |
---|---|
프로세스 스케줄러 (0) | 2023.09.15 |
멀티 쓰레드 vs 멀티 프로세스 (0) | 2023.09.14 |
Context Switching (0) | 2023.09.13 |
프로세스와 쓰레드의 차이 (0) | 2023.09.12 |