
보조기억장치

- 메모리(RAM)은 휘발성 저장장치 이기 때문에, 전원이 공급되지 않더라도 내용을 저장하는게 필요해짐
- 그 역할을 하는게 바로 보조기억장치
하드디스크
하드디스크의 구성

- 자기적인 방식으로 데이터 저장 (플래터에 N극과 S극으로 데이터들이 저장됨)
- 일반적으로 플래터 양면 모두 사용, 여러장 겹쳐서 사용
- "스핀들"이 플래터를 돌려줌
- RPM(Revolution Per Minute) : 분당 회전수


- 헤드 : 자기적인 물질로 덮여 있는 플래터를 읽고 쓸 수 있는 수단(아주 미세하게 떠있음)
- 디스크 암 : 헤드를 움직여주는 구성 요소
- 일반적으로 모든 헤드가 디스크 암에 부착되어 함께 이동
- 플래터의 면마다 헤드가 달려 있음
- 연속된 정보는 한 실린더에 기록
하드디스크의 저장 단위

- 기본적으로 트랙(track)과 섹터(sector) 단위로 데이터 저장
- 트랙 : 플래터를 이루고 있는 동심원을 그리는 저장단위(운동장의 트랙처럼)
- 섹터 : 피자 조각처럼 나눈 한 조각
- 섹터의 크기 : 512바이트 ~ 4096 바이트

- 플래터는 트랙과 섹터로 나뉘고, 같은 트랙이 모여 실린더를 이룸
- 실린더(cylinder) : 여러 겹의 플래터 상에서 같은 트랙이 위치 한 곳을 모아 연결한 논리적 단위
- 연속된 정보는 한 실린더에 기록됨
- 예를 들어, 2개의 플래터를 사용하는 하드디스크에서 4개의 섹터에 걸쳐 데이터를 저장해야 한다면
첫번째 플래터 윗면과 뒷면, 두번째 플래터의 윗면과 뒷면 이런식으로 한 실린더에 기록이 됨 - 이유 : 헤드는 디스크 암에 부착되서 다같이 움직이기 때문에, 한 실린더에 기록하면 헤드를 움직이지 않고 곧바로 읽을 수 있음
- 예를 들어, 2개의 플래터를 사용하는 하드디스크에서 4개의 섹터에 걸쳐 데이터를 저장해야 한다면
하드 디스크의 데이터 접근 과정
하드 디스크가 저장된 데이터에 접근하는 시간
- 탐색 시간 , 회전 지연 , 전송 시간
- 탐색 시간 (seek time) : 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간

- 회전 지연 (rotational latency) : 헤드가 있는 곳으로 플래터를 회전시키는 시간

- 전송 시간 (transfer time) : 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간

Jeef Dean - Numbers Every Programmer Should Know
- 하드디스크에 접근하는 시간이 별거 아닌 것 같아도 다른 컴퓨터 동작들과 비교했을 때 아주 긴 시간임
- 그러므로 주요한 변인

- ns(나노초) : 1/10^9 초
- 패킷(packet) : 네트워크의 기본적인 전송 단위
- hard drive running, hard drive in slow motion 같은걸 검색하면 실제 움직이는 영상 볼 수 있음

플래시 메모리

- 전기적으로 데이터를 읽고 쓰는 반도체 기반 저장 장치
- 범용성이 넓기에 보조기억장치에만 속한다고 보기는 어려움
- 실제 주기억장치 중 하나인 ROM으로도 플래시 메모리가 많이 사용됨
- SSD나 SD카드를 보면 쉽게 발견할 수 있음
플래시 메모리의 종류
- NAND 플래시 메모리
- NOR 플래시 메모리
오늘날 대용량 저장장치로 많이 사용되는 플래시 메모리는 NAND연산을 수행하는 회로인 NAND 플래시 메모리임
플래시 메모리의 구성
셀(cell)
- 플래시 메모리에서 데이터를 저장하는 가장 작은 단위
- 이 셀이 모이고 모여 수 MB, GB, TB 저장 장치가 됨
- 한 셀에 저장할 수 있는 비트 수에 따라 종류가 나뉨
- SLC : 1비트를 저장할 수 있는 플래시 메모리 (Single Level Cell Type)
- MLC : 2비트를 저장할 수 있는 플래시 메모리
- TLC : 3비트를 저장할 수 있는 플래시 메모리
- QLC : 4비트를 저장할 수 있는 플래시 메모리
- 집과 사람으로 비유하면 이해하기 쉬움
- 사람 한 명 == 1 비트 / 셀 == 집
- SLC == 한 집에 한 명
MLC == 한 집에 두 명
TLC == 한 집에 세 명
SLC
- 한 셀로 두 개의 정보 표현(2^1개)
- 비트의 빠른 입출력 : 혼자 드나드니까
- 긴 수명 : 혼자 사니까
- 용량 대비 고가격 : 월세 혼자 감당해야하니까

