나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2024-03-03 19:25:00

기억장치


파일:하위 문서 아이콘.svg   하위 문서: 기억장치/표기 용량과 실제
,
,
,
,
,
#!wiki style="display: inline; display: none;"
, }}}
||<tablealign=center><tablewidth=100%><tablebordercolor=#333,#ccc><tablebgcolor=#fff,#1c1d1f><bgcolor=#ffd,#300> 🖥️ 컴퓨터 부품 및 주변 기기 ||
{{{#!wiki style="margin:0 -10px -5px; min-height:calc(1.5em + 5px);"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -6px -1px -11px"
<colbgcolor=#ffd,#300>PC 주요 부품
<rowcolor=#333>프로세서CPU · GPU · 레지스터 · 캐시 메모리
기억장치주기억장치 : ROM · RAM (VRAM)
보조기억장치: SSD · HDD · 플로피 디스크 · 자기테이프 · ODD · 외장 하드 · CD
'''메인보드 · 전원부 ·
#!wiki
쿨러/튜닝
'''
메인보드 · 쿨러 · 파워서플라이 · 케이스
PC 주변기기
보안TPM · 스마트카드
네트워크 · 입출력휴먼 인터페이스 장치: 키보드 · 모니터 · 마우스 · 사운드카드
입출력 장치: TV 수신 카드 · 프린터 · 네트워크 카드 · 캡처보드 · USB · 케이블
}}}}}}}}} ||

컴퓨터 메모리
{{{#!wiki style="margin:0 -10px -5px;min-height:25px;"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin:-6px -1px -11px;"
휘발성 메모리
<colbgcolor=#E0E0E0,#222> RAM DRAM · SRAM
개발중 T-RAM · Z-RAM
비휘발성 메모리
ROM Mask ROM · PROM · EPROM · EEPROM
플래시 메모리 메모리 카드 · SSD · eMMC · UFS · USB 드라이브
NVRAM nvSRAM · FeRAM · MRAM · PRAM(옵테인 메모리)
기계식 자기테이프 · 플로피 디스크 · ZIP 드라이브 · 하드 디스크 · 광학 디스크
개발중 CBRAM · SONOS · RPAM · Racetrack Memory · NRAM · Millipede Memory · FJG}}}}}}}}}

1. 개요2. 역사3. 컴퓨터의 메모리
3.1. CPU와 메모리간의 접근성에 따른 분류3.2. 용도
4. 분류
4.1. 반도체4.2. 자기장(Magnetic)을 이용한 방식4.3. 광학(Optical) 방식4.4. 지연선(Delay Line) 방식ⓋⒶ★→
4.4.1. 음향(Acoustic Delay Line) 방식
4.5. 음반(레코드판)Ⓐ→
5. 기억장치의 성능
5.1. 용량(Storage Capacity)5.2. 접근 시간(Access Time)5.3. 데이터 전송률(Data Transfer Rate)
6. 기타

1. 개요

/ Memory, Computer data storage

기억장치전자 회로에서 데이터나 상태, 명령어 등을 기록하는 장치를 말하며, 흔히 '메모리'라고도 한다. 저장장치란 말도 쓰이나 이 경우는 주로 보조기억장치를 뜻하는 경우가 많다.

컴퓨터전자기기에서 사용하는 기억장치를 사용용도에 따라 가장 큰 범주로 나누어 구분하자면, 하드디스크 드라이브나 플래시 메모리 같이 장기저장을 위해 사용하는 기억장치와 회로 내에서 짧은 시간 동안 상태를 저장하는 용도로 사용되는 기억장치로 구분할 수 있다. 후자의 경우 회로와 동기화되어 작동하기에 속도는 매우 빠르지만, 값이 비싸고 보통 휘발성인 경우가 많다.

후자의 경우 디지털 회로에서는 순서논리회로를 만들기 위해서 사용한다. 순서논리회로는 내부 상태를 가지는 논리회로로 내장된 기억장치가 내부 상태를 저장한다. 예를 들면 CPU레지스터가 있다.

아날로그 회로에서는 신호를 지연시키기 위해 사용하는 경우가 많다. PAL이나 SECAM 디코더나 아날로그 음향기기 중 에코, 리버브, 딜레이 프로세서에는 전부 기억장치가 들어 있다.

장기저장을 위한 기억장치는 보통 값이 싸고 많은 용량을 담을 수 있는 자기테이프, 하드 디스크 드라이브, 플래시 메모리 등을 사용한다. 이들은 비휘발성 메모리인 경우가 많다.[1]

2. 역사

3. 컴퓨터의 메모리

