2018년 11월 23일
MMU (Memory Management Unit)
1. 메모리 주소 변환 장치, MMU
- MMU
(1) MMU(Memory Management Unit)의 개념
- CPU와 Cache 사이 불연속적 메모리 주소를 논리적 연속된 가상 주소로 맵핑하는 메모리 관리 장치
(2) MMU의 역할
| 주소 변환 | – 실제 메모리와 가상 메모리의 주소 변환 |
| 메모리 보호 | – 각 영역 간 읽기/쓰기 침범 차단 역할 |
2. MMU의 주요 기능 및 주소 변환 과정
(1) MMU의 주요 기능
| 주요 기능 | 설명 |
|---|---|
| 주소 변환 | – 가상메모리 주소를 물리 주소로 변환 |
| 특권 통제 | – 사용자 프로그램에서 커널 영역 침범 차단 |
| 캐시 통제 | – 캐시 가능 영역과 불가 영역 설정 |
| 읽기/쓰기 보호 | – Read / Write 불가 영역 생성 기능 |
| 메모리 보호 | – 각 프로세스 별 영역만 접근하도록 통제 |
(2) MMU 주소 변환 과정
| Memory Mapping 절차 | 절차 설명 |
|---|---|
![]() | ① MMU에 가상주소 전달 |
| ② Page Table 탐색 | |
| ③ 물리주소를 MMU에 전달 | |
| ④ 주소신호(RAS,CAS) 발생 | |
| ⑤ Data를 CPU에 전달 |
- TTB(Translation Table Base Address): Page Table 시작 위치 지시
- Cache 부재 시 MMU는 주소 변환 위해 두 번씩 메모리 Access, 시스템 전체 성능 저하 유발
3. MMU 기반 가상 주소 관리 효과
- 연속적 물리 주소가 아니어도 CPU는 연속적 주소로 인식하여 메모리 확장 효과
- 모든 프로세스마다 동일 주소 사용, CPU의 프로세스 관리 용이 및 구현 단순화