MLC

- 한 셀로 네 개의 정보 표현 (SLC에 비해 상대적으로 대용량화에 유리)
- SLC보다 느린 입출력 : 나가려면 두 명이 준비해야하니까
- SLC보다 짧은 수명 : SLC 보다 썼다 지웠다 할 수 있는 횟수가 작음
- SLC보다 저렴 : 월세 나눠냄
- 시중에서 많이 사용 (MLC, TLC, QLC)
TLC

- 한 셀로 여덟 개의 정보 표현 (대용량화 유리)
- MLC 보다 느린 입출력
- MLC 보다 짧은 수명
- MLC 보다 저렴
- 시중에서 많이 사용 (MLC, TLC, QLC)
SLC, MLC, TLC 비교

- 같은 플래시 메모리라도 종류에 따라 수명, 가격, 성능이 다르다
- 같은 16GB SSD라도 타입에 따라 수명, 가격, 성능이 다름
플래시 메모리의 저장 단위

- 셀이 모여 페이지(page)
- 페이지가 모여 블록(block)
- 블록이 모여 플레인(plane)
- 플레인이 모여 다이(die)
- 플래시 메모리의 읽기/쓰기 단위와 삭제 단위가 다름
- 읽기와 쓰기 : 페이지 단위
- 삭제 : 블록 단위 (페이지보다 더 큰 단위)
- 페이지의 상태
- 플래시 메모리는 하드 디스크와 달리 덮어쓰기가 불가능하기 때문에 상태를 둠
- Free 상태 : 어떠한 데이터도 저장하고 있지 않아 새로운 데이터를 저장할 수 있는 상태
- Valid 상태 : 이미 유효한 데이터를 저장하고 있는 상태
- Invalid 상태 : 유효하지 않은 데이터(쓰레기값)를 저장하고 있는 상태
플래시 메모리의 동작 예시

새롭게 저장된 C와 기존에 저장되어 있던 B는 그대로 둔채,
기존의 A만을 A'로 수정해야 한다면?

삭제는 블록 단위로 이루어지기 때문에 A만 삭제 불가
플래시메모리는 덮어쓰기 불가
그러므로,
기존 A를 invalid 페이지로 만든 뒤,
빈 공간에 A'를 새로운 페이지로 저장
근데 그러면 불필요한 A가 용을 차지하는 문제
이를 해결하기 위한게 가비지 컬렉션
가비지 컬렉션
유효한 페이지들만 새로운 블록으로 복사한 후 기존 블록을 삭제하여 공간을 정리하는 기능
저장공간을 관리하는 플래시 메모리의 관리 기법
- 유효한 페이지들만을 새로운 블록으로 복사
- 기존의 블록을 삭제

RAID의 정의와 종류

1TB 하드 디스크 네 개로 RAID를 구성하면
4TB 하드 디스크 한 개의 성능과 안정성을 능가할 수 있음
RAID (Redundant Array of Independent Disks)
- 하드 디스크와 SSD로 사용하는 기술
- 데이터의 안전성 혹은 높은 성능을 위해
여러 물리적 보조기억장치를 마치 하나의 논리적 보조기억장치처럼 사용하는 기술

