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