멀티프로그래밍과 Wait
- 멀티프로그래밍 : CPU활용도를 극대화 하는 스케쥴링 알고리즘
- Wait : 예를들면 저장매체로부터 파일읽기를 기다리는 시간
그림을 보다시피 여러 프로세스가 돌아가는 응용프로그램에서 각 프로세스마다 상태가 다르다. 스케쥴러가 상태가 각각 다른 프로세스들을 최대한 효율적으로 CPU에 실행시키기 위해 계획을 짜서 프로세스를 돌린다고 이해하자!
프로세스 상태
- running state : 현재 CPU에서 실행상태
- ready state : CPU에서 실행 가능 상태 (실행 대기 상태)
- block state : 특정 이벤트 발생 대기 상태 (예를들면 프린팅이 다되었다 라는 이벤트)
프로세스 상태간 관계