솜은 코튼

[OS] 디스크 스케줄링 본문

OS

[OS] 디스크 스케줄링

솜.코 2023. 5. 26. 17:15

 

 

디스크 스케줄링

.

 

 

디스크의 데이터 전송 시간 중에서는 탐색 시간이 가장 느리다.

디스크 스케줄링은 트랙의 이동을 최소화하여 이 탐색 시간을 줄이는 데 목적이 있다.

 

디스크 스케줄링 기법에 대해 알아보자.

 

 

1. FCFS 디스크 스케줄링

.

 

First Come, First Service. 이름 그대로 요청이 들어온 트랙 순서대로 서비스한다.

 

아래 그림을 보면 요청된 트랙 번호 순서대로 매우 큰 폭으로 움직인다.

 

 

 

 

2. SSTF 디스크 스케줄링

.

 

Shortest Seek Time First. 현재 헤드가 있는 위치에서 가장 가까운 트랙부터 서비스한다.

만약 두 트랙의 거리가 같다면 먼저 요청받은 트랙을 서비스한다.

 

효율성은 좋지만 헤드가 중간에 위치하면 가장 안쪽이나 바깥쪽에 있는

트랙을 서비스 받을 확률이 낮아져 아사 현상을 일으킬 수 있다.

 

 

 

 

3. SCAN 디스크 스케줄링

.

 

헤드가 한 방향으로만 움직이면서 서비스하며,

연속적으로 동일한 트랙이 발생하면 헤드가 제자리에 머물게 되어 바깥쪽 트랙이 아사 현상이 발생한다.

 

아래 그림을 보면 0번은 큐에 없지만 0번까지 거쳤다 돌아온다.

 

 

 

 

4. C-SCAN 디스크 스케줄링

.

 

SCAN 디스크 스케줄링은 바깥쪽 트랙(0, 24)을 한 번씩 방문할 동안

중간의 트랙은 두 번씩 방문하여 바깥쪽 트랙이 불이익을 받는다.

 

이 문제를 해결하기 위해 반대 방향으로 돌아올 때는 서비스하지 않고 이동만 한다.

 

그러나 작업 없이 헤드를 이동하는 것은 비효율적이다.

또한 동일한 트랙 요청이 연속적으로 발생하면 마찬가지로 아사 현상이 발생한다.

 

 

 

 

5. LOOK, C-LOOK 디스크 스케줄링

.

 

LOOK은 SCAN을 C-LOOK은 C-SCAN을 변형한 것이다.

SCAN과 C-SCAN은 작업하지 않아도 되는 양 끝의 트랙까지 방문한다.

LOOK과 C-LOOK은 큐 안에 있는 트랙만을 방문하며 양 끝의 트랙을 방문할 필요가 없으면 수행을 마친다.

 

 

 

 

 

 

 

 

* 해당 글은 '쉽게 배우는 운영체제'와 '운영체제' 책을 참고하여 작성하였습니다. 출처: 쉽게 배우는 운영체제 (조성호), 운영체제 10판 (Abraham Silberschatz)