다양한 보조 기억 장치
하드 디스크
하드 디스크는 자기적인 방식으로 데이터를 저장하는 보조기억장치다. 그렇기에 하드 디스크를 자기 디스크의 일종으로 부르기도 한다. 대용량 저장 장치가 필요한 작업이나 서버실에 자주 출입하는 작업을 한다면 하드 디스크를 자주 접하게 된다.
하드 디스크에 실질적으로 데이터가 저장되는 곳은 플래터다. 플래터는 자기 물질로 덮여있어 수많은 N극과 S극을 저장하며 N극과 S극은 0과 1의 역할을 수행한다.
플래터를 회전시키는 구성 요소를 스핀들이라 한다. 스핀들이 플래터를 돌리는 속도는 분당 회전수를 나타내는 RPM으로 표현된다.
플래터를 대상으로 데이터를 읽고 쓰는 구성 요소는 헤드다. 헤드는 플래터 위에서 미세하게 떠 있는 채로 데이터를 읽고 쓰는, 바늘같이 생긴 부품이다. 그리고 헤드는 원하는 위치로 헤드를 이동시키는 디스크 암에 부착되어 있다.
일반적으로 여러 겹의 플래터로 이루어져 있고 플래터 양면을 모두 사용할 수 있다. 양면 플래터를 사용하면 위아래로 플래터당 두 개의 헤드가 사용된다. 모든 헤드는 디스크 암에 부착되어 다같이 이동한다.
플래터는 트랙과 섹터라는 단위로 데이터를 저장한다. 플래터를 여러 동심원으로 나누었을 때 그중 하나의 원을 트랙이라 부른다. 트랙은 피자처럼 여러 조각으로 나누어지는데 이 한 조각을 섹터라 부른다. 섹터는 하드 디스크의 가장 작은 전송 단위다.
여러 겹의 플래터 상에서 같은 트랙이 위치한 곳을 모아 연결한 논리적 단위를 실린더라 부른다. 연속된 정보는 한 실린더에 기록된다. 그 이유는 디스크 암을 움직이지 않고도 바로 데이터에 접근할 수 있기 때문이다.
하드 디스크가 저장된 데이터에 접근하는 시간은 크게 탐색 시간, 회전 지연, 전송 시간으로 나뉜다.
- 탐색 시간 : 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간
- 회전 지연 : 헤드가 있는 곳으로 플래터를 회전시키는 시간
- 전송 시간 : 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간
헤드가 하나씩 달려있는 하드 디스크를 단일 헤드 디스크라 부르고 헤드가 트랙별로 여러 개 달려 있는 하드 디스크를 다중 헤드 디스크라 부른다. 이는 트랙별로 이동이 필요 없어짐을 뜻하는데 그렇기에 탐색 시간이 들지 않는다. 이럼 점에서 다중 헤드 디스크를 고정 헤드 디스크라 부른다. 반대로 단일 헤드 디스크를 이동 헤드 디스크라고도 부른다.
플래시 메모리
우리가 흔히 사용하는 USB 메모리, SD 카드, SSD가 모두 플래시 메모리 기반의 보조기억장치다.
플래시 메모리는 전기적으로 데이터를 읽고 쓸 수 있는 반도체 기반의 저장 장치다. 사실 플래시 메모리는 보조기억장치 범주에만 속한다기보다는 다양한 곳에서 널리 사용된다. 주기억장치 중 하나인 ROM, 일상적으로 접하는 전자 제품 안에 플래시 메모리가 내장되어 있다.
플래시 메모리는 데이터를 저장하는 가장 작은 셀이라는 단위가 있다. 이 셀이 모여 MB, GB, TB 용량을 갖는 저장 장치가 되는 것이다. 한 셀에 1비트를 저장할 수 있는 플래시 메모리를 SLC, 한 셀에 2비트를 저장할 수 있는 플래시 메모리를 MLC, 한 셀에 3 비트를 저장할 수 있는 플래시 메모리를 TLC 타입이라 하며 그 이상도 있다.
- SLC 타입
SLC 타입은 한 셀로 두 개의 정보를 표현할 수 있다. SLC 타입은 MLC나 TLC 타입에 비해 비트의 빠른 입출력이 가능하다. 수명도 MLC나 TLC 타입보다 길어서 수만에서 수십만 번 가까이 데이터를 쓰고 지우고를 반복할 수 있다. 하지만 SLC 타입은 용량 대비 가격이 높기에 데이터를 읽고 쓰기가 매우 많이 반복되며 고성능의 빠른 저장 장치가 필요한 경우에 사용한다.
- MLC 타입
MLC 타입은 한 셀로 네 개의 정보를 표현할 수 있다. SLC 타입보다 일반적으로 속도와 수명은 떨어지지만, 한 셀에 두 비트씩 저장할 수 있다는 점에서 MLC 탑인 SLC 타입보다 대용량화하기 유리하다. SLC 타입보다 용량 대비 저렴하며 시중에서 사용되는 많은 플래시 메모리 저장 장치들이 MLC 타입으로 만들어진다.
- TLC 타입
한 셀당 3비트씩 저장할 수 있는 TLC 타입은 한 셀로 여덟 개의 정보를 표현할 수 있다. 그렇기에 대용량화 하기 유리하다. 일반적으로 SLC 나 MLC 타입보다 수명과 속도가 떨어지지만 용량 대비 가격도 저렴하다.
셀들이 모여 만들어진 단위를 페이지, 그리고 페이지가 모여 만들어진 단위를 블록이라 한다. 블록이 모여 플레인, 플레인이 모여 다이가 된다.
플래시 메모리에서 읽기와 쓰기는 페이지 단위로 이루어진다. 하지만 삭제는 페이지보다 큰 블록 단위로 이루어진다. 읽기/쓰기, 삭제의 단위가 다르다는 것이 플래시 메모리의 특징 중 하나다.
이때 페이지는 세 개의 상태를 가진다. 이는 각각 Free, Valid, Invalid 상태다. Free 상태는 어떠한 데이터도 저장하고 있지 않아 새로운 데이터를 저장할 수 있는 상태를 의미하고 Valid 상태는 이미 유효한 데이터를 저장하고 있는 상태를 의미한다. Invalid 상태는 쓰레기 값이라 부르는 유효하지 않은 데이터를 저장하고 있는 상태를 의미한다. 플래시 메모리는 하드 디스크와 달리 덮어쓰기가 불가능하여 Valid 상태인 페이지에는 새 데이터를 저장할 수 없다.
쓰레기 값을 저장하고 있는 공간은 사용하지 않은 공간임에도 불구하고 용량을 차지하고 있다. 이는 엄연히 용량 낭비다. 이런 쓰레기 값을 정리하기 위해 가비지 컬렉션 기능을 제공한다.
가비지 컬렉션은 유효한 페이지들만 새로운 블록으로 복사한 뒤 기존의 블록을 삭제하는 기능이다.
RAID의 정의와 종류
RAID의 정의
개인 정보, 결제 정보 등과 같이 이러한 민감한 중요 정보를 어떻게 안전하게 관리할 것인가 이럴 때 사용할 수 있는 방법이 RAID다. RAID는 주로 하드 디스크와 SSD를 사용하는 기술로, 데이터의 안전성 혹은 높은 성능을 위해 여러 개의 물리적 보조기억장치를 마치 하나의 논리적 보조기억장치처럼 사용하는 기술이다.
RAID의 종류
여러 개의 하드 디스크나 SSD를 마치 하나의 장치처럼 사용하는 RAID를 구성하는 방법을 RAID 레벨이라 표현한다. RAID 레벨에는 대표적으로 RAID 0~6이 있고 이로 파생된 10, 60 등이 있다.
- RAID 0
RAID 0은 여러 개의 보조기억장치에 데이터를 단순히 나누어 저장하는 구성 방식이다. 어떠한 데이터를 저장할 때 각 하드 디스크는 아래와 같이 번갈아 가며 데이터를 저장한다. 즉, 저장되는 데이터가 하드 디스크 개수만큼 나뉘어 저장되는 것이다. 이때 마치 줄무늬처럼 분산되어 자장된 데이터를 스트라입이라 하고 분산하여 저장하는 것을 스트라이핑이라한다.
데이터가 분산되어 저장되면 저장된 데이터를 읽고 쓰는 속도가 빨라진다. 여러 번에 걸쳐 읽고 썼을 데이터를 동시에 읽고 쓸 수 있기 때문이다. 저장 장치 네 개의 속도는 이론상 네 배 가량 빠르다.
그런데 RAID 0에는 저장된 정보가 안전하지 않다는 단점이 있다. 하드 디스크 중 하나에 문제가 생긴다면 다른 모든 하드 디스크의 정보를 읽는 데 문제가 생길 수 있는 것이다.
- RAID 1
RAID 1은 복사본을 만드는 방식이다. 거울처럼 완전한 복사본을 만드는 구성이기에 미러링이라고도 부른다. 어떠한 데이터를 쓸 때 원본과 복사본 두 군데에 쓰는 것이다. 그렇기에 쓰기 속도는 RAID 0보다 느리다.
RIAD 1 방식은 복구가 매우 간단하다는 장점이 있다. 하지만 RAID 1은 하드 디스크 개수가 한정되었을 때 사용 가능한 용량이 적어지는 단점이 있다. RAID 1에서는 복사본이 만들어지는 용량만큼 사용자가 사용되지 못한다. 결국 많은 양의 하드 디스크가 필요하게 되고 이는 비용이 증가한다는 단점이 된다.
- RAID 4
RAID 4는 RAID 1처럼 완전한 복사본을 만드는 대신 오류를 검출하고 복구하기 위한 정보를 저장한 장치를 두는 구성 방식이다. 이를 패리티 비트라 한다. RAID 4에서 패리티를 저장한 장치를 이용해 다른 장치들의 오류를 검출하고 오류가 있다면 복구한다. 이로써 적은 하드 디스크로도 데이터를 안전하게 보관할 수 있다.
+ 원래 패리티 비티는 오류 검출만 가능할 뿐 오류 복구는 불가능하다. 하지만 RAID에서 패리티 값으로 오류 수정도 가능하다.
- RAID 5
RAID 4에서는 어떤 새로운 데이터가 저장될 때마다 패리티를 저장하는 디스크에도 데이터를 쓰게 되므로 패리티를 저장하는 장치에 병목 현상이 발생한다는 문제가 있다.
RAID5는 패리티 정보를 분산하여 저장함으로 이러한 문제를 해소한다.
- RAID6
RAID 6의 구성은 기본적으로 RAID 5와 같으나 서로 다른 두 개의 패리티를 두는 방식이다. 이는 오류를 검출하고 복구할 수 있는 수단이 두 개가 생긴 셈이다. 따라서 다른 것들에 비해 안전한 구성이라 볼 수 있다 다만 새로운 정보를 저장할 때마다 함께 저장할 패리티 비트가 두 개이므로, 쓰기 속도는 더 느리다.
'CS 공부 > 컴퓨터 구조, 운영체제' 카테고리의 다른 글
| 운영체제(1) - 운영체제 시작하기 (0) | 2026.02.12 |
|---|---|
| 컴퓨터 구조(8) - 입출력 장치 (0) | 2026.02.08 |
| 컴퓨터 구조(6) - 메모리와 캐시 메모리 (0) | 2026.02.06 |
| 컴퓨터 구조(5) - CPU 성능 향상 기법 (0) | 2026.02.01 |
| 컴퓨터 구조(4) - CPU의 작동원리 (0) | 2026.01.29 |