728x90
1 스케줄링
CPU 스케줄러는 프로세스가 생성된 후 종료될 때까지 모든 상태 변화를 조정하는 일을한다.
스케줄링은 여러 프로세스의 상황을 고려하여 CPU와 시스템 자원을 어떻게 배정할지 결정하는 일을 말한다.
2 스케줄링의 단계
CPU 스케줄링은 규모에 따라 고수준, 중간 수준, 저수준 스케줄링으로 구분한다.
고수준 스케줄링
가장 큰 틀에서 이뤄지는 CPU 스케줄링을 말하며, 시스템 내의 전체 작업 수를 조절하는 것을 말한다.
어떤 작업을 시스템이 받아들일지 또는 거부할지를 결정한다.
저수준 스케줄링
가장 작은 단위의 스케줄링을 저수준 스케줄링이라고 한다. 어떤 프로세스에 CPU를 할당할지, 어떤 프로세스를 대기 상태로 보낼지 등을 결정한다.
중간 수준 수케줄링
중지와 활성화로 전체 시스템의 활성화된 프로세스 수를 조절하여 과부하를 막는 일을 한다. 즉 일부 프로세스를 중지 상태로 옮김으로써 나머지 프로세스가 원만하게 작동하도록 지원한다.
3 스케줄링의 목적
CPU 스케줄링의 목적은 모든 프로세스가 공평하게 작업하도록 하는 것이다. 특정 프로세스에 편중되지 않게 골고루 자원을 배분하기 위해 공평성을 유지하며 안정적으로 작동해야 한다.
728x90
'프로그래밍 이론 & 책 > 운영체제' 카테고리의 다른 글
[운영체제] 4.3 다중 큐 (0) | 2020.05.25 |
---|---|
[운영체제] 4.2 스케줄링 시 고려사항 (0) | 2020.05.25 |
[운영체제] 3.4 스레드 (0) | 2020.05.22 |
[운영체제] 3.3 프로세스의 연산 (0) | 2020.05.22 |
[운영체제] 3.2 프로세스 제어 블록(PCB)와 문맥 교환(Context Switch) (0) | 2020.05.22 |