운영체제
메모리
탁재민
2024. 3. 27. 22:20
메모리 계층 구조
- 레지스터 (Registers)
- CPU 내부에 위치해 가장 빠른 데이터 접근 속도 제공
- 매우 제한된 용량으로 실행 중인 명령어 데이터를 임시 저장하는 용도
- 캐시 메모리 (Cache Memory)
- 메인 메모리와 CPU간의 데이터 속도 향상을 위한 중간 버퍼 역할을 하는 메모리
- 지역성을 이용해 메인 메모리의 데이터를 임시로 저장하여 속도 최적화
- 시간 지역성 (Temporal Locality): 한 번 접근된 데이터는 가까운 미래에 다시 접근될 가능성이 높음
- 공간 지역성 (Spatial Locality): 메모리의 특정 영역에 접근한 후, 그 인접 영역에도 접근될 가능성이 높음
- 메인 메모리 (Main Memory)
- CPU가 직접 접근 가능한 현재 처리중인 데이터나 명령만을 일시적으로 저장하는 휘발성 메모리
- 프로세스가 실행되려면 프로그램이 메모리에 올라와야 함
- 보조 메모리 (Secondary Storage)
- 하드 드라이브, SSD 등의 비휘발성 저장 장치
- 속도 느림, 큰 용량
가상 주소와 가상 메모리
- 가상 메모리 (Virtual Memory)
- 물리적 메모리보다 큰 메모리 공간을 프로세스에 제공하는 기술
- 메인 메모리와 보조 메모리 묶어 하나의 메모리처럼 사용
- 가상의 주소를 사용해 논리적인 연속성 제공
- 메모리 관리로 인한 오버헤드 발생
- 가상 주소 (Virtual Address)
- 가상 메모리와는 다른 개념
- 운영 체제가 프로세스에 제공하는 주소 공간. 실제 물리적 메모리 주소와는 독립적
- 각 프로세스는 자신만의 독립된 가상 주소 공간을 가짐으로써, 다른 프로세스와 메모리를 격리
- MMU (Memory Management Unit)
- 가상 주소를 물리적 주소로 변환하는 하드웨어 장치
- 메모리 보호, 캐싱 관리