이 글은 혼자 공부하는 컴퓨터 구조 + 운영체제 (저자 : 강민철)의 책과 유튜브 영상을 참고하여 개인적으로 정리하는 글이라는 것을 알립니다!!.
1. 하드 디스크와 플래시 디스크
- 하드 디스크는 HDD를 말합니다.
- 플래시 디스크는 USB 메모리, SD카드, SSD 등 을 말합니다
1.1 하드디스크
- 자기적인 방식으로 데이터를 보존하기 때문에
자기 디스크라고 말하기도 합니다.


- 플래터 : 동그란 원판이며, 자기 물질에 덮여 있어 N극과 S극을 저장합니다. 이게 0과 1의 역할을 합니다.
- 스핀들: 플래터를 회전시키는 구성 요소로 RPM 단위로 표현합니다. RPM이 5000이라면 1분에 5000바퀴를 회전하는 디스크 입니다.
- 헤드: 플래터 위에서 미세하게 떠 있는 채로 데이터를 읽고 쓰는 바늘 같이 생긴 부품입니다.
- 디스크암: 헤드의 위치를 원하는 위치로 이동 시킵니다.
1.2 플래터의 저장

- 플래터는
트랙과섹터라는 단위로 데이터를 저장합니다. - 트랙 : 동심원으로 나누었을 때 그중 하나의 원을 말합니다.
- 섹터: 섹터는 가장 작은 전송단위 입니다. 512byte 정도의 크기입니다.
1.3 데이터가 접근하는 과정
- 탐색시간: 접근하는 데이터의 트랙에 헤드를 이동시키는데 걸리는 시간을 말합니다
- 회전 지연: 헤드가 있는 곳으로 플래터를 회전시키는 시간
- 전송 시간: 하드디스크와 컴퓨터 간 전송 시간을 말합니다.
1.4 프로그래머가 꼭 봐야할 성능 표
| 저장 장치 | 평균 처리 시간 |
|---|---|
| L1 캐시 참조 시간 | 0.5ns |
| L2 캐시 참조 시간 | 5ns |
| 메모리 참조 시간 | 7ns |
| 메모리에서 1MB를 순차적으로 읽는 시간 | 250.000ns |
| 하드 디스크 탐색 시간 | 10,000,000ns |
| 하디 드스크에서 1MB를 순차적으로 읽는 시간 | 30,000,000ns |
| 한 패킷이 캘리포니아에서 네덜란드까지 왕복하는 시간 | 150,000,000ns |
2. 플래시 메모리
- USB 메모리, SD카드, SSD가 여기에 속합니다.
- 데이터를 저장하는 가장 작은 단위를
Cell이라고 합니다. - 읽고 쓰는 단위는
페이지를 기준으로 합니다.
2.1 SLC 타입
- 한 셀에
1bit를 저장할 수 있는 메모리 타입 - 한셀에
0과 1을 표현할 수 있습니다. - 용량 대비 가격이 비쌉니다.
- 수명이 길어서 수십만 데이터를 쓰고 지울 수 있습니다.
2.2 MLC 타입
- 한 셀에
2bit를 저장할 수 있는 메모리 타입 - 한 셀에 4가지 표현이 가능합니다.
- SLC와 비교했을 경우 용량 대비 가격이 저렴
2.3 TLC 타입
- 한 셀에
3bit를 저장할 수 있는 메모리 타입 - 한 셀에 8가지 표현이 가능합니다.
- SLC, MLC보다 수명과 속도가 떨어지지만, 용량 대비 가격이 제일 싸다.
2.4 셀보다 더 큰 단위
- 셀들이 모여서 만들어진
페이지 - 페이지가 모여서 만들어진
블록 - 블록이 모여서 만들어진
플레인 - 플레인이 모여서 만들어진
다이
2.5 페이지의 상태
- 페이지는 세가지의 상태를 가지고 있습니다.
Free: 어떠한 데이터로 가지고 있지 않아새로운 데이터를 저장할 수 있는 상태Valid: 이미유효한 데이터를 저장하고 있는 상태Invalid: 쓰레기 값이라고 불리는유효하지 않는 데이터를 저장하고 있는 상태
2.6 페이지 저장과 가비지 컬렉션

