⚠️ 공부한 내용을 정리하는 공간입니다. 설명이 부족하거나 옳바르지 못한 부분이 있을 수 있습니다. 옳바르지 못한 내용을 발견하셨다면 댓글로 알려주시길 부탁드립니다. 수정하도록 하겠습니다.
오늘의 사족
독감이 유행이라지요? 아주 죽을 맛입니다. 다들 독감 조심하세요!
< 목차 >
1. Hard Disk Drive
1-1. HDD 구성요소
1-2. Platter를 이루는 단위
2. Flash Memory
2-1. Flash Memory 종류
2-2. Flash Memory를 이루는 단위
1. HDD; Hard Disk Drive (하드디스크)
하드디스크는 자기적인 방식으로 데이터를 저장하는 보조기억장치로 자기디스크라고도 불린다. 하드디스크가 컴퓨터와 연결되면 어떻게 데이터를 저장하는지 그 작동 원리에 대해 알아보려면 먼저 하드디스크의 구성요소에 대해 알아야 할 필요가 있다.
1-1. HDD 구성요소
아래 사진을 통해 하드디스크의 구성 요소들의 역할을 살펴보자!
Platter(플래터): 하드디스크에서 실질적으로 데이터가 저장됨
Spindle(스핀들): 플래터를 회전시킴
Head(헤드): 플래터를 대상으로 데이터를 읽고 씀
Disk Arm(디스크 암): 헤드를 원하는 위치로 이동시킴
이렇게 간단하게 하드디스크 내부 구성 요소들의 역할을 알아보았으니 실제로 어떻게 작동하는지 영상으로 확인해보자!
영상을 보면 하드디스크가 컴퓨터와 연결된 상태에서 스핀들이 플래터를 빠르게 회전시키고 이후에 디스크암에 의해 헤드가 플래터에 데이터를 읽거나 쓰고 있다고 필자는 생각한다. 이때 데이터를 빠르게 저장하거나 탐색하도록 하려면 당연히 플래터를 스핀들이 더욱 빠르게 회전시켜야 할 것이다. 스핀들이 플래터를 회전시키는 속도는 RPM(Revolution Per Minute) 단위로 표현된다.
1-2. Platter를 이루는 단위
여기서 Platter(플래터)는 데이터를 저장하는 단위에 따라 또 세부적으로 명칭이 나뉜다.
Sector: 하드디스크의 가장 작은 전송 단위, 일반적으로 2⁹(512)byte 정도의 크기를 지님
Cluster: OS file Manager가 파일을 유지 관리하는 데에 있어 파일을 일련의 clusters of sector로 봄, sector의 2배 크기를 지님
Track: 각각의 플래터는 track이라 불리우는 concentric rings로 나뉨.각 platter에는 수천개의 track이 있음
Cylinder: 여러 겹의 플래터 상에서 같은 트랙이 위치한 곳을 모아 연결한 논리적 단위
2. Flash Memory (플래시 메모리)
우리가 일상생활에서 흔하게 사용하는 USB 메모리, SD 카드, SSD 모두 플래시 메모리 기반의 보조기억장치이다. 플래시메모리는 전기적으로 데이터를 읽고 쓸 수 있는 반도체 기반의 저장 장치이다.
2-1. Flash Memory 종류
플래시 메모리는 cell(셀) 단위로 데이터를 저장하는데 하나의 셀에 얼만큼의 비트를 저장하는지에 따라 플래시 메모리의 타입이 달라진다.
SLC(Single Level Cell) 타입
- 한 셀에 1비트를 저장
- MLC, TLC에 비해 비트의 빠른 입출력이 가능하며 수명도 길다.
- 용량 대비 가격이 높아서 데이터를 입출력이 많이 반복되며 고성능의 빠른 저장장치가 필요한 경우에 사용
MLC(Multiple Level Cell) 타입
- 한 셀에 2비트를 저장
- SLC보다 대용화하기 유리하며 용량 대비 가격 저염
TLC(Triple Level Cell) 타입
- 한 셀에 3비트를 저장
- 용량 대비 가격이 저렴하여 대용화하기 유리하지만 SLC, MLC에 비해 수명과 속도가 떨어짐
2-2. Flash Memory를 이루는 단위
Cell: 플래시 메모리의 가장 작은 단위
Page: 셀들이 모여서 만들어진 단위, Free, Valid, Invalid 상태를 가짐
Block: 페이지가 모여서 만들어진 단위
Plane: 블록이 모여 만들어진 단위
Die: 플레인이 모여 만들어진 단위
플래시 메모리에서 읽기/쓰기는 페이지 단위로 이루어진다. 그러나 삭제는 블록 단위로 이루어진다.
그래서 하나의 블록 내에 페이지 중 수정하고 싶은 데이터가 생겨도 페이지 단위에서는 덮어쓰기가 불가능하기 때문에 수정하고 싶은 페이지를 Invalid 상태로 두고 해당 페이지는 사용하지 않는다. Invalid 상태의 페이지는 저장만 해놓고 사용하지 않는 쓰레기값이기 때문에 용량만 차지하는 문제가 생긴다. 그래서 최근에는 SSD를 비롯한 플래시 메모리는 쓰레기값을 정리하기 위해 Garbage Collection(가비지 컬렉션) 기능을 제공한다.
가비지 컬렉션은 유효한(Valid) 페이지만 새로운 블록으로 복사한 후 기존 블록을 삭제하여 공간을 정리하는 기능이다.
<출처>
[1] Brian, (2019.5.14.) 7200rpm Hard Drive running without the cover [Youtube] 검색경로- https://www.youtube.com/watch?v=ojGvHDjHPb4
[2] Physical File Organization (The Organization of Hard Disk) [Website] 검색경로- https://csit.ust.edu.sd/files/2019/08/FM-Lec7.pdf
[3] (2014.6.20) Understanding Flash: Blocks, Pages and Program / Erases [Website] 검색경로-https://flashdba.com/2014/06/20/understanding-flash-blocks-pages-and-program-erases/
'🖥️ Computer Science > Computer Architecture' 카테고리의 다른 글
[Computer Architecture] 목차(Index) (0) | 2024.01.03 |
---|---|
[Computer Architecture] I/O Device(입출력장치)에 대하여 (0) | 2024.01.02 |
[Computer Architecture] Cache Memory(캐시 메모리)에 대하여 (0) | 2023.12.22 |
[Computer Architecture] RAM에 대하여_DRAM, SRAM, SDRAM, DDR SDRAM (0) | 2023.12.21 |
[Computer Architecture] ISA; Instruction Set Architecture _ CISC, RISC (0) | 2023.12.20 |