Auxiliary memory [Computer Architecture]

SnowCat·2023년 1월 6일
0
post-thumbnail

하드디스크

  • 자기장을 활용해 데이터 저장
  • 여러개의 플래터 원판을 스핀들이라는 부품에 의해 회전시켜 데이터를 읽음
  • 플래터의 데이터는 헤드의 자기적인 구성요소를 읽는 요소를 의미하며, 플래터 면마다 헤드가 달려있음
  • 헤드를 움직여주는 요소를 디스크 암이라 부름

하드디스크와 저장 단위

  • 트랙: 플래터의 동심원을 그리는 저장단위
  • 섹터: 플래터에 나누어진 부분 중 하나
  • 하나이상의 섹터를 묶어 블록이라고 함
  • 실린더: 여러겹의 플래서에서 같은 트랙이 위치한 곳을 모아 연결한 논리적인 단위
    다시 말해 플래터는 트랙과 섹터로 나뉘고, 같은 트랙이 모여 실린더를 이루게 됨
  • 같은 실린더에 데이터를 저장하면 헤드가 동시에 데이터를 읽어올 수 있음

하드디스크와 데이터 전송 시간

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

플래시 메모리

  • 전기적으로 데이터를 읽고 쓰는 반도체 기반 저장 장치
  • 주로 보조기억장치에서 사용되기는 하지만, ROM 처럼 주기억 장치 등에도 사용됨
  • 회로 구조에 따라 NAND, NOR플래시 메모리로 나뉨
  • 셀에 몇비트를 저장하는가에 따라 SLC, MLC, TLC, QLC 등으로 구분됨

  • 플래시 메모리에서 정보를 저장하는 가장 작은단위
  • 셀들이 모여서 페이지, 페이지들이 모여 블록, 블록들이 모여 플레인, 플레인이 모여 다이가 됨
  • 읽기/쓰기는 페이지 단위로 이루어지고, 삭제는 페이지보다 큰 블록 단위로 이루어짐
  • 페이지는 Free, Valid, Invalid 상태를 가짐
    Free: 데이터가 저장되어있지 않아 새로운 데이터를 저장할 수 있는 상태
    Valid: 유효한 데이터를 저장하는 상태
    Invalid: 유효하지 않는 데이터(쓰레기값)을 가진 상태
  • 플래시 메모리는 하드 디스크와 달리 내용을 덮어씌울 수 없음 => 값을 저장하려면 기존에 Valid
  • 플래시 메모리가 값을 변경할 때 가비지 컬렉션을 사용
    유효한 페이지만을 새로운 블록으로 복사하고 기존의 블록을 삭제하는 방법

RAID

  • 데이터의 안정성이나 성능을 위해 여러 물리적인 보조기억장치를 하나의 논리적 보조기억장치처럼 사용하는 기술
  • RAID를 구성하는 기술을 RAID레벨이라고 함

RAID0

  • 데이터를 번갈아가면서 저장하는 방식
  • striping 통해 데이터를 stripe(줄무늬) 형식으로 저장함
  • 입출력 속도가 향상되지만 저장된 정보가 안정하지 않음

RAID1

  • RAID0처럼 데이터를 번갈아가면서 저장하지만, 원본과 동일한 데이터 사본을 하나 만들어 추가로 저장해두는 방식
  • 백업과 복구가 편리해지지만 하드디스크 개수가 한정될 때 사용가능한 용량이 줄어듬

RAID4

  • RAID1처럼 복사본을 만드는 대신 오류를 검출하고 복구하기 위한 패리티 비트를 저장하는 방식
    원래 패리티 비트는 오류 검출만 가능하고 복구는 불가능하지만, RAID4에서는 가능함
  • 패리티 디스크에 병목 현상이 발생할 수 있음

RAID5, 6

  • 패리티 정보를 하드디스크마다 분산해 저장하는 방식
  • RAID5는 하나의 패리티 정보를 가지고, RAID6은 두 종류의 패리티를 가짐
  • RAID5는 속도가 상대적으로 빠르고, RAID6은 상대적으로 더 안전한 방식

출처:
https://www.youtube.com/watch?v=m2NfFJEvssY&list=PLVsNizTWUw7FCS83JhC1vflK8OcLRG0Hl&index=20
혼자 공부하는 컴퓨터 구조+운영체제, 강민철, 한빛미디어

profile
냐아아아아아아아아앙

0개의 댓글