


| CPU | OS | 주소 공간 | 사용 가능 메모리 |
|---|---|---|---|
| 32-bit | 32-bit | 2³² = 4 GB | 최대 4 GB |
| 64-bit | 32-bit | 2³² = 4 GB | 여전히 4 GB 제한 |
| 64-bit | 64-bit | 2⁶⁴ = 16 EB | 수 TB 이상 가능 |
그런데 주소공간(address space)와 물리적 메모리(physical memory) 도 다름:
| 구분 | 의미 | 실제로 존재함? | 예시 |
|---|---|---|---|
| 주소 공간 (Address space) | CPU나 OS가 “이론상 접근할 수 있는” 메모리 범위 (주소 표현 가능 범위) | ❌ 논리적 개념 | “난 0~2³²−1까지 주소를 가질 수 있어!” |
| 물리적 메모리 (Physical memory) | 컴퓨터 안에 실제로 꽂혀 있는 RAM | ✅ 실제 하드웨어 | “실제로는 8GB 램이 꽂혀 있음” |
| 시스템 | 주소 공간 | 실제 RAM |
|---|---|---|
| 32-bit OS | 4 GB 주소 공간 | 8 GB 램이 있어도 → 4 GB까지만 인식 |
| 64-bit OS | 16 EB 주소 공간 | 실제 RAM이 16 GB라면 → 16 GB까지만 사용 가능 |
| 64-bit OS + 8 GB RAM | 16 EB 주소 공간 중 → 8 GB만 실제 존재 |
즉 “주소 공간”(address space)은 가능한 범위, “물리적 메모리”는 실제로 존재하는 하드웨어 용량이다.
주소 공간은 넓을수록 좋지만, 실제 성능은 물리적 메모리의 크기에 달려 있다.
main memory is used for *composite data
*composite data: 여러 개의 기본 데이터 type이 합쳐져서 만들어진 복합 데이터
Ex. Arrays, structures, dynamic data
also not all variables can be stored in register since each size of register is 32 bits (or 8 bytes) in MIPS register.