OS-11) 보조 저장 장치

topics
types
tags
#storage #HDD #SSD #disk-scheduling

보조 저장 장치

디스크는 데이터를 저장하는 물리적인 매체
드라이브는 디스크를 읽고 쓰는 장치


HDD

자기 디스크(magnetic disks)라고도 함. 플로피 디스크가 이후에 나오면서 HDD로 부르는 걸로 바뀌었다.

  • 드라이브가 초당 60-250 회전
  • 디스크는 보통 30GB ~ 3TB 용량
  • 디스크는 제거, 교체 가능하다
  • 디스크 컨트롤러와 컴퓨터의 호스트 컨트롤러는 버스를 통해 통신함

단면도

300

성능

용어 설명
전송률 드라이브와 컴퓨터 사이의 데이터 흐름의 비율
대역폭 전송된 총 바이트 수를 총 전송 시간으로 나눈 값
seek time 디스크 암을 목표 실린더까지 이동시키는 시간
rotational latency 목표 섹터가 디스크 헤더 아래에 올 때까지 회전하는 데 걸리는 시간

계산 공식:

Access Latency = Average access time = average seek time + average latency

Average I/O time = Access Latency + (amount to transfer / transfer rate) + controller overhead

평균 입출력 시간 = 평균 접근 시간 + (전송량/전송률) + 컨트롤러 오버헤드

일반적인 성능

항목
전송률 6 GB/sec
seek time 3 ~ 12ms
평균 지연 시간 rpm에 따라 바뀜. 높으면 적어짐

SSD

Solid-State Disks

특징 설명
신뢰성 더 좋을 수 있다
MB당 비용 더 비싸다
생명주기 더 짧다
용량 더 적다

SAN & NAS

SAN (Storage Area Network)

  • 저장장치를 위한 별도의 네트워크로 관리하는 것
  • 대용량 저장장치 환경에 일반적
  • 다수의 호스트가 복수의 저장장치 배열에 부착된다
  • 엄청 비쌈

NAS (Network Attached Storage)

  • 저장장치를 네트워크에 연결
  • 지역적인 연결이 아님
  • 호스트와 저장장치 사이의 원격 프로시저 콜(RPC)로 구현
    • IP 네트워크상에서 TCP or UDP로 구현

디스크 스케줄링

FCFS (First-Come, First-Served)

디스크 요청을 도착한 순서대로 처리하는 알고리즘이다.

특징 설명
구현 간단하다
성능 요청이 몰릴 경우 저하될 수 있다
스타베이션 없다

예시:

  • 요청 순서: 55, 14, 99, 25
  • 처리 순서: 55 → 14 → 99 → 25

SSTF (Shortest Seek Time First)

현재 헤드 위치에서 가장 가까운 트랙의 요청을 먼저 처리하는 알고리즘이다.

특징 설명
장점 평균 탐색 시간을 줄일 수 있다
단점 특정 요청이 오랫동안 처리되지 않을 가능성이 있다 (스타베이션 문제)

예시:

  • 요청 순서: 55, 14, 99, 25
  • 현재 헤드 위치: 50
  • 처리 순서: 55 → 25 → 14 → 99

SCAN (Elevator Algorithm)

디스크 헤드가 한쪽 끝에서 다른 쪽 끝으로 이동하면서 모든 요청을 처리한 후, 방향을 바꾸어 반대 방향으로 이동하면서 요청을 처리하는 알고리즘이다.

특징 설명
이동 범위 디스크의 양쪽 끝까지 이동하며 요청을 처리
균형 탐색 시간의 균형이 잘 맞음

예시:

  • 요청 순서: 55, 14, 99, 25
  • 현재 헤드 위치: 50, 방향: 증가
  • 처리 순서: 55 → 99 → 25 → 14

C-SCAN (Circular SCAN)

디스크 헤드가 한쪽 끝에서 다른 쪽 끝으로 이동하면서 요청을 처리한 후, 끝에 도달하면 반대 방향의 시작점으로 이동하여 요청을 처리하는 알고리즘이다.

특징 설명
방향 SCAN의 변형으로, 한 방향으로만 요청을 처리
분포 일정한 탐색 시간 분포를 유지

예시:

  • 요청 순서: 55, 14, 99, 25
  • 현재 헤드 위치: 50, 방향: 증가
  • 처리 순서: 55 → 99 → 14 → 25

LOOK

SCAN과 비슷하지만, 디스크의 끝까지 가지 않고 마지막 요청까지 이동한 후 반대 방향으로 이동하면서 요청을 처리하는 알고리즘이다.

특징 설명
장점 끝까지 이동하지 않으므로 탐색 시간이 절약됨
효율 SCAN보다 효율적

C-LOOK

C-SCAN과 비슷하지만, 디스크의 끝까지 가지 않고 마지막 요청까지 이동한 후 처음 요청으로 돌아가서 처리하는 알고리즘이다.

특징 설명
장점 끝까지 이동하지 않으므로 탐색 시간이 절약됨
효율 C-SCAN보다 효율적

디스크 관리

종류 설명
물리적인 포맷팅 디스크 컨트롤러가 읽고 쓸 수 있도록 디스크를 섹터로 나눈다
논리적인 포맷팅 하나 이상의 실린더 그룹으로 분할하고 각 그룹을 논리적인 디스크로 취급

스왑 공간

가상 메모리 디스크 공간을 메인 메모리의 확장처럼 사용한다.

  • 현재는 일반적이지 않음
  • 공간을 확보하거나 별도의 파티션에 생성
  • 스왑 공간의 사용을 추적하기 위해 swap maps를 사용

관련 문서