
정의
- MMU는 프로세서와 관련된 모든 메모리 및 캐싱 작업을 처리하는 컴퓨터 하드웨어 구성 요소이다. 메모리 관리의 모든 측면을 담당한다.
- 일반적으로 컴퓨터의 중앙처리장치(CPU) 내에 위치하지만 때로는 별도의 통합 칩(IC - 집적회로)에서 작동하는 경우도 있다.
- 가상 메모리를 구현하려면 컴퓨터 시스템에 특수한 메모리 관리 하드웨어가 필요하다. 이 하드웨어는 흔히 MMU(Memory Management Unit)로 알려져 있다.
- MMU(메모리 관리 장치)는 가상 메모리 또는 기타 작업 의 추상화를 제공하기 위해 실제 메모리 주소를 다시 계산하는 CPU와 RAM 사이의 작은 장치이다 .
- 메모리 관리 장치는 페이징된 메모리 관리 장치라고도 한다.
- 모든 데이터 요청 입력은 MMU로 전송되며 MMU는 데이터를 RAM 또는 ROM 저장소에서 검색해야 하는지 여부를 결정한다.
- MMU가 없으면 CPU가 RAM 에 액세스할 때 실제 RAM 위치는 절대 변경되지 않는다. 메모리 주소 123은 항상 RAM 내의 동일한 물리적 위치이다.
- MMU는 논리적 메모리를 물리적 메모리 주소로 변환하고, 변환이 완료되고 액세스가 허용되는지 확인하는 작업을 담당한다.
- MMU는 하드웨어 메모리 관리, OS 메모리 관리, 애플리케이션 메모리 관리의 세 가지 주요 기능을 수행한다.
- 하드웨어 메모리 관리
- 시스템의 RAM 및 캐시 메모리 관리 및 규제
- OS 메모리 관리
- 애플리케이션 메모리 관리
- 프로그램 간에 메모리를 할당하고 최적화(종료된 작업에서 확보된 메모리 공간 재활용)
- 일반적으로 TLB 연관 캐시를 통해 가상 페이지 번호를 실제 페이지 번호로 변환한다.
- 프로그램이 실제 메모리에 없는 페이지의 위치를 참조하는 경우 OS에 인터럽트를 발생시킨다.
- 그 뒤 OS는 메모리에서 덜 사용되는 블록을 선택하고, 읽은 후 수정된 경우 백업 스토리지에 기록하고, 백업 스토리지에서 해당 블록으로 페이지를 읽어 MMU를 설정하여 매핑한다.
- 프로그램이 사용할 수 있도록 원래 요청한 페이지를 차단하는 역할도 한다.
역할
하드웨어 메모리 관리
- 프로세서의 랜덤 액세스 메모리(RAM) 및 캐시 메모리 사용을 감독 및 규제한다.
OS 메모리 관리
- 실행 중인 각 프로그램의 개체 및 데이터 구조에 적절한 메모리 리소스를 사용할 수 있도록 한다.