디스크 스케줄링은 트랙의 이동을 최소화하여 탐색 시간을 줄이는 것이 목적이다.
1 FCFS 디스크 스케줄링
요청이 들어온 트랙 순서대로 서비스하는 방식이다.
2 SSTF 디스크 스케줄링
Shortest Seek Time First disk scheduling으로 현재 헤드의 위치에서 가장 가까운 트랙부터 서비스하는 방식이다.
효율성은 좋지만 아사 현상을 일으킬 수 있다.
3 블록 SSTF 디스크 스케줄링
큐에 있는 트랙 요청을 일정한 블록 형태로 묶어서 블록 내에서 가까운 트랙부터 서비스하는 방식이다.
4 SCAN 디스크 스케줄링
헤드가 한 방향으로만 움직이면서 서비스를 한다. 헤드가 움직이면 맨 마지막 트랙에 도착할 떄까지 계속 전진하면서 요청받은 트랙을 서비스한다. 그래서 엘리베이터 기법이라고도 한다.
5 C-SCAN 디스크 스케줄링
헤드가 한쪽 방향으로만 움직이고 반대방향으로 돌아갈 때는 서비스하지 않고 이동만 하는 방식이다.
6 LOOK 디스크 스케줄링
요청에서 헤드의 가장 먼 부분까지 간 후에 더이상 서비스할 트랙이 없으면 헤드가 끝까지 가지 않고 중간에서 방향을 바꾼다. 즉 3번 트랙까지 이동한 후 0번트랙에 요청이 없다면 바로 반대 방향으로 바꾼다.
7 C-LOOK 디스크 스케줄링
마찬가지로 헤드가 중간에 방향을 바꿀 때 서비스하지 않고 이동만 하는 방식이다.
8 SLTF 디스크 스케줄링
이 방식은 헤드가 모든 트랙을 동시에 읽을 수 있는 하드디스크에 해당한다. 매우 고가라서 많이 사용되지는 않는다.
아래 그림에서 요청이 만약 3 - 1 - 2로 들어왔다면 회전하는 방향에 맞게 1 - 2 - 3으로 정렬한 후 서비스하는 방식이다.
'프로그래밍 이론 & 책 > 운영체제' 카테고리의 다른 글
[운영체제] 10.4 RAID (0) | 2020.06.02 |
---|---|
[운영체제] 10.2 디스크 장치 (0) | 2020.06.02 |
[운영체제] 10.1 입출력 시스템 (0) | 2020.06.02 |
[운영체제] 9.3 스레싱과 프레임 할당 (0) | 2020.06.01 |
[운영체제] 9.2 페이지 교체 알고리즘 (0) | 2020.06.01 |