본문 바로가기
잡동사니

하드디스크, RAM, ROM, SSD 개념

by L3m0n S0ju 2021. 10. 5.

 

 

 

위 그림은 하드디스크 구조이다. 가장 작은 단위 조각은 sector로 1개의 sector가 1개의 페이지를 담당한다. sector가 모여서 한 개의 원을 이루는데 이것이 바로 track이다. track도 반지름에 따라 여러가지 있는데 같은 반지름의 트랙의 집합이 바로 실린더이다. 

 

Sector -> 섹터의 정보(59 bytes), 데이터(512 bytes)

클러스터, 블록 -> 섹터의 집합 ex) 4KB

 

디스크의 접근 시간은 seek time + rotation delay + transfer delay로 구성되는데 우리가 접근시간을 줄일 수 있는 방법은 seek time이다. 나머지는 하드디스크 제조사에서 해결할 문제이다.

 

암을 움직이면서 실린더들을 왔다갔다하는데 Disk Scheduling에서 큐 관리를 통해 응답시간을 줄일 수 있다. 스케줄링 기법들은 상황에 따라 다르기 때문에 생략.

 

 

 

 


 

 

RAM -> 읽고 쓰기 가능, 휘발성 -> 발전 방향: 속도만 빠르게

DRAM -> 요즘 발전하고 있는 RAM ex) DDR2, DDR3 -> 숫자가 +1 될때마다 2배 빨라짐

 

 

ROM -> 읽기만 가능한 메모리 -> 발전 방향: 쓰기도 가능하게 범용적으로

NVRAM -> 읽기/쓰기 모두 가능한 RAM, 비휘발성 -> ex) 메인보드 역할: BIOS, UEFI

EEPROM -> Electrically Erasable Programmable ROM -> 전기로 지울 수 있는 메모리

 

 

플레시 메모리 -> EEPROM의 한 종류 -> 장점: 빠른 읽기, 저전력, 비휘발성    단점: 쓰기 느림, 덮어쓰기 기능 X, 지워서 써야하는데 지우는데 오래걸림, 블록의 지움 횟수 finite -> 하드디스크를 완전히 대체 못하는 이유

 

NOR 플레시메모리 -> 연산 ex) CPU

NAND 플레시메모리 -> 저장장치 ex) SSD

 

SSD -> 플레시 메모리의 한 종류 -> 읽기는 거의 RAM 급으로 빠른데 쓰기 속도는 후달림 -> 과거에는 비싸서 잘 사용하지 않았으나 요즘은 하드디스크랑 가성비를 비교하면 비슷해서 많이 사용함.

 

 

 

 

 

 


플래시 메모리

 

FTL(Flash Translation Layer)

-> NAND 플래시 컨트롤러에 의해 데이터 처리 순서 결정

 

마모 평준화(Wear Leveling)

 

읽고 쓰기는 페이지 단위로 실행 ex) 512KB

삭제는 블록단위로 실행 ex) 4KB

 

부가적인 쓰기(Write amplification) -> 쓰기는 페이지 크기에 맞춰서 실행되므로, 그 크기보다 작은 데이터에 의해 비효율적으로 저장공간이 낭비되는 현상

 

가비지 컬렉션 -> 페이지 상태 변환 : stale -> free

 

오버 프로비저닝 -> Wear-Leveling, Garbage-Collection을 원활하게 동작시기키 위한 여유 공간

ex) 다나와에서 SSD 살 때 128GB -> 120GB + 8GB인 이유

 

 

 


 

댓글