핵심 키워드: 선입 선처리 스케줄링, 최단 작업 우선 스케줄링, 라운드 로번 스케줄링, 우선순위 스케줄링, 다단계 피드백 큐 스케줄링

스케줄링 알고리즘의 종류

선입 선처리 스케줄링

FCFS 스케줄링(Fast Come First Served Scheduling)이라 부른다. 이는 단순히 준비 큐에 삽입된 순서대로 프로세스들을 처리하는 **비선점형 스케줄링 방식**이다.

로 프로세스들이 기다리는 시간이 매우 길어질 수 있다는 부작용이 있는 방식이다.

가령 CPU를 오래 사용하는 프로세스가 먼저 도착하면 다른 프로세스는 그 프로세스가 CPU를 사용하는 동안 무작정 기다리는 수밖에 없다. 이런 현상을 **호위 효과(convoy effect)**라고 한다.

최단 작업 우선 스케줄링

호위 효과 를 방지하려면 어떻게 해야 할까?

단순하게 생각해 보면 CPU 사용 시간이 긴 프로세스는 나중에 실행하고, CPU 사용 시간이 짧은 간단한 프로세스를 먼저 실행하면 된다.

라운드 로빈 스케줄링

라운드 로빈 스케줄링(round robin scheduling)은 선입 선처리 스케줄링에 타임 슬라이스라는 개념이 더해진 방식이다.

타임 슬라이스 : 각 프로세스가 CPU를 사용할 수 있는 정해진 시간을 의미한다.