디스크 스케줄링
위키백과, 우리 모두의 백과사전.
|
|
이 문서의 내용은 출처가 분명하지 않습니다. 지금 바로 이 문서를 편집하여, 참고하신 문헌이나 신뢰할 수 있는 출처를 주석 등으로 표기해 주세요. 검증되지 않은 내용은 삭제될 수도 있습니다. 내용에 대한 의견은 토론 문서에서 나누어 주세요. |
디스크 스케줄링(disk scheduling)은 운영 체제가 프로세스들이 디스크를 읽거나 쓰려는 요청을 받았을 때, 우선순위를 정해주고 이를 관리하는 것을 말한다.
원리 [편집]
디스크 제어기 내에는 디스크 작업에 대한 요청을 저장해 두는 큐가 있다. 이 큐에 있는 작업의 순서를 적절히 조절함으로써 스케줄링이 가능하다.
목표 [편집]
입출력 스케줄러에는 입출력 스케줄러의 목표에 따라 수많은 목적이 있다. 일반적인 목표로는 다음과 같다:
- 하드 디스크 검색으로 낭비되는 시간을 최소화한다.
- 특정한 프로세스의 입출력 요청의 우선 순위를 정한다.
- 디스크 대역을 실행 중인 각 프로세스에 할당한다.
- 정해진 기한까지 요청을 보증한다.
스케줄링의 종류 [편집]
- FCFS 스케줄링(First Come First Served) : 요청이 들어온 순서대로 처리한다.
- SSTF 스케줄링(Shortest Seek Time First) : 현재 디스크의 헤드 위치에서 가장 가까운 실린더에 대한 요청을 우선적으로 처리한다.
- SCAN 스케줄링 : 디스크의 한 쪽 끝에서 반대쪽 끝으로 이동하면서 처리하며, 마지막 실린더에 도착하면 반대 방향으로 스캔을 진행한다.
- C-SCAN 스케줄링 : 디스크의 한 쪽 끝에서 반대쪽 끝으로 이동하면서 처리하며, 마지막 실린더에 도착하면 시작점으로 되돌아간 후 다시 스캔을 진행한다.
- C-LOOK 스케줄링 : C-SCAN에서는 양 끝까지 이동하던 것을 요청된 실린더 중 마지막까지만 이동하는 방식으로 처리한다.
- N단계 SCAN 스케줄링 : SCAN 스케줄링과 같이 진행 방향 상의 요청을 서비스하지만 진행 중에 새로이 추가된 요청은 서비스하지 않고 다음 진행 시에 서비스하는 기법이다.
- 에센바흐 기법(Eschenbach scheme) : 탐색 시간 최적화뿐만 아니라 회전 지연 시간도 최적화하고자 하는 최초의 기법이다.(항공 예약시스템을 위해 개발됨)
- SLTF 스케줄링(Shortest Latency Time First) : 회전 지연 시간 최적화를 위한 대표적 알고리즘으로 디스크 헤드가 특정 실린더에 도착하면 그 실린더 내의 여러 트랙에 대한 요청들을 검사한 후 회전 지연 시간이 가장 짧은 요청부터 서비스하는 기법이다.
| 이 글은 컴퓨터에 관한 토막글입니다. 서로의 지식을 모아 알차게 문서를 완성해 갑시다. |
| 이 글은 기술에 관한 토막글입니다. 서로의 지식을 모아 알차게 문서를 완성해 갑시다. |