다양한 보조기억장치
하드 디스크
- 자기적인 방식으로 데이터 저장
- 크게 스핀들과 플래터로 구성
- 일반적으로 플래터 양면 모두 사용
- RPM (Revolution Per Minute): 분당 회전수
- 스핀들은 플래터를 회전시킨다
- 플래터 안에는 수많은 N극과 S극이 존재
- 일반적으로 여러 겹으로 구성되어있다.
HDD는 일반적으로 SSD보다 느리고 내구성이 낮습니다. 그러나 여전히 한 가지 큰 이점이 있습니다. 바로 용량입니다. 보조 스토리지 드라이브로 사용할 경우 HDD는 기본 SSD에 저장하기에는 부담스로운 데이터를 저장할 수 있도록 테라바이트 단위의 공간을 저렴하게 제공해 줍니다.
- 하드디스크의 장점
헤드
- 플래터로부터 아주 미세하게 떨어져있음 (플래터의 면마다 헤드 장착되어있음)
- 데이터를 쓰거나 읽는다.
디스크 암
- 일반적으로 모든 헤드가 디스크 암에 부착되어 함께 이동
하드 디스크 - 저장 단위
- 기본적으로 트랙과 섹터 단위로 데이터 저장
- 섹터의 크기: 512바이트~ 4096바이트
- 플래터를 이루고 있는 섹터의 동심원을 트랙이라고 한다. (운동장 트랙 연상)
- 하나 이상의 섹터를 묶어 블록이라고 표현하기도 한다.
- 여러 겹의 플래터 상에서 같은 트랙이 위치 한 곳을 모아 연결한 논리적 단위
- 연속된 정보는 한 실린더에 기록된다. (헤드를 움직이지 않고 곧바로 데이터를 읽어낼 수 있다.)
- 플래터는 트랙과 섹터로 나뉘고, 같은 트랙이 모여 실린더를 이룬다.
하드 디스크 - 데이터 접근 과정
- 하드 디스크가 저장된 데이터에 접근하는 시간
- 탐색 시간 (seek time)
- 회전 지연 (rotational latency)
- 전송 시간 (transfer time)
탐색 시간
- 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간
회전 지연
- 헤드가 있는 곳으로 플래터를 회전시키는 시간
전송 시간
- 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간
플래시 메모리
- 전기적으로 데이터를 읽고 쓰는 반도체 기반 저장 장치
- 범용성이 넓기에 보조기억장치에만 속한다고 보기는 어렵다.
플래시 메모리의 종류
- NAND 플래시 메모리
- NOR 플래시 메모리
셀 (cell)
- 플래시 메모리에서 데이터를 저장하는 가장 작은 장치
- 이 셀이 모이고 모여 MB, GB, TB 저장 장치가 된다.
한 셀에 1비트를 저장할 수 있는 플래시 메모리: SLC
한 셀에 2비트를 저장할 수 있는 플래시 메모리: MLC
한 셀에 3비트를 저장할 수 있는 플래시 메모리: TLC
한 셀에 4비트를 저장할 수 있는 플래시 메모리: QLC
=> 플래시 메모리의 수명, 성능, 비용을 결정하는 요소
수명?
플래시 메모리 (USB, SSD, SD카드 등), 하드디스크에는 수명이 있다. 일정 횟수 이상 썼다 지웠다 하면 수명이 다한다.
플래시 메모리 - SLC, MLC, TLC
비유하면 사람 한 명에 1비트, 셀은 집
SLC는 한 집에 한 명
MLC는 한 집에 두 명
TLC는 한 집에 세 명
SLC
- 한 셀로 두 개의 정보 표현
- 비트의 빠른 입출력
- 긴 수명
- 용량 대비 고가격
MLC
- 한 셀로 네 개의 정보 표현 (대용량화 유리)
- SLC보다 느린 입출력
- SLC보다 짧은 수명
- SLC보다 저렴
- 시중에서 많이 사용 (MLC, TLC, QLC)
TLC
- 한 셀로 여덟 개의 정보 표현 (대용량화 유리)
- MLC보다 느린 입출력
- MLC보다 짧은 수명
- MLC보다 저렴
- 시중에서 많이 사용
플레시 메모리 - 저장 단위
- 셀들이 모여서 페이지 (page)
- 페이지들이 모여 블록 (block)
- 블록이 모여 플레인 (plane)
- 플레인이 모여 다이 (die)
- 읽기/쓰기 단위와 삭제 단위는 다르다.
- 읽기와 쓰기는 페이지 단위로 이루어짐.
- 삭제는 (페이지보다 큰) 블록 단위로 이루어짐.
페이지의 상태
- Free 상태
- 어떠한 데이터도 저장하고 있지 않아 새로운 데이터를 저장할 수 있는 상태
- Valid 상태
- 이미 유효한 데이터를 저장하고 있는 상태
- Invalid 상태
- 유효하지 않은 데이터 (쓰레기 값)를 저장하고 있는 상태
가비지 컬렉션
1. 유효한 페이지들만을 새로운 블록으로 복사
2. 기존의 블록을 삭제 => 공간을 정리하는 기능
RAID의 정의와 종류
1TB 하드 디스크 네 개로 RAID를 구성하면 4TB 하드 디스크 한 개의 성능과 안전성을 능가할 수 있다.
RAID의 정의
RAID (Redundant Array of Independent Disks)
- 하드 디스크와 SSD를 사용하는 기술
- 데이터의 안전성 혹은 높은 성능을 위해 여러 물리적 보조기억장치를 마치 하나의 논리적 보조기억장치처럼 사용하는 기술
RAID 레벨
- RAID를 구성하는 기술
- RAID 0, RAID1, RAID2, RAID3, RAID4, RAID5, RAID6
- 그로부터 파생된 RAID10, RAID 50 등
RAID 0
- 데이터를 단순히 나누어 저장하는 방식
- 각 하드 디스크는 번갈아가며 데이터를 저장한다.
- 저장되는 데이터가 하드 디스크 개수만큼 나뉘어 저장
- 스트라이프(stripe): 마치 줄무늬처럼 분산되어 저장된 데이터
- 스트라이핑(striping): 분산하여 저장하는 것
장점: 입출력 속도의 향상
단점: 저장된 정보가 안전하지 않음
RAID 1
- 미러링 (mirroring): 복사본을 만드는 방식
- 데이터를 쓸 때 원본과 복사본 두 군데에 사용 (느린 쓰기 속도)
장점: 백업 파일이 있어서 안전하게 데이터 저장 가능
단점: 하드 디스크 개수가 한정되었을 때 사용 가능한 용량이 적어짐.
복사본이 만들어지는 용량만큼 사용 불가 => 많은 양의 하드 디스크가 필요 => 비용 증가
RAID 4
- RAID 1처럼 완전한 복사본을 만드는 대신 오류를 검출하고 복구하기 위한 정보를 저장 (패리티 비트)
- 패리티를 저장한 장치를 이용해 다른 장치들의 오류를 검출하고 오류가 있다면 복구
- 본래 패리티 비트는 오류 검출만 가능할 뿐 오류 복구는 불가능한데, RAID에서는 복구도 가능하다.
장점:RAID 1보다 적은 하드 디스크로도 데이터를 안전하게 보관
단점: 패리티 디스크의 병목
RAID 5
- 패리티 정보를 분산하여 저장하는 방식
- RAID 4는 패리티를 저장한 장치를 따로 두는 방식이고, RAID 5는 패리티를 분산하여 저장하는 방식이다.
RAID 6
- 두 종류의 패리티 (오류를 검출하고 복구할 수 있는 수단) 사용
- RAID 5보다 안전, 쓰기는 RAID 5보다 느리다.
- RAID 레벨마다 장단점이 있다.
- 어떤 상황에서 무엇을 최우선으로 원하는지에 따라 최적의 RAID 레벨은 달라질 수 있다.
- 각 RAID 레벨의 대략적인 구성과 특징을 아는 것이 중요하다.
'컴퓨터 구조' 카테고리의 다른 글
[컴퓨터구조] 입출력장치 (1) | 2024.03.29 |
---|---|
[컴퓨터구조] RAM (0) | 2024.03.23 |
[컴퓨터구조] 빠른 CPU를 위한 설계 (0) | 2024.03.15 |
[컴퓨터구조] CPU (1) | 2024.03.14 |
[컴퓨터구조] 소스 코드와 명령어 (1) | 2024.03.08 |