공부해보잠
디스크 스케줄링 본문
디스크 스케줄링의 개요
정의 :
디스크 스케줄링은 디스크 상에 저장된 데이터를 접근하기 위해 디스크 헤드가 어떤 순서로 이동할지 결정하는 기법입니다.
목적은 디스크 헤드 이동 거리를 줄여 응답 시간과 처리 속도를 최적화하는 데 있습니다.
주요 디스크 스케줄링
FCFS(First Come First Service) = FIFO(First In First Out)
가장 간단한 스케줄링으로 디스크 대기 큐에 가장 먼저 들어온 트랙에 대한 요청을 먼저 서비스 하는 기법
특징:
구현이 간단하고 공정.
요청 순서를 그대로 처리하므로 특정 요청이 대기하지 않는 공정성을 보장.
단점:
헤드 이동이 비효율적: 요청이 디스크의 여러 위치에 퍼져 있으면 불필요한 이동이 발생.
헤드 이동 거리가 증가하여 처리 시간이 길어질 수 있음.
예제:
요청 순서: 55, 58, 39, 18, 90, 160, 150.
현재 헤드 위치: 50.
처리 과정:
50 → 55 → 58 → 39 → 18 → 90 → 160 → 150.
총 이동 거리:
∣50−55∣+∣55−58∣+∣58−39∣+∣39−18∣+∣18−90∣+∣90−160∣+∣160−150∣=5+3+19+21+72+70+10=200
SSTF(Shortest Seek Time First)
탐색거리가 가장 짦은 트랙에 대한 요청을 먼저 서비스하는 기법
특징:
헤드이동 거리를 최소화하여 처리속도를 향상,FCFS보다 처리량이 많다
요청의 물리적 위치를 고려하므로 효율적이며 처리량이 많은 일괄 처리 시스템에 유용
단점 :
기아상태(Starvation) 발생가능 : 가까운 요청이 지속적으로 들어올 경우, 먼 요청은 처리 되지 않을 수 있음
예제
요청 순서: 55, 58, 39, 18, 90, 160, 150.
현재 헤드 위치: 50.
처리 과정:
- 헤드가 가장 가까운 55로 이동 → 50 → 55.
- 다음으로 가까운 58로 이동 → 55 → 58.
- 다음으로 가까운 39로 이동 → 58 → 39.
- 다음으로 가까운 18로 이동 → 39 → 18.
- 다음으로 가까운 90로 이동 → 18 → 90.
- 다음으로 가까운 150로 이동 → 90 → 150.
- 다음으로 가까운 160으로 이동 → 150 → 160.
- 총 이동 거리:
∣50−55∣+∣55−58∣+∣58−39∣+∣39−18∣+∣18−90∣+∣90−150∣+∣150−160∣=5+3+19+21+72+60+10=190