RAID 레벨
- RAID를 구성하는 기술(방법)
- RAID 0, RAID 1, RAID 2, RAID 3, RAID 4, RAID 5, RAID6,
- 그로부터 파생된 RAID 10, RAID 50, ...
- RAID 2, RAID 3은 요즘 많이 사용되진 않음
- 각 RAID 레벨마다 장단점이 있음
- 어떤 상황에서 무엇을 최우선으로 원하는지에 따라 최적의 RAID 레벨은 달라질 수 있음
- 각 RAID 레벨의 대략적인 구성과 특징을 아는 것이 중요
RAID 0
- 데이터를 단순히 나누어 저장하는 구성 방식

- 각 하드 디스크는 번갈아가며 데이터를 저장
- 저장되는 데이터가 하드 디스크 개수만큼 나뉘어 저장
- 스트라입 (stripe) : 마치 줄무늬처럼 분산되어 저장된 데이터
- 스트라이핑 (striping) : 분산하여 저장하는 것

RAID 0 의 장점
- 입출력 속도의 향상
- 데이터를 순차적으로 읽을 때 나뉘어 저장되었기 때문에 동시에 입출력을 할 수 있음

RAID 0의 단점
- 저장된 정보가 안전하지 않음
- 하드 디스크 하나가 고장나 버리면 그 곳에 저장된 데이터 활용이 불가능해짐

RAID1
- RAID1 은 미러링이라고 하기도 함 : 복사본을 만드는 방식
- 데이터를 쓸 때 원본과 복사본 두 군데에 씀
- 단점
- 느린 쓰기 속도
- 하드 디스크 개수가 한정되었을 때 사용 가능 용량이 적음
=> 많은 양의 하드 디스크 필요 => 비용 증가
- 장점
- 백업과 복구가 쉽다(더 안전한 방식)

RAID4
- RAID 1 처럼 완전한 복사본을 만드는 대신,
오류를 검출하고 복구하기 위한 정보(패리티 비트)를 저장- 패리티 비트(Parity Bit) : 원래 오류 검출용 정보인데, 레이드에서는 오류의 검출뿐만 아니라 복구도 가능하도록 계산식이 추가되어 있음!
- 패리티비트를 하나의 하드디스크에 몰아 넣어서, RAID 1보다 적은 하드디스크로도 데이터를 안전하게 보관할 수 있음

- RAID 4 단점 : 패리티 디스크의 병목 현상
- 데이터를 새롭게 쓸 때마다 페리티 디스크에도 저장해야하기 때문에 바쁨
- 오류 검출 코드도 계속 저장하기 때문에 새로운 정보를 저장할 때마다 패티리 디스크도 계속 저장
=> 병목 현상 발생

RAID5
- 패리티 정보를 분산하여 저장하는 방식
- RAID 4 는 패리티를 저장한 장치를 따로 두는 방식,
RAID 5 는 패리티를 분산하여 저장하는 방식 => 병목 현상 완화

RAID6
- 두 종류의 패리티(오류를 검출하고 복구할 수 있는 수단)을 두는 방법
- RAID 5 보다 안전하지만 느림

출처 : 혼자 공부하는 컴퓨터구조 + 운영체제 (저자 강민철)
'취업역량강화 > 컴퓨터공학' 카테고리의 다른 글
| [운영체제] 운영체제(정의, 핵심기능, 커널, 이중모드와 시스템 호출) (0) | 2026.02.11 |
|---|---|
| [컴퓨터 구조] 입출력 장치(장치 컨트롤러와 장치 드라이버, 다양한 입출력 방법) (0) | 2026.02.09 |
| [컴퓨터 구조] 메모리와 캐시메모리(RAM의 특징과 종류, 주소 공간, 캐시 메모리) (0) | 2026.02.05 |
| [컴퓨터 구조] CPU 성능 향상 기법(CPU 설계, 명령어 병렬 처리, 명령어 집합 구조, CISC와 RISC) (0) | 2026.02.03 |
| [컴퓨터 구조] CPU의 작동 원리(ALU, 제어장치, 제어장치, 명령어, 인터럽트) (1) | 2026.02.01 |