본문 바로가기

Computer Science/컴퓨터 구조

컴퓨터 메모리 (Memory)

메모리는 컴퓨터 시스템에서 데이터와 프로그램 명령어를 저장하는 장치입니다. 넓게는 하드디스크(HDD/SSD) 같은 저장 장치까지 포함하지만, 좁게는 CPU가 직접 접근하여 데이터를 처리하는 **주기억 장치(RAM)**를 주로 의미합니다.


1. 메모리의 핵심 기능

메모리는 CPU가 빠르고 효율적으로 작업할 수 있도록 다음과 같은 역할을 합니다.

  1. 명령어 저장: 현재 실행 중인 프로그램의 코드를 저장하여 CPU가 가져가 실행할 수 있도록 합니다.
  2. 데이터 저장: 프로그램이 실행되는 동안 사용되는 입력 데이터, 중간 결과, 최종 결과 등을 임시로 저장합니다.
  3. 주소 지정: 메모리 공간의 모든 위치는 고유한 **주소(Address)**를 가지며, CPU는 이 주소를 통해 원하는 데이터에 접근합니다.

2.  주 메모리 (Main Memory)의 종류

CPU와 직접 통신하며 프로그램 실행에 필수적인 메모리입니다.

A. RAM (Random Access Memory)

  • 특징: 데이터를 자유롭게 읽고 쓸 수 있으며, CPU가 메모리의 어느 위치(주소)든 동일한 속도로 접근할 수 있습니다.
  • 휘발성: 전원 공급이 끊기면 저장된 내용이 모두 사라집니다.
  • 주요 종류:
    • DRAM (Dynamic RAM): 우리가 일반적으로 'RAM'이라고 부르는 것으로, 컴퓨터의 주기억 장치로 사용됩니다. 구조가 간단하지만 전하가 방전되기 때문에 주기적인 **재충전(Refresh)**이 필요합니다.
    • SRAM (Static RAM): 재충전이 필요 없어 DRAM보다 훨씬 빠르지만, 구조가 복잡하고 비싸서 주로 CPU 내부의 캐시 메모리로 사용됩니다.

B. ROM (Read Only Memory)

  • 특징: 데이터를 주로 읽기만 할 수 있으며, 쓰기가 어렵거나 불가능합니다.
  • 비휘발성: 전원 공급이 끊겨도 저장된 내용이 유지됩니다.
  • 주요 용도: 컴퓨터를 부팅하는 데 필요한 BIOS/UEFI 같은 기본 시스템 소프트웨어를 저장하는 데 사용됩니다.

3. 메모리 계층 구조 (Memory Hierarchy)

컴퓨터는 속도, 용량, 가격의 상충 관계를 해결하기 위해 여러 종류의 저장 장치를 계층적으로 사용합니다.

계층 장치 특징 CPU와의 거리
최상위 레지스터 (CPU 내부) 가장 빠르고, 가장 비싸고, 용량 가장 작음 가장 가까움
상위 캐시 메모리 (L1, L2, L3) RAM과 CPU 속도 차이 완화 가까움
중간 주기억 장치 (RAM) 주 작업 공간, 휘발성 중간
하위 보조 기억 장치 (SSD, HDD) 가장 느리고, 가장 저렴하고, 용량 가장 큼 가장 멈

4.  가상 메모리 (Virtual Memory)

  • 개념: 실제 물리 메모리(RAM)의 크기와 상관없이 모든 프로세스에 충분하고 독립적인 메모리 공간을 제공하는 기술입니다.
  • 원리: 실제 메모리가 부족하면, 당장 사용하지 않는 데이터를 하드디스크의 **스와핑 공간(Swap Space)**으로 옮겨 놓습니다. 이 기법을 통해 마치 실제 메모리가 확장된 것처럼 보이게 합니다.
  • 장점: 멀티태스킹 효율 증대, 메모리 관리 용이, 메모리 보호.