스케줄러의 장기, 단기, 중기 스케줄러
- 시작 프로세스 중 어떤 것들을 Ready Queue로 보낼 지 결정
- New 상태에서 Ready로 되려면 메모리에 현재 필요한 부분이 load 되어야함(admitted)
- 프로세스에 메모리를 줌
- Time Sharing System에는 보통 장기 스케줄러가 없음(무조건 Ready)
- 어떤 프로세스를 다음번에 Running 시킬 지 결정
- 프로세스에 CPU를 줌
- 충분히 빨라야 함
- 여유 공간 마련을 위해 프로세스를 통째로 메모리에서 디스크로 쫓아냄
- 프로세스에게서 메모리를 뺏음
- Running, Ready, Blocked
- 외부적인 이유로 프로세스의 수행이 정지된 상태
- 통째로 디스크에 Swap out 됨
- 사용자가 프로그램을 일시 정지시킨 경우
- 외부에서 Resume 해줘야 Active
Blocked는 요청한 Event가 만족되면 Ready됨