본문 바로가기
이론/운영체제

FCFS 스케줄링

by 사과잼빵 2015. 10. 6.

운영체제의 스케줄링 기법 중 가장 기초적인 스케줄링 기법이다.

FCFS(First-Come First-Served)로 준비 큐에 먼저 도착한 프로세스를 먼저 서비스하는 방법이다. 

예를 들어 프로세스가 A, B, C 순으로생성되면 준비 큐에 A, B, C 순서로 들어오게 되고 가장 먼저 준비 큐에 도착한 프로세스 A에게 CPU를 배정해 실행되도록 한다. 그 동안 프로세스 B와 C는 프로세스 A가 종료될 때까지 준비큐에서 기다린다. 프로세스 A가 종료되면 그다음 큐에 들어온 프로세스 B가 실행된다.


 프로세스

CPU 처리 시간 

 A

 30ms

 B

 10ms

 C

 2ms

위의 표와 같은 처리 시간이 걸린다고 할 때 FCFS 스케줄링기법을 이용한다면 프로세스 A의 대기시간은 0ms, 프로세스 B는 30ms, 프로세스 C는 2ms 의 대기시간이 걸린다. 따라서 평균 대기 시간은 (0+30+2)/3 = 약 10ms이다.


하지만 프로세스의 실행 순서가 C, B, A순이라면 평균 대기시간은 ( 0 + 2 + 10)/3 = 4ms이다. 

따라서 FCFS 스케줄링은 프로세스의 실행 순서에 따라 평균 대기시간의 차이가 크다.




'이론 > 운영체제' 카테고리의 다른 글

우선순위 스케줄링  (0) 2015.10.06
라운드 로빈(Round Robin) 스케줄링  (0) 2015.10.06
스레싱(Thrashing)이란  (0) 2015.10.01
함수호출규약  (0) 2015.09.08