디스크 스케줄링(Disk Scheduling)
Updated:
[참고] Operating System Concepts / 홍릉과학출판사
디스크 스케줄링(Disk Scheduling)
효율적인 스케줄링을 통해 디스크의 접근 시간과 대역폭 상승
- 디스크 드라이브에 빠른 접근 시간과 높은 전송량 필요
- 디스크 접근시간 = 탐색 시간(seek time) + 회전 시간(rotation latency)
-
선입 선처리 스케줄링(FCFS Scheduling)
가장 간단한 형태인 FCFS(First-Come-First-Served)이다. 이 알고리즘은 본질적으로는 공평하지만 빠른 서비스를 제공하지 않는다.
-
최소 탐색 시간 우선 스케줄링(SSTF Scheduling)
SSTF(Short-Seek-Time-First)알고리즘은 Head가 다른 곳으로 이동하기 전 근처에 있는 요구들을 먼저 처리해주고 헤드를 이동한다.
단점 : 기아(starvation)상태 발생
-
SCAN 스케줄링(SCAN Scheduling)
Disk의 끝에서 시작하여 다른 끝으로 이동하며 가는 길에 있는 모든 요청을 처리한다.
-
C-SCAN 스케줄링(C-SCAN Scheduling)
SCAN을 변형시켜 각 요청에 걸리는 시간을 균등하기 위해 만든 알고리즘이다. SCAN과 같이 C-SCAN은 한쪽 방향으로 헤드를 이동해가면서 요청을 처리하고 한쪽 끝에 다다르면 처음 시작했던 자리로 다시 되돌아가서 서비스를 시작한다.
-
LOOK 스케줄링(LOOK Scheduling)
헤드로 각 방향으로 가다가 그 방향에서 요청이 없으면 즉시 반대로 방향을 바꾸는 알고리즘이다. SCAN과 C-SCAN과 달리 움직이기 전에 요구가 있는지 확인(Look for)하기 때문에 각각 LOOK, C-LOOK 스케줄링이라고 한다.