07-1 강 다양한 보조 기억장치
보조 기억 장치란?
하드디스크(HDD : Hard Disk Drive)
- 플래터 : 동그란 원판으로 실질적으로 데이터가 저장되는곳
- 스핀들 : 플래터를 회전시킴.
일반적으로 많은 양의 데이터를 저쟝해야되기 때문에 플래터는 양면으로 이루어져 있음.
- 헤드 : 플래터를 대상으로 데이터를 읽고 쓰는 구성요소
(그림을 보면 면마다 헤드가 있어 데이터를 읽고 쓸 수있음!)
- 디스크암 : 헤드를 움직이게 하는 요소 (일반적으로 모든 헤드가 디스크암에 부착되어 함께 이동함)
하드 디스크는 트랙과 섹터 단위로 저장됨.
- 트랙 : 하나의 동심원
- 섹터 : 트랙을 일부분 나눈 것
일반적으로 하나의 섹터는 512바이트 정도의 크기를 가지고 있음.
- 실린더 : 여러 겹의 플래터 상에서 같은 트랙이 위치한 곳을 모아 연결한 논리적 단위
연속된 정보는 한 실린더에 기록이 된다.
-> 헤드는 다같이 움직이기 때문에 동선 낭비를 막을 수 있음
하드 디스크가 저장된 데이터에 접근하는 시간
- 탐색시간(seek time)
- 회전지연 (rotational latency)
- 전송시간 ( transfer time)
탐색시간
접근 하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간
회전지연
헤드가 있는 곳으로 플래터를 회전시키는 시간
전송시간
- 하드디스크와 컴퓨터 간의 데이터를 전송하는 시간
하드 디스크의 데이터 접근 과정
- 즉 디스크 탐ㅅ핵시간과 읽는시간이 엄청 오래걸린다.
플래시 메모리(flash memory)
전기적으로 데이터를 읽고 쓰는 반도체 기반의 저장 장치.
- 범용성 높은 저장장치 (주기억장치 ROM으로도 사용된다.)
NAND 플래시 메모리, NOR 플래시 메모리
- NAND 연산을 수행하는 회로
- NOR 연산을 수행하는 회로
대용량 저장 장치로 많이 사용하는 플래시 메모리는 NAND 플래시 메모리이다.
셀 (cell)
- 플래시 메모리에서 데이터를 저장하는 가장 작은 단위
- 셀이 모여서 MB, GB, TB 저장 장치가 된다.
1 비트를 저장 할 수 있는 플래시 메모리 : SLC
2 비트를 저장 할 수 있는 플래시 메모리 : MLC
3 비트를 저장 할 수 있는 플래시 메모리 : TLC
4 비트를 저장 할 수 있는 플래시 메모리 : QLC
SLC 타입
- 한 셀로 두개의 정보를 표현한다.
- SLC 타입은 MLC, TLC 타입보다 비트의 빠른 입출력이 가능
- 긴수명이나 용량대비 고가격이다.
플래시 메모리(USB, SSD, SD 카드), 하드 디스크에는 수명이 있다. 일정 횟수 이상의 저장, 삭제 횟수 제한이 있음 .
MLC 타입
- 한 셀당 4개의 정보를 표현한다. ( 대용량에 유리하다)
- SLC 보다 느린 입출력
- SLC 보다 짧은 수명
- SLC 보다 저렴하다.
- 시중에서 많이 사용한다.(MLC, TLC, QLC타입이 USB, SDD 메모리 등에 사용)
TLC 타입
- 한 셀당 8개의 정보를 표현한다.
- MLC 보다 느린 입출력
- MLC 보다 짧은 수명
- MLC 보다 저렴
- 시중에서 많이 사용한다.(MLC, TLC, QLC타입이 USB, SDD 메모리 등에 사용)
각 타입 비교
플래시 메모리 - 저장단위
- 페이지 : 셀들이 모여 만들어진 단위
- 블록 : 페이지가 모여 만들어진 단위
- 플레인 : 블록이 모인 단위
- 다이 : 플레인이 모인 단위
플래시 메모리는 읽기, 쓰기는 페이지 단위, 삭제는 (페이지 보다 큰) 블록 단위로 이루어진다!
페이지 상태
- Free 상태 : 어떠한 데이터를 저장하고 있지 않은 상태로 데이터 저장 할 수 있는 상태
- Vaild 상태 : 이미 유효한 데이터를 저장하고 있는 상태
- Invailid 상태 : 유효하지 않은 데이터(쓰레기값)을 저장하고 있는 상태
플래시 메모리는 하드 디스크와 달리 덮어쓰기가 불가능! -> Invaild 상태에는 새 데이터 저장 불가능.
플래시 메모리 동작예시
- X 블록이 4개의 페이지로 이루어져 있음.
- C저장시 A,B는 그대로 저장이 되어있음
- 만약 A를 A'로 수정하고 싶다면 삭제는 블록단위로 이루어지기 때문에 한 페이지만 삭제하고 저장은 불가능하다
가비지 컬렉션
- A' 라는 새로운 값을 저장하고 A라는 쓰레기값이 남게 된다.
- 그래서 유효한 페이지들만 새로운 블록으로 복사를 한다.
- 기존의 블록은 삭제!
07-2 강 RAID의 정의와 종류
- 1TB 하드 디스크 네개로 RAID를 구성하면 4TB 하드디스크 한개의 성능과 안정성을 능가할 수 있다.
수많은 데이터를 하나의 하드디스크에 저장하면 안된다.
보조기억장치에는 수명이 있기도 하고 또한 데이터 소실 가능성이 있음
그래서 여러 디스크에 분산하여 저장
RAID(Redundant Array of Independent Disks)
- 하드 디스크와 SSD로 사용하는 기술
- 데이터의 안정성 혹은 높은 성능을 위해 여러 물리적 보조기억장치를 마치 하나의 논리적 보조기억장치처럼 사용하느 기술
- 마치 1TB 장치 다섯개를 5TB를 하나의 장치로 사용할 수 있다.
RAID 레벨
- RAID를 구성하는 기술
- RAID 0, RAID 1, RAID 2, RAID 3, .... ~~ RAID 10, RAID 50
- RAID 2, 3 은 현재 잘 사용되지 않는다.
RAID 0
- 데이터를 단순히 나누어 저장하는 방식.
- 각 하드 디스크는 번갈아 가며 데이터를 저장한다.
- 저장되는 데이터가 하드 디스크 만큼 나누어서 저장한다.
- 스트라입(Stripe) : 마치 줄무니 처럼 분산되어 저장된 데이터
- 스트라이핑(Striping) : 분산하여 저장하는 것
RAID 0 의 장점
1. 입출력 속도가 향상된다.(하나의 4TB보다 4개의 1TB가 이론상 4배 빠르다.)
RAID 0 의 단점
1.저장된 정보가 안전하지 않다..
RAID 1
- 미러링(mirrorign) : 복사본을 만드는 방식
- 데이터를 쓸 때 원본과 복사본을 두군데에 쓴다.(느린 쓰기 속도)
RAID 1의 단점
- 복구가 매우 간단하다는 장점 : 동일한 데이터가 복사되어있음
RAID 1의 단점
- 느린 쓰기 속도
- 하드 디스크 갯수가 한정 되었을 때 사용가능한 용량이 적어짐
- 복사본이 만들어지는 용량만큼 사용불가 -> 많은 양의 하드디스크가 필요 -> 비용 증가.
RAID 4
- RAID 1처럼 완전한 복사본을 만드는 대신에 오류를 검출하고 복구하기 위한 정보를 저장( 패리티 비트(parity bit)).
- 패리티를 저장한 장치를 이용하여 장치들의 오류를 검출하고 있다면 복구!
- RAID 4 는 RAID 1 보다 적은 하드 디스크로 데이터 안전하게 보관 가능함!
원래 패리티 비트는 오류 검출만 가능하고 복구는 불가능하지만, RAID에서는 패리티 값으로 오류를 수정 가능하다.
1. RAID 4에서 패리티 정보를 저장한 장치는 나머지장치의 오류 검출 및 복구한다.
2. 패리티 비트는 본래 오류 검출용 정보지만, RAID 에서는 오류 복구도 가능하다!
RAID 4의 단점
- 패리티 디스크의 병목 : 페리티 디스크이 병목이 발생한다.
RAID 5
RAID 6
- 두 종류의 패리티(오류를 검출하고 복구할 수 있는 수단)
- RAID 4,5보단든 안전한 구성
- 다만 쓰기는 RAID 5보다는 느림(저장할 패리티가 두종류)
정리
- 각 RAID 레벨마다 장단점이 있음.
- 어떤 상황에서 무엇을 최우선으로 원하는지 에따라 최적의 RAID 레벨은 달라질 수 있음
BIOS 설정에서 RAID를 설정