[Computer Architecture] 보조기억장치
3줄 요약
보조기억장치는 비휘발성 저장 장치로, 영구적인 데이터 저장 담당
속도는 느리지만 대용량을 지원, 대표적인 저장 장치로는 HDD, SSD 있음
순차적 접근과 직접 접근 방식이 있음
💻 컴퓨터 구조 & 운영체제 시리즈
이 시리즈는 『혼자 공부하는 컴퓨터 구조+운영체제』 (강민철 저)
+ 인프런 강의를 기반으로 개인적으로 복습 및 정리한 기록입니다.
💾 보조기억장치
- 비휘발성 저장 장치, 전원이 꺼져도 데이터를 보존하며 데이터를 영구적으로 저장
- 속도는 느리지만 대용량 데이터 저장에 적합
- 주로 파일 시스템, 운영체제, 애플리케이션 데이터 등을 저장
🔸 하드디스크 (HDD)
- 자기적인 방식으로 데이터를 저장
🔸 구성
출처: hacking_security
- 플래터(양면 모두 사용)
- 스핀들
- RPM(분당 회전수)
- 헤드: 일반적으로 모든 헤드가 디스크암에 부착되어 함께 이동
- 디스크암
🔸 저장 단위
- 기본적으로 트랙과 섹터 단위로 데이터 저장
- 같은 트랙들이 모여서 실린더(원기둥 모양)를 이룸
🔸 데이터 접근 과정
- 탐색 시간 (seek time): 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간
- 회전 지연 (rotational latency): 헤드가 있는 곳으로 플래터를 회전시키는 시간
- 전송 시간 (transfer time): 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간
🔸 플래시 메모리
전기적으로 데이터를 읽고 쓰는 반도체 기반 저장 장치
🔸 종류
- NAND 플래시 메모리
- NOR 플래시 메모리
🔸 저장 단위
- 셀 (cell): 플래시 메모리에서 데이터를 저장하는 가장 작은 단위
- 이 셀이 모여서 수 MB, GB, TB가 됨
- SLC, MLC, TLC, QLC 등
- 셀이 모여 페이지 (page)
- 페이지들이 모여 블록 (block)
- 블록이 모여 플레인 (plane)
- 플레인이 모여 다이 (die)
🔸 읽기/쓰기 및 삭제
- 읽기/쓰기는 페이지 단위
- 삭제는 블록 단위로 이루어짐
🔸 페이지의 상태
- Free 상태: 새로운 데이터를 저장할 수 있는 상태
- Valid 상태: 유효한 데이터를 저장한 상태
- Invalid 상태: 유효하지 않은 데이터를 저장한 상태
🔸 가비지 컬렉션
- 유효한 페이지들만을 새로운 블록으로 복사하고 기존 블록 삭제
🔸 SLC, MLC, TLC
- SLC (Single Level Cell): 한 셀에 1비트 저장, 빠른 입출력, 긴 수명, 고가격
- MLC (Multi Level Cell): 한 셀에 2비트 저장, 대용량화 유리, 느린 입출력, 저렴
- TLC (Triple Level Cell): 한 셀에 3비트 저장, 대용량화 유리, 느린 입출력, 저렴
📀 RAID (Redundant Array of Independent Disks)
하드디스크와 SSD를 사용하는 기술로, 데이터의 안정성 혹은 성능 향상을 위해 여러 물리적 보조기억장치를 하나의 논리적 장치처럼 사용하는 기술
🔸 RAID 레벨
- RAID 0: 데이터를 단순히 나누어 저장하는 방식
- 스트라이핑: 분산 저장된 데이터
- (장점) 입출력 속도 향상
- (단점) 데이터 안정성 없음
- RAID 1: 미러링: 복사본을 만드는 방식
- (장점) 백업과 복구 용이
- (단점) 저장 용량 절반
- RAID 4: 패리티 정보를 저장하여 오류를 검출 및 복구하는 방식
- (장점) 데이터 안정성, 저장 용량 절감
- (단점) 패리티 디스크의 병목 현상
- RAID 5: 패리티 정보를 분산 저장하는 방식
- (장점) 병목 현상 해소, 높은 성능과 안정성
- RAID 6: 두 가지 패리티를 사용하여 더 높은 안정성 제공
- (단점) 느린 쓰기 속도
- 이로부터 파생된 RAID 50(오영), RAID 10 …
- RAID 10 (RAID 1+0): RAID 1과 RAID 0을 결합하여 성능과 안정성 제공
✅ 마무리 정리
보조기억장치는 비휘발성 저장 장치로 영구적인 데이터 저장 담당
HDD와 SSD는 속도와 용량 면에서 차이를 보이며,
RAID 기술을 통해 성능과 안정성을 동시에 확보 가능
📚 참고 자료
- 『혼자 공부하는 컴퓨터 구조+운영체제』 - 강민철 저
- 인프런 강의 - 혼자 공부하는 컴퓨터 구조+운영체제 기반 강의
읽어주셔서 감사합니다 🙌
내용이 도움이 되었거나, 틀린 부분이 있다면 댓글이나 GitHub Issue로 알려주세요 😊
This post is licensed under CC BY 4.0 by the author.