본문 바로가기

컴퓨터공학/운영체제

디스크 스케줄링(디스크 구조, 기법)

우선 디스크 스케줄링을 알아보기 전에, 실린더, 플래터, 헤더, 트랙, 섹터 등의 용어들에 대해서 정리하고 가자. 

 

 

이미지 출처 : https://gsk121.tistory.com/260

 

위의 그림이 가장 정확하게 하드 디스크를 설명했다. 모든 플래터에는 헤드가 모두 존재한다. 입력으로 주어지는 것들은 트랙 번호이다. 추가적으로, 하드디스크 구조를 눈으로 보고 싶은 분들을 위해서 유튜브 영상도 하나 링크한다.

 

 

 

www.youtube.com/watch?v=NtPc0jI21i0

 

 

위의 영상을 보면서, 하드디스크 구조를 확실히 파악할 수 있을 것이다.

 

 

 

디스크 스케줄링은 주어진 트랙 번호들을 찾아가는 과정들을 의미하며, 이동 거리 비교를 통해서 각 상황에서 스케줄링의 우위를 판단하게 된다.

 

 

 

FCFS(First Comes First Served)

  • 스택과 동일하게, 선입 선출 구조
  • 들어온 트랙 순서대로 탐색을 하게 된다.
  • 탐색 시간 최소화 목표

 

 

SSTF(Shortest Seek Time First)

  • 현재 헤드에서 가장 가까운 트랙을 순차적으로 방문한다.
  • 헤드의 위치에 따라서, 일부 트랙들은 방문받지 못하는 단점이 존재한다. (기아 현상)
  • 탐색 시간 최소화 목표

 

 

SCAN

  • 일정 방향의 모든 트랙들을 처리하고, 트랙끝에 도달하면 반대 방향으로 이동
  • 반대 방향의 바깥쪽 트랙들은 기아 현상이 발생 가능
  • 탐색 시간 최소화 목표

 

 

 

C-SCAN

  • SCAN의 반대 방향의 바깥쪽 트랙들의 기아 현상을 해결
  • SCAN과 다르게, 바깥쪽 트랙까지 도착한후에 순차적으로 요청을 해결
  • 탐색 시간 최소화 목표

 

 

 

LOOK, C-LOOK

  • 동작 방식은 동일, 하지만 SCAN과 다르게 양끝까지 이동하지 않도록 설계
  • 탐색 시간 최소화 목표

 

 

 

N-STEP SCAN

  • 단계를 나눠서 SCAN 방식
  • 처리 중에, 들어온 트랙들에 대해서는 이후 처리
  • 탐색 시간 최소화 목표

 

 

 

에센바흐 기법

  • 탐색 시간, 회전 지연 시간, 데이터 전송 시간 최소화

 

 

SLTF

  • 회전 지연 시간 최소화
  • 한 트랙내에서 존재하는 섹터에 대한 탐색 시간도 고려
  • 트랙상에 서비스할 섹터들을 방향에 맞게 정렬

'컴퓨터공학 > 운영체제' 카테고리의 다른 글

CPU 스케줄링(gantt chart)  (0) 2020.11.20