본문 바로가기
HW

저장장치 (storage memory) 란? (레지스터, 캐시, 메모리, 램, 스토리지, 하드디스크, SSD 등)

by jungwon3004 2022. 1. 17.
728x90
반응형

저장장치(storage memory)는 크게 4가지로 구분됨

1. register

2. cache

3. memory (주 기억장치)

4. storage (보조 기억장치)

위로 올라갈수록 빠르고 작지만 가격이 비쌈

우리는 storage memory를 비롯한 여러 device들과 접근할 때 "driver"를 거침

storage memory 의 driver

사실 '장치관리자'에 있는 이 모든 것들을 다 driver라고 함. device와 연결되어있는 것들

아무튼 바로 이 저장장치에 대해 하나씩 알아보도록 하겠음

728x90

1. register

CPU 안 processor 에 있음

processor 안에 있는만큼 가장 빠르지만 극히 소량의 data 처리만 가능

2. cache

CPU 안에 있기는 하지만 processor 밖에 있음

프로그램에서 직접 다룰 수는 없음

processor가 자주 사용하는 중요한 항목들을 임시로 저장

그러면 과연 어떤 data가 중요한 것일까????

① temporal locality (시간적 지역성)

: 최근 접근된 data

② spatial locality (공간적 지역성)

: 최근 접근된 data의 주변 data

왜 이렇게까지 복잡하게 선택할까??

바로 너무 비싸서...

intel i7-10700k processor 기준으로

가격은 45만원 ~ 55만원이지만

cache memory는 16MB 정도


3. memory (주 기억장치)

(1) RAM

- 휘발성 (전기 공급이 끊기면 삭제됨)

- 데이터 작성&삭제 가능

- 반드시 이 RAM을 거쳐야함 사용가능함

(당연히 register와 cache 제외)

심지어 storage도 RAM을 거쳐야 data 전송 가능

RAM (Random Access Memory)

참고로 DRAM 이라고도 부르는데 같은 말!!!

헷갈릴 필요 없음

Dynamic RAM 이라는 뜻으로 DRAM 이라고도 부름

여기서 random이란 무작위라는 말이 아니라 자유자재로 아무데가 갈 수 있다는 뜻에서 random이라는 뜻!

random하지 않은 memory는 SAM (Sequential Access Memory)가 있음

순차 접근 메모리

ex. HDD

바로 이 RAM은 CPU와 HDD의 중간 단계인데 temporal locality (시간적 지역성),  spatial locality (공간적 지역성) 에 따라서 data를 HDD에서 data를 받아서 CPU로 옮김

참고로 시간적 지역성 (temporal locality)은 최근 접근된 data가 가까운 미래에 접근될 확률이 높다는 것이고 공간적 지역성 (spatial locality)은 최근 접근된 data 주변 data도 가까운 미래에 접근될 확률이 높다는 것

CPU와 HDD의 속도 차이를 보면 [0.4ns vs 1~10ms] 로 굉장히 큼

더 직관적으로 [1초 vs 1~9달] 로 상당히 크기 때문에 중간 단계인 cache memory, RAM, SSD 등그 간극을 매꿔줌

 

※ 16GB RAM 1개 vs 8GB RAM 2개

병렬로 일을 처리하는 것의 힘

한 번에 1짜리 일이 9개가 들어왔다고 하면

출처: 코딩하는거니
 

16GB RAM은 개당 2의 일을 할 수 있지만

1짜리 일이니까 2 cycle을 돌려야 함

출처: 코딩하는거니
 

반면 듀얼채널로 일을 하면 한 번만 해도 됨

하지만 main board에서 듀얼채널을 지원하는지 확인해봐야 함

(2) ROM

비 휘발성

읽기만 가능

반응형


4. storage (보조 기억장치)

우리가 흔히 보는 USB나 하드디스크가 보조기억장치의 대표격

비휘발성 기억장치, 오프라인 저장장치라고도 부르는데 이게 바로 특징!!

memory에 비해서 속도가 느림

그 종류에는 정말 많은 것들이 있음

hard disk drive (HDD), solid state drive (SSD), CD,  USB (universal serial Bus), SD카드,  flash memory 등등

이번엔 그 중에서 HDD, SSD, SD card, flash memory, USB

이렇게 4개에 대해서 알아볼 것


(1) HDD (hard disk drive)

플레터를 회전시키고  그 위에 헤드를 접근시켜 플레터 표면에 있는 자기 배열을 변경하는 식으로 데이터를 읽고 씀

