FCFS 스케줄링

2018. 6. 21. 16:03


CPU 스케줄링

FCFS 스케줄링 개념 정리




FCFS 스케줄링이란?

먼저 요청한 프로세스를 먼저 처리하는 방식

비선점 스케줄링 (처리시간 도중 처리하던 프로세스를 멈추고 타 프로세스를 실행하지 않음)


EX) 피자를 먹고싶다면 차례대로 와서 줄을 서세요. 배가 얼마나 고프던, 피자를 얼마나 빨리 먹던 상관없이 선착순으로 피자를 드립니다.



FCFS 스케줄링의 장점

1. 자원의 효율성을 높임 (처리중인 프로세스에게 할당된 시간을 타 프로세스가 뺏지 않으므로 문맥 교환이 일어나지 않음, 오버헤드 발생x)

2. 일괄 처리 시스템에 적합함 (일괄 처리 시스템 - 한꺼번에 모아서 처리하는 시스템. == 세탁기)


FCFS 스케줄링의 단점

1. 프로세서를 장시간 독점하는 경우 다른 프로세스들이 오래 기다려야 함 (평균 응답시간이 길어질 수 있음)

2. 대화형 시스템에 부적합 (대화형 시스템 - 사용자와 시스템 간의 실시간 대화를 기반으로 하는 시스템. 카톡과 비슷함)

3. 우선순위가 높은 프로세스를 빨리 처리하지 못할수도 있음



FCFS 스케줄링을 실행했을 경우, 결과를 알아보자.


 프로세스

도착시간 

버스트 시간 (프로세스를 처리하는데에 걸리는 시간) 

 P1

0ms

24ms 

 P2

1ms 

3ms 

 P3

2ms 

3ms 



위와 같은 프로세스를 처리하는 스케줄링 표 ↓

 P1

P2 

P3 

0                                                                                                                24                                                                   27                                                                    30(ms)  


→ 들어온 순서대로 프로세스를 처리하기 때문에 도착시간 순으로 P1, P2, P3를 처리한다. 처리를 시작하기까지 P1은 0초를, P2는 23초를, P3는 25초를 기다렸으므로 평균 대기 시간은 16ms 가 된다. 

'a major field of study' 카테고리의 다른 글

SRTF 스케줄링  (0) 2018.06.21
SJF 스케줄링  (0) 2018.06.21
CPU 스케줄링  (0) 2018.06.21
컴퓨터의 개념  (0) 2018.06.21
C언어의 상수와 변수, 자료형  (0) 2018.06.20

BELATED ARTICLES

more