컴퓨터에서 널리 사용되며, 큰 틀에서 설명하면, CPU계산을 담당하고, 메모리는 기억을 담당한다. 공장비유를 하자면 CPU는 일꾼이고, 메모리는 작업장이며, 보조기억장치는 창고라 할 수 있겠다. 작업장의 크기가 곧 메모리의 크기로, 작업장이 클수록 창고에서 물건을 많이 가져다 놓고 일할수 있게 된다. 어디까지나 쉽게 설명하기 위한 비유이므로 자세한 것은 아래 항목을 참고하자.

CPU에서 계산한 결과가 메모리에 저장이 되는 것이다. 하드디스크 같은 보조기억장치에 저장되는 것이 아니다. 그러니까 컴퓨터가 켜지면서부터 프로그램이 실행되면 그것들은 몽땅 메모리에 올라오게 된다. 이때문에 메모리의 크기가 중요하지만 옛날엔 이 메모리의 가격이 비쌌기 때문에 메모리를 절약하기 위해 페이지니 스와핑이니 하는 온갖 방법이 탄생했다. 또한 이 메모리에도 용도별로 여러 종류가 존재하며 가격에 따라 그 크기와 용도가 결정되기도 한다. 2010년대 들어 메모리 반도체의 가격이 떨어지게 되면서 과거에 비해 메모리의 중요성이 약화되었다.

3.1. CPU와 메모리간의 접근성에 따른 분류

CPU에 가까운 순서대로 레지스터(CPU) - (캐시 메모리) - 주 기억 장치 - (캐시 메모리) - 보조 기억 장치로 나눌 수 있다. 일반적으로 용량이 작을수록 동작속도가 빠르며, 용량이 클수록 동작속도가 느리다. 반면 속도가 빠를수록 용량 대비 가격이 비싸지고, 느릴수록 싸진다. 즉, 빠른 속도가 요구되지만 많은 용량이 필요하지 않은 CPU내의 레지스터에는 고속, 고가의 기억장치를 사용하게 되고, 대용량의 자료를 영구적으로 보관하기 위해서는 저속, 저가, 대용량의 기억장치를 사용하게 된다.
간단히 레지스터에 있는 데이터를 읽는 것은 머릿속에 있는 기억을 떠올리는 행동으로, 주기억장치에 있는 데이터를 읽는 것은 책장에 꽂혀 있는 책에서 특정한 책을 찾아 내용을 읽는 행동으로, 보조기억장치에 있는 데이터를 읽는 것은 지구를 한 바퀴 돌아서 특정한 내용을 찾아오는 것으로 비유하곤 한다.

저장 비트당의 가격과 용량, 그리고 속도에 따라 계층을 구분하면 피라미드형 구조를 이루게 된다. 더 자세한 내용은 메모리 계층 구조 참조.
레지스터
캐시 메모리
주 기억 장치
버퍼(디스크 캐시)
보조 기억 장치

3.2. 용도

용도에 따라 기억장치는 여러 계층으로 구성할 수 있다. 다만 램디스크를 보면 알겠지만, 기술의 발전 및 대세 기억장치들의 발전사에 따라 이름을 붙이다 보니 이름과 실제가 다른 것들이 굉장히 많다. 아울러 영어로 쓰여 있지만, 영미권에서 쓰지 않는 콩글리시도 많다.

4. 분류

4.1. 반도체

4.2. 자기장(Magnetic)을 이용한 방식

저장 매체(Media) 위에 자기장에 반응하는 물질을 발라두고 헤드(Head)를 이용해 특정 위치의 값을 읽어오는 장치.
* 자기코어 기억장치: 자기코어(Magnetic Core)는 페라이트(Ferrite) 자성 물질을 작은 고리 모양으로 만든 링에 도체를 끼운 후, 도체에 흐르는 전류의 방향에 따라 데이터를 기억시키거나 읽을 수 있는 기억장치이다. 자기코어는 초창기의 컴퓨터에 사용된 기억장치로 현재에는 사용되지 않고 있다. 하나의 자기코어에는 오직 하나의 상태, 즉 1비트의 데이터가 기억된다. 따라서 원하는 크기의 기억 용량을 갖도록 하기 위해서는 많은 개수의 자기코어가 필요하다. 또한 속도가 매우 느린 기억장치이다. 자기코어는 한번 자화되면 전원이 끊어져도 해당 상태를 유지하기 때문에 비휘발성 메모리이다. 자기코어에서 데이터를 읽어낸 후에는 저장된 데이터가 사라지게 된다. 따라서 계속 데이터를 유지하기 위해서는 읽어낸 후에 다시 데이터를 저장시키기 위한 방법이 필요하다. 요즘에는 쓰기는 커녕 보기도 힘든 물건이지만 교과서에는 나온다.
* 기록방법: 자기코어에는 1과 0의 두 가지 상태 중의 하나를 기억시킬 수 있다. 즉, 다음 그림과 같이 전류가 흐르는 방향에 따라 1이나 0의 상태를 갖게 된다.
* 읽기방법: 자기코어에 기억된 내용을 읽을 때에는 자기코어에 0을 기억시킬 때와 같은 방향으로 전류를 흐르게 한 후에 읽기 위한 선에 전류가 흐르게 되면 1, 흐르지 않으면 0으로 판단한다.
* 아폴로 우주선의 컴퓨터에는 이 자기코어 메모리 장치가 사용되었다. 수작업으로 만드는 수공업품이며, 현대의 메모리처럼 모듈식으로 제작되었지만 부피는 상당히 크다. 자기코어 메모리를 제작하려면 자석을 정렬시킨 후 전선을 고리에 꿰는 작업이 필요해서, 수KB 분량의 메모리를 제작하는데는 주 단위의 시간이 걸렸다.

4.3. 광학(Optical) 방식

4.4. 지연선(Delay Line) 방식ⓋⒶ★→

신호를 신호 전달 속도가 회로의 전기신호보다 느린 매질(음파 등)을 통과시켜 지연을 발생시키는 방식으로 저장한다.

4.4.1. 음향(Acoustic Delay Line) 방식

파일:analogdelayline.jpg
아날로그 PAL TV에서 쓰이던 초음파 방식 딜레이. 압전소자를 통해 전기신호를 음파로 변환시키고, 음파가 매질을 통과하면서 지연이 발생한 신호를 다시 변환기를 통해 전기신호로 변환한다.

음파의 진행 속도가 전자파의 진행 속도보다 느리다는 것을 이용하여 신호를 음파의 형태로 변환하여 지연을 발생시킨다. 이 신호를 녹음하고 다시 재생하는 것을 반복하면서 계속 순환시키는 방식으로 정보를 저장한다. 과거에는 컴퓨터에 사용했으며 컴퓨터 이외에도 디지털 신호처리 방식 튜너가 보급되기 전 PAL이나 SECAM 수신기에서 신호처리 용도로 사용하기도 했다.

4.5. 음반(레코드판)Ⓐ→

원판 위의 트랙에 물리적인 홈을 파고 픽업이 그 위를 주행하면서 전기신호를 재생하는 방식이다. 이것도 초창기에는 미디 시퀀싱을 위한 디지털 기록을 저장하는 데 잠시 쓰였던 적이 있기는 하다.[6] 다만 이미 LP보다 성능이 뛰어난 기억장치들이 널리 쓰이던 시대였기 때문에 이것이 많이 쓰이지는 않았을 것이다.[7]

5. 기억장치의 성능

기억장치의 성능은 기억장치의 용량, 접근 시간, 데이터 전송률 등으로 평가할 수 있다.

그 밖에 중요한 것으로는 기록 밀도가 있고, 아날로그 저장장치라면 S/N 비율과 와우 앤 플러터 등이 있다.

5.1. 용량(Storage Capacity)

큰 용량을 나타낼 때에는 SI 접두어에서 따온 단위를 앞에 붙인다.


||<-4><tablealign=center><tablebgcolor=#fff,#191919><table width=500><bgcolor=#cccccc,#555555> 컴퓨터의 정보 단위 - 십진 접두어 ||
[math(\small 2^{-3})]
비트
Bit (b)
[math(\small 1)]
바이트
Byte (B)
[math(\small 10^{3})]
킬로바이트
Kilobyte (KB)
[math(\small 10^{6})]
메가바이트
Megabyte (MB)
[math(\small 10^{9})]
기가바이트
Gigabyte (GB)
[math(\small 10^{12})]
테라바이트
Terabyte (TB)
[math(\small 10^{15})]
페타바이트
Petabyte (PB)
[math(\small 10^{18})]
엑사바이트
Exabyte (EB)
[math(\small 10^{21})]
제타바이트
Zettabyte (ZB)
[math(\small 10^{24})]
요타바이트
Yottabyte (YB)
[math(\small 10^{27})]
론나바이트
Ronnabyte (RB)
[math(\small 10^{30})]
퀘타바이트
Quettabyte (QB)
{{{#!wiki style="margin:0 -10px -5px; min-height:calc(1.5em + 5px)"
{{{#!folding [이진 접두어 펼치기 · 접기]
{{{#!wiki style="margin:-5px -1px -11px"
이진 접두어
[math(\small 2^{10})]
키비바이트
Kibibyte (KiB)
[math(\small 2^{20})]
메비바이트
Mebibyte (MiB)
[math(\small 2^{30})]
기비바이트
Gibibyte (GiB)
[math(\small 2^{40})]
테비바이트
Tebibyte (TiB)
[math(\small 2^{50})]
페비바이트
Pebibyte (PiB)
[math(\small 2^{60})]
엑스비바이트
Exbibyte (EiB)
[math(\small 2^{70})]
제비바이트
Zebibyte (ZiB)
[math(\small 2^{80})]
요비바이트
Yobibyte (YiB)
[math(\small 2^{90})]
로비바이트
Robibyte (RiB)
[math(\small 2^{100})]
퀘비바이트
Quebibyte (QiB)
취소선: 공식적으로 제정된 바 없는 가칭. }}}}}}}}}
우상단 숫자는 바이트를 기준으로 한 상대값이다.


1 bit(비트) = 가장 작은 용량 단위
1 byte(바이트) = 8 bits
1 kB(킬로바이트) = 2의 10제곱 bytes = 1024 bytes
1 MB(메가바이트) = 2의 20제곱 bytes = 1024 kB
1 GB(기가바이트) = 2의 30제곱 bytes = 1024 MB
1 TB(테라바이트) = 2의 40제곱 bytes = 1024 GB
1 PB(페타바이트) = 2의 50제곱 bytes = 1024 TB
1 EB(엑사바이트) = 2의 60제곱 bytes = 1024 PB
1 ZB(제타바이트) = 2의 70제곱 bytes = 1024 EB
1 YB(요타바이트) = 2의 80제곱 bytes = 1024 ZB
1 RB(론나바이트) = 2의 90제곱 bytes = 1024 YB
1 QB(퀘타바이트) = 2의 100제곱 bytes = 1024 RB

컴퓨터의 기억장치는 주기억장치, 즉 RAM의 용량이 커질수록 컴퓨터의 연산 속도가 빨라질 수 있다. 그러나 경제적인 면이나 효율적인 면을 고려하여 적절한 용량을 선택하는 것이 좋다.

기억장치 용량이 시간이 지날수록 증가하면서 각종 문제들이 발생하기도 한다.
여담으로, 2017년에 전 세계의 모든 인터넷 정보를 다 모으면 44 ZB가 된다고 한다.

5.2. 접근 시간(Access Time)

접근 시간은 기억장치에 기억되어 있는 데이터를 읽거나 기억장치에 데이터를 기록하는데 소요되는 시간을 말한다,
램의 접근 시간은 기억시킬 메모리의 주소를 메모리 주소 레지스터(MAR)에 전달한 후, 메모리 버퍼 레지스터(MBR)에서 기억시킬 데이터를 수신할 때까지 걸리는 시간을 의미한다.

5.3. 데이터 전송률(Data Transfer Rate)

데이터 전송률은 기억장치에서 1초 동안에 전송될 수 있는 최대 정보량을 의미하는 것으로 대역폭(Bandwidth)이라고도 한다. 데이터 전송률의 단위는 초당 비트(bps)[8] 또는 초당 워드(Word/S)이다. USBSATA의 규격을 볼 때 Gbps라는 표기를 봤을 것이다.

6. 기타



[1] 반도체 기반 메모리가 아닌 이상(반도체 기반 메모리의 경우 비휘발성이더라도 미세하게 데이터가 날아가는 물건도 있다. 오래 방치하면 데이터가 못 쓰게 되어 버리는 경우도 있다.)수십년동안 전원공급을 하지 않아도 데이터가 날아가지 않는다.[2] 시스템의 비트를 따라간다. 즉, 32비트 시스템이라면 32비트 정수, 64비트 시스템이라면 64비트 정수.[3] 이는 CPU의 작동 단계인 Fetch-Decode-Execute-Write Back(Store)와 일치한다.[4] 정확히 따지면 초창기인 2000~2001년 사이에는 인텔이 매우 비싼 가격의 RDRAM으로 밀어주는 바람에 DDR SDRAM을 사용할 수 있는 메인보드가 많지 않았고, 설령 찾았더라도 당시 DDR SDRAM이 기존 SDRAM보다 더 비싼 가격을 헝성하는 등 접근성이 중요한 일반 사용자 입장으로썬 매리트가 떨어졌기 때문에 여전히 SDRAM을 지칭하는 경우가 더 많았다. 인텔이 RDRAM을 포기하고 펜티엄 4 노스우드 세대인 2002년이 되어서야 DDR SDRAM으로 정착되었다.[5] 하드 디스크 드라이브는 온전한 Random Access가 아니므로 여기서 빠진다.[6] https://en.m.wikipedia.org/wiki/Vinyl_data[7] 임의접근 완전불가, 낮은 기록밀도와 높은 노이즈, 읽기 전용, 쓰기의 불편함 등 기억장치로는 최악의 성능을 가지고 있어서 굳이 이걸 쓸 이유도 없었다.[8] 1바이트는 8비트이므로, 초당 바이트로 환산하려면 8로 나눠야 한다.


파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는
문서의 r47
, 2번 문단
에서 가져왔습니다. 이전 역사 보러 가기
파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
[ 펼치기 · 접기 ]
문서의 r47 (이전 역사)
문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

분류