SSD에 비해서 data가 안정적이라는 장점

HDD의 단점

ⓐ 너무 느림

ⓑ 충격에 약함

ⓒ 크고 무거움

ⓓ 병렬처리가 힘듦

(물리적 영향력 때문)

-> 이런 단점을 보완하기 위해서 SSD 활용

<참고> HDD data 삭제

컴퓨터에서 HDD data를 삭제한다고 삭제가 되지는 않음

예를 들어서 data가 없는 걸 0 이라고 하고, 있는 걸 1 이라고 하면, 컴퓨터에서 삭제를 하면 11(2)를 만들어서 사실상 2로 만듦

그러면 컴퓨터는 0으로 인지하게 됨

즉, 눈속임만 해놓은 것

이것이 삭제가 되려면 그 자리에 다른 data가 와야한다.

만약 그냥 지우고 싶다면??

wiper tool 을 이용하면 됨

(사실 이것도 확실하지는 않지만)

일반인 기준으로 완전히 data를 없애려면 망치로 때려 부숴서 버리는 수밖에 없음


(2) SSD (solid state drive)

보통 SSD하면 HDD보다 부팅이 빠른 저장장치 정도로 알고 있음

하지만 조금 더 비교해보면

HDD는 platter에 있는 정보를 header가 읽음

이와 다르게

SSD는 모든 것을 전자적 방식으로 진행

물리적 움직임 없음

그래서 solid state 라고 함. 물리적 움직임이 없으니까

이런 모든 것들이 HDD의 단점을 보완할 수 있는 점으로 주목을 받아 점차 시장이 확대되어 감

충격에도 강하고, 크기도 작고 가벼우며 병렬처리가 쉬움(물리적 영향 없기 때문)

지금 현재에는 사이즈는 점점 더 작아지고 가격은 HDD보다 저렴한 상태에까지 이름

심지어 HDD없이 SSD만 넣은 컴퓨터도 있고 노트북은 SSD 없는게 거의 없을 정도

출처: 코딩하는거니
 

왼쪽이 SSD, 오른쪽이 HDD

실제 비교를 해봐도 SSD속도가 훨씬 빠름

※ 어떻게 이것이 가능할까??

SSD는 기계적 장치없이 전기적으로 모든 것을 저장하는데 NAND flash memory 에 정보를 저장함!!!

NAND flash memory에 대해서 간단히 보면

flash memory는 반도체 칩 내부의 전자회로 형태에 따라서 직렬로 연결된 NAND flash memory 와 병렬로 연결된 NOR flash memory 로 구분함

NAND flash memory는 수직(직렬)으로 적기 때문에 좁은 면적에 많은 셀을 만들 수 있어 소형화, 대용량화라는 장점이 있음

SSD는  NAND flash memory, controller, DRAM 으로 구성되어 있음

NAND flash memory 는 저장

DRAM 은 CPU와 중간매개

controller 는 interface와 memory 사이의 data 교환을 제어

※ SSD의 단점

ⓐ bad block - 내구성의 한계

SSD는 여러 블럭으로 이루어져 있음

SSD는 수정을 할 때 한 block 안에서 새 data로 수정하는게 아니고 새로운 block에 data를 저장함

그리고 모든 block이 가득차면 GC (Garbage Collection)을 진행함

이 때, 1번 진행했다는 기록이 남음

안타깝게도 SSD는 block의 기대수명이 정해져있음

한 블럭이라도 기대수명이 끝나면 bad block이 되는 것!!!

그러면 그 SSD는 사용이 불가능해짐

물론 자연적으로 생기는 bad block도 있음

이걸 최대한 막기 위해서 SSD는 OP (Over Provisioning) 영역이라는 여유 공간이 존재

bad block이 생기면 그 여유공간의 주소로 바꿈

ⓑ 쓰기, 읽기 방해

자주 읽는 block들 옆 block에도 영향이 갈 수 있음

자동으로 data가 변형되는 문제가 발생

그래서 요즘은 너무 자주 사용하면 block 위치를 바꾸는 기능도 넣음

ⓒ Retention error

SSD를 너무 안 쓰면 cell에 있는 전자가 날아갈 수 있음

-> HDD는 물리적인 충격에는 약하지만 이런 걱정은 없음



(3) SD card

Secure DIgital card 의 약자인 SD card

안전한 디지털 메모리 정도로 생각하면 됨

flash memory 기반의 memory card

micro SD card

SD card

728x90
반응형