메모리

메모리(Memory)는 컴퓨터에서 프로그램이 실행되는 동안 데이터와 명령어를 임시로 저장하고 접근할 수 있는 중요한 저장장치입니다.

일반적으로 휘발성(Volatile)이라는 특성을 가지며, 전원이 꺼지면 저장된 정보가 모두 사라집니다.

메모리는 속도, 용량, 위치에 따라 계층적으로 구성되며, 그중 메인 메모리(RAM)과 캐시 메모리(Cache Memory)가 가장 중요한 역할을 합니다.

임의 접근(Random Access)또는 직접 접근(Direct Access)이 가능합니다.

메인 메모리

메인 메모리(Main Memory)는 일반적으로 RAM(Random Access Memory)을 의미하며, 실행 중인 프로그램의 데이터와 명령어를 저장하는 역할을 합니다.

CPU는 프로그램을 실행할 때 필요한 데이터를 메인 메모리에서 불러와 처리합니다.

메인 메모리의 주요 특징은 다음과 같습니다.

  • 주소(Address) 기반 접근: CPU는 메모리 주소를 통해 원하는 데이터에 직접 접근할 수 있습니다.
  • 휘발성(Volatile): 전원이 차단되는 경우, 저장된 모든 정보가 소실됩니다.
  • CPU의 연산 속도에 비해 상대적으로 느리지만, 저장 용량이 크고, 비용이 낮습니다.

RAM의 주요 종류

DRAM(Dynamic RAM)

저장된 전하가 시간이 지나면 소멸하기 때문에 주기적으로 새로고침(Refresh)이 필요합니다.

비교적 소비 전력이 낮고, 저렴하며, 집적도가 높아 메모리를 대용량으로 설계하기에 용이합니다.

대표적으로 시스템 메모리(DDR, LPDDR), GPU VRAM(GDDR)등에 사용됩니다.

SRAM(Static RAM)

전원이 공급되는 동안 안정된 상태로 데이터가 유지되며, 새로고침이 불필요합니다.

DRAM과 비교해 속도는 빠르지만, 소비 전력이 크고 집적도가 낮으며 비쌉니다.

대용량으로 만들 필요 없지만 속도가 빨라야 하는 CPU 캐시(L1~L3), 임베디드 소형 버퍼 등에 사용됩니다.

SDRAM(Synchronous Dynamic RAM)

CPU 클럭 신호와 동기화되어 동작하며, DRAM보다 저송 효율이 높습니다.

DDR SDRAM(Double Data Rate SDRAM)

대역폭을 넓혀 속도를 빠르게 만든 SDRAM입니다.

DDR2 SDRAM은 DDR SDRAM보다 대역폭이 두 배 넓어지며, DDR3, DDR4, DDR5 등 세대별로 대역폭과 속도가 증가합니다.

캐시 메모리

캐시 메모리(Cache Memory)는 CPU가 메인 메모리보다 더 빠르게 데이터에 접근할 수 있도록 돕는 고속 보조 메모리입니다.
즉, CPU와 메인 메모리 간 속도 차이를 줄여 전체 성능을 향상시키는 역할을 합니다.

캐시 메모리는 주로 CPU 내부나 가까운 곳에 위치합니다.
자주 사용되거나 곧 사용될 가능성이 높은 데이터와 명령어를 임시로 저장합니다.
이를 통해 CPU는 메인 메모리에 직접 접근하는 시간을 줄이고, 프로그램 실행 속도를 크게 높일 수 있습니다.

주소 공간

프로그램이 실행될 때 CPU가 참조하는 주소와 실제 메모리(RAM) 상의 위치는 다를 수 있습니다.
이를 구분하기 위해 논리 주소(Logical Address)와 물리 주소(Physical Address) 개념이 사용됩니다.

  • 논리 주소
    • CPU가 프로그램 실행 중 생성하는 주소로, 사용자가 인식하는 가상 주소 공간입니다.
    • 각 프로세스는 독립적인 논리 주소 공간을 가지므로, 서로의 메모리에 침범하지 않도록 보호됩니다.
  • 물리 주소
    • 실제 메인 메모리(RAM)에 존재하는 물리적 위치를 나타내는 주소입니다.

주소 변환

논리 주소에서 물리 주소로의 변환은 메모리 관리 장치(MMU, Memory Management Unit)라는 하드웨어 장치가 담당합니다.
CPU와 메모리 사이에 위치하여 CPU가 이해하는 논리 주소를 메모리가 이해하는 물리 주소로 변환해줍니다.

운영체제는 이를 통해 메모리 보호, 가상 메모리, 페이징, 세그멘테이션 같은 기법을 구현합니다.

ComputerScience 카테고리 내 다른 글 보러가기

댓글남기기