이 경우는 블럭에 A데이터를 수정했을 경우 A`가 블럭에 저장되고 기존의 A는 Invalid 상태가 되어 유효하지 않는 쓰레기 값이 됩니다.
- 가비지 컬렉션: 낸드 플래시의 삭제 단위는 블록단위입니다. 그래서 A만 지울 수 없습니다. 그래서 제공하는 기능이 가비지 컬렉션 입니다.

가비지 컬렉션은 유효한 페이지만 복사한 뒤 기존 블록을 삭제시킵니다.
3. RAID
- 여러개의 물리적인 보조기억 장치를
하나의 논리적 보조기억장치처럼 사용하는 기술
3.1 RAID 0
- 하드 디스크가 최소
2개 이상일 때 사용할 수 있는 방법입니다. - 하나의 데이터를
N개로 분산해서 저장합니다. - 분산된 데이터를
스트라입이라고 하며, 분산하여 저장하는 것을스트라이핑라고 합니다. - 데이터의 용량도 N배 늘어납니다.
- 읽고 쓰는 처리 속도도 N배 늘어납니다.
하지만, 하나의 디스크에 문제가 생기면 다른 디스크들에서 제대로 정보를 가져올 수 없는 문제가 발생합니다.
3.2. RAID 1
- RAID 1은 복사본을 만드는 방식입니다.
- 이 방식은
미러링라고 말합니다. - RAID 0 방식에 비해
사용가능한 용량이 작아집니다. - 비용도 같이 증가하게 됩니다.
3.3 RAID 4
- 복사본을 만들지 않고
페리티 비트에오류 정보와 복구하기 위한 정보를 담습니다. - RAID 1 보다 적은 하드 디스크로 안전하게 보관할 수 있습니다.
3.4 RAID 5
- 어떤 데이터를 저장할 때, 페리티 비트를 저장하는 디스크에
병목현상이 일어나는 문제를 해소 - 위 그림처럼
패리티 정보를 분산해서 저장하는 방법으로 병목을 해결했습니다.
3.5 RAID 6
- 그림과 같이
서로 다른 두개의 패리티를 두는 방식입니다. - 저장할 때, 페리티가 두개 저장되므로
RAID 5보다 느립니다. - 하지만, 페리티 비트를 2개 보관하기 때문에
RAID 5 보다 안전하게 보관할 수 있는 장점이 있습니다.
4. 출처
https://en.wikipedia.org/wiki/Standard_RAID_levels
Standard RAID levels - Wikipedia
From Wikipedia, the free encyclopedia Any of a set of standard configurations of Redundant Arrays of Independent Disks In computer storage, the standard RAID levels comprise a basic set of RAID ("redundant array of independent disks" or "redundant array of
en.wikipedia.org
https://devocean.sk.com/blog/techBoardDetail.do?ID=163608
RAID 정리 1. RAID 기본 설명 및 RAID Level (레이드 레벨)
devocean.sk.com
'ComputerScience > 컴퓨터 구조' 카테고리의 다른 글
| [컴퓨터 구조] 장치 컨트롤러, 장치 드라이버 (7) | 2024.09.06 |
|---|---|
| [컴퓨터 구조] 메모리와 캐시 메모리 (4) | 2024.08.30 |
| [컴퓨터 구조] CPU 성능 상향 기법 (0) | 2024.08.29 |
| [컴퓨터 구조] CPU의 작동 원리 (1) | 2024.08.28 |
| [컴퓨터구조] 명령어에 대해서 알아보자. (0) | 2024.08.21 |
