(참고: Fastcampus 강의, 강민철의 인공지능 시대 필수 컴퓨터 공학 지식)

6. 컴퓨터 구조 - 보조기억장치와 입출력 장치

Contents

  1. 하드 디스크 & 플래시 메모리
  2. RAID
  3. 디스크 스케줄링


(1) 하드 디스크 & 플래시 메모리

대표적인 보조 기억 장치

  • (1) 하드 디스크 드라이브 (HDD)
  • (2) 플래시 메모리


a) 하드 디스크 드라이브 (HDD)

LP, CD/DVD 플레이어와 유사

구성 요소

  • (1) 플래터: 데이터가 저장되는 부분 (원판)
  • (2) 스핀들: 플래터를 회전시키는 중앙부
  • (3) 헤드: 데이터를 읽고 쓰는 부분
  • (4) 디스크 암: 헤드를 옮기는 부분

figure2


특징

  • “복수의” 헤드 & 플래터가 있는 경우가 많음
  • 플래터의 “양면”을 사용하는 경우가 많음


하드 디스크의 데이터 단위

  • (1) 트랙: 플래터 상의 동심원
  • (2) 섹터: 트랙을 나눈 단위 (=가장 작은 단위 / 부채꼴 모양)
  • (3) 실린더: 여러 개의 트랙을 모은 단위
  • (4) 블록: 실제 입출력이 수행되는 단위

figure2


하드 디스크의 지연 시간

  • (1) 탐색 시간: “헤드”를 원하는 “섹터”까지 이동시키는 시간
  • (2) 회전 지연: 원하는 섹터를 “헤더까지” 회전시키는 시간
  • (3) 전송 시간: 데이터 송수신 시간

figure2


b) 플래시 메모리

플래시 메모리의 저장 단위

  • 셀 (cell): 가장 작은 저장 단위
  • 한 셀에 몇 비트까지 저장가능한지에 따라 종류가 나뉨
    • SLC: 1셀에 1비트 저장
    • MLC: 1셀에 2비트 저장
    • TLC: 1셀에 3비트 저장
    • QLC: 1셀에 4비트 저장
    • ..

figure2


(2) RAID

데이터의 안전성/높은 성능을 위해, 여러 보조기억장치를 하나처럼 사용 가능한 기술

figure2


다양한 종류

  • (1) RAID 0
    • 방식: 단순히 여러 보조기억장치에 나누어 저장 \(\rightarrow\) 성능 개선 / 신뢰성 감소

    • 스트라입: 줄무늬처럼 저장된 데이터
    • 스트라이핑: 분산하여 저장하기
  • (2) RAID 1

    • 방식: 복사본 만들기 (미러링) \(\rightarrow\) 쓰기 성능 & 저장공간 감소 / 신뢰성 증가 (복구 용이)
  • (3) RAID 4

    • 방식: 패리티 비트 (parity bit)라는 오류 검출용 비트를 저장하는 장치를 따로 두는 방식

      \(\rightarrow\) RAID 1에 비해 적은 하드디스크로도 신뢰성 증가. 단 parity bit를 저장한 디스크에 병목 현상이 증가

  • (4) RAID 5
    • 방식: 패리티 비트를 분산하여 저장 \(\rightarrow\) RAID 4의 병목을 해소
  • (5) RAID 6
    • 방식: 패리티를 2개 두는 방식 \(\rightarrow\) RAID 4,5보다 신뢰성이 높아짐 (but 쓰기 성능은 감소)
  • (6) Nested RAID
    • 방식: 여러 RAID 구성 방식을 합침

figure2

figure2


패리티 비트 (parity bit)

figure2


(3) 디스크 스케줄링

a) 하드 디스크 복습

  • (1) 구성: (일반적으로) 모든 헤드가 디스크 암에 부착되어 함께 이동

  • (2) 저장 단위:
    • 트랙 (track) & 섹터 (sector) 단위로 저장
      • 섹터 크기 = 512~4096 B
    • 실린더 (cylinder): 여러 겹 플래터 상에서 “같은 트랙이 위치한 곳”을 모아 연결한 논리적 단위
  • (3) 접근 과정/시간: 탐색 시간 & 회전 지연 & 전송 시간
  • (4) 보조기억장치 접근 시간은 매우 느림!
  • (5) 디스크 스케줄링의 필요성!


b) 디스크 스케줄링이란

  • 정의: 여러 디스크 접근 요청을 효율적으로 처리하는 방법
  • 목표: 헤드의 이동 최소화 \(\rightarrow\) 탐색 시간 줄이기


c) 디스크 스케줄링의 종류

  • FCFS (First-Come First-Served)

    • 요청 순서대로 처리
    • 공평 but 비효율적
  • SSTF (Shortest-Seek-Time-First)

    • 헤드가 가장 가까운 요청부터 처리
    • 효율적이나 기아(starvation) 발생 가능
  • Scan (엘리베이터 알고리즘)

    • 헤드가 한 방향으로 이동, 요청을 처리하다 끝에 도달하면 반대 방향으로 이동
  • C-Scan (Circular Scan)

    • Scan 방식의 변형으로, 헤드는 한 방향으로만 이동

      • 끝에 도달하면 다시 처음으로 되돌아가서 같은 방향으로 계속 움직임

      • 끝에서 반대 방향으로 되돌아갈 필요 없이 한 방향으로만 진행

  • Look

    • Scan 방식과 유사, but 헤드는 요청이 있는 max/min 실린더 까지만 이동 (불필요한 헤드 이동 방지)
  • C-Look

    • Look + Circular Scan


d) 요약

figure2

Categories:

Updated: