김기현
Chapter07

보조기억장치

다양한 보조기억장치

하드 디스크

하드 디스크 = 자기적인 방식으로 데이터를 저장하는 보조기억장치
플래터 = 하드 디스크에서 실질적으로 트랙 섹터 라는 단위로 데이터가 저장 되는곳

  • 스핀들 : 플래터를 회전시키는 구성 요소
  • RPM : 스핀들이 플래터를 돌리는 시간 (RPM 15,000 = 1분에 15,000 바퀴)
  • 헤드 : 플래터를 대상으로 데이터를 읽고 쓰는 구성 요소, 디스크 암에 부착되서 원하는 위치로 헤드를 이동시킴
  • 실린더 : 트랙이 위치한 곳을 모아 연결한 논리적 단위

하드 디스크가 저장된 데이터에 접근하는데 소요되는 시간

  • 탐색 시간 : 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간
  • 회전 지연 : 헤드가 있는곳으로 플래터를 회전시키는 시간
  • 전송 시간 : 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간

플래시 메모리

플래시 메모리 = 전기적으로 데이터를 읽고 쓸수 있는 저장 장치

  • USB 메모리
  • SD 카드
  • SSD

= 플래시 메모리에서 데이터를 저장하는 가장 작은 단위,
셀이 모여 MB,GB,TB 용량을 갖는 저장 장치가 됨

  • SLC : 한 셀에 1비트 저장
  • MLC : 한 셀에 2비트 저장
  • TLC : 한 셀에 3비트 저장

∴ 데이터 입출력의 속도 : SLC > MLC > TLC (왼쪽부터 빠른 순)

플래시 메모리의 단위

  1. 셀 : 플래시 메모리에서 가장 작은 단위
  2. 페이지 : 셀이 모여 만들어진 단위
  3. 블록 : 페이지가 모여 만들어진 단위
  4. 플레인 : 블록이 모여 만들어진 단위
  5. 다이 : 플레인이 모여 만들어진 단위

페이지가 가지는 상태

  • Free : 어떠한 데이터도 저장하지 않은 새 데이터 저장 가능한 상태
  • Vaild : 이미 유효한 데이터를 저장하고 있는 상태
  • Invaild : 유효하지 않은 데이터를 저장하고 있는 상태

➡️ 플래시 메모리는 덮어쓰기가 불가능하여 Vaild 상태엔 새 데이터 저장 불가

가비지 컬렉션 : 유효한 페이지들을 새 블록으로 복사한 뒤 기존의 Invaild 블록을 삭제

RAID의 정의와 종류

RAID의 정의

RAID : 데이터의 안정성이나 혹은 높은 성능을 위해 하드 디스크와 SSD를 사용하는 기술, 여러 개의 물리적 보조기억장치를 하나의 논리적 보조기억장치처럼 사용하는 기술

RAID의 종류

RAID 레벨 : RAID 구성 방법, 대표적으로 RAID 0~6 을 사용

  • RAID 0 : 단순히 여러개의 보조기억장치에 데이터를 단순히 나누어 저장
    ➡️ 마치 줄무늬처럼 분산되어 저장된 데이터를 스트라입, 분산하여 저장하는 것을 스트라이핑

    단점 : 정보가 안전하지 않아 분산된 하드 디스크 중 하나만 문제가 생겨도 다른 모든 하드 디스크에 문제가 생길수 있음

  • RAID 1 : RAID 0과 같이 스트라이핑을 사용하지만 미러링한 복사본을 만들어놓기 때문에 문제가 생겨도 복구 쉽게 가능

    단점 : 복사본이 만들어지는 용량만큼 사용자가 사용하지 못하고 데이터를 복사본과 같이 쓰기 때문에 쓰기 속도가 RAID 0보다는 느림

  • RAID 4 : RAID 0처럼 스트라이핑 방식으로 만들고 패리티 비트를 이용한 디스크를 사용해 오류를 검출하고 오류 발견시 오류 복구 가능

    ‼️ 원래의 패리티 비트는 오류 검출만 가능

    단점 : 모든 데이터를 쓰는데에 패리티 디스크가 관여하므로 쓰기 속도가 저하되고 병목 현상이 일어남

  • RAID 5 : RAID 4의 병목 현상을 방지하기 위해 패리티 정보를 분산하여 저장하는 방식을 사용

    단점 : 디스크 오류 검출시 재구축 과정이 길고, 패리티 정보가 전 디스크 분산되어 있으므로 디스크와 패리티 모두 업데이트 해줘야함

  • RAID 6 : 기본적으로 RAID 5와 구성은 같으나 패리티 디스크를 이중으로 사용해서 RAID 5보다 더 안전함

    단점 : 저장할 패리티가 2개이므로 RAID 5보다 쓰기 속도가 저하됨