yeonseong

MMU 본문

정보관리기술사

MMU

yeonseong.dev 2025. 10. 5. 14:57

MMU(Memory Management Unit, 메모리 관리 장치)는 운영체제와 컴퓨터 시스템의 효율적 메모리 관리 및 가상 메모리 구현을 담당하는 핵심 하드웨어 모듈로, 정보처리기술사에서 반드시 숙지해야 할 필수 구조입니다
MMU의 도입 목적은 제한된 물리적 메모리를 효율적으로 활용하고, 프로그램 간 메모리 보호와 멀티태스킹 환경 지원을 통해 시스템 안정성 및 성능을 극대화하는 것에 있습니다.

MMU의 원리 및 배치


MMU는 CPU와 메모리(RAM) 사이에 위치하여, CPU가 요청하는 모든 메모리 주소(가상 주소)를 실제 RAM 내의 물리 주소로 변환하는 역할을 합니다. 프로세스마다 독립적인 메모리 공간을 제공하고, 각 프로세스가 할당된 영역만 접근할 수 있게 함으로써 메모리 보호 기능을 제공합니다[1][2]. MMU는 페이지 테이블(Page Table)을 기반으로 주소 매핑 정보를 관리하며, 주소 변환의 속도를 높이기 위해 TLB(Translation Lookaside Buffer, 주소변환 캐시)를 활용합니다[5].

주요 기능


- **주소 변환(Address Translation)**: 가상 주소를 물리 주소로 동적으로 변환하여, 프로그램별로 연속적이고 독립적인 메모리 공간을 할당받게 지원합니다[1][2].
- **메모리 보호(Memory Protection)**: 각 프로세스 또는 사용자/커널 영역을 구분해 침범 방지 및 데이터 오염 차단[2].
- **페이징 및 세그먼테이션(Paging, Segmentation)**: 메모리를 페이지 또는 세그먼트 단위로 관리해 단편화 감소 및 메모리 활용 최적화[4].
- **캐시 관리(Cache Management)**: MMU는 캐시 가능 또는 불가 영역을 구분하고, 주소 변환 속도를 높이기 위한 TLB 관리도 담당합니다[1][2].
- **특권 통제 및 접근 제어**: 사용자 프로세스의 커널 영역 접근과 불법적 읽기/쓰기를 차단함으로써 시스템 보안 강화[2][5].

동작 과정


1. CPU가 가상 주소를 요청
2. MMU가 페이지 테이블/세그먼트 테이블을 참조하여 대응하는 물리 주소 찾기
3. 최근 변환 정보를 TLB에서 우선 조회(캐시 미스 시 테이블 접근)
4. 변환된 물리 주소를 통해 실제 데이터 읽기/쓰기 수행

예를 들어, 가상 주소 0xABCD1234 요청 시 MMU는 페이지 테이블을 참조해 해당 주소를 물리 주소(예: 0x01F45100)로 변환하고, 변환 정보는 TLB에 저장해 추후 변환시 빠르게 대응함[1][5].

시스템적 의의 및 최신 동향


MMU는 물리적으로 연속되지 않은 메모리도 논리적 연속 주소로 매핑해, CPU가 연속적 메모리처럼 인식하게 하며, 프로세스 간 독립성과 운영체제의 메모리 관리 복잡도를 크게 낮춥니다[2][3]. 현대 시스템에서는 ARM, x86 등 거의 모든 프로세서에 MMU가 내장되어 있으며, 가상화·멀티코어·컨테이너 환경 하에서 그 활용도가 높아지고 있습니다[5]. 최근에는 MMU가 메모리 접근 속도 및 TLB 효율 최적화, 하드웨어 보안(메모리 암호화·스택 보호 등)과도 연계되어 발전하고 있습니다[2][1].

정리


MMU는 프로세서와 메모리 사이 주소 변환, 메모리 보호, 접근 제어 등 시스템 신뢰성·성능·보안을 직접적으로 좌우하는 구조이며, 페이징/세그먼테이션, TLB활용, 캐시 관리 등 OS 및 시스템아키텍처 설계의 본질적 요소입니다. 시스템 엔지니어는 MMU의 메커니즘과 내부 동작, 구현 원리, 그리고 운영체제와의 상호작용을 포함해 숙련된 이해와 실무 적용 역량이 필요합니다[1][2][5][4][3].

인용:

[1] MMU (Memory Management Unit) - ITPE * JackerLab https://itpe.jackerlab.com/entry/MMU-Memory-Management-Unit
[2] MMU (Memory Management Unit) < 도리의 디지털라이프 https://blog.skby.net/mmu-memory-management-unit/
[3] 내 컴퓨터 메모리는 '진짜'가 아닐 수도 있다? – MMU와 가상 ... https://geumjulee.tistory.com/89
[4] 메모리 관리 및 주소 변환 (MMU) - 제리코드르렁 - 티스토리 https://jerrycodezzz.tistory.com/95
[5] [Arm프로세서] MMU 란 https://austindhkim.tistory.com/564
[6] 기술사과정 MMU, 메모리관리장치, Memory Management Unit https://www.youtube.com/watch?v=_9YQReuhAv8
[7] MMU Memory Management Unit 메모리 관리 장치 http://www.ktword.co.kr/test/view/view.php?no=2664
[8] 문서뷰어 https://www.mmu.ac.kr/main/board/304/fileview/84373/55351
[9] MMU(Memory management unit) 가상메모리, 물리메모리 변환 ... https://cyber0946.tistory.com/51
[10] 2017년도 각 부처 주관 국가공무원 경력경쟁채용시험 연간 ... https://www.mpm.go.kr/board/file/bbs_0000000000000020/1046/FILE_000000000019498/1062ab259e9a423fc;jsessionid=z-m+ar7fwiT5myq3jCrYRGYn.node05
[11] [기출] 제135회 컴퓨터시스템응용기술사 - ITPE - 티스토리 https://itpewiki.tistory.com/4719
[12] MMU (Memory Management Unit)의 역할 - nyambu 님의 블로그 https://nyambu.co.kr/15
[13] 문서뷰어 https://www.mmu.ac.kr/main/board/301/fileview/68029/40099
[14] [정보처리기사] 응용체제 핵심 기능 / 코딩으로 티스토리 작성하기 https://warn-code.tistory.com/entry/%EC%A0%95%EB%B3%B4%EC%B2%98%EB%A6%AC%EA%B8%B0%EC%82%AC-%EC%9D%91%EC%9A%A9%EC%B2%B4%EC%A0%9C-%ED%95%B5%EC%8B%AC-%EA%B8%B0%EB%8A%A5-%EC%BD%94%EB%94%A9%EC%9C%BC%EB%A1%9C-%ED%8B%B0%EC%8A%A4%ED%86%A0%EB%A6%AC-%EC%9E%91%EC%84%B1%ED%95%98%EA%B8%B0
[15] 메모리 관리 장치 - 위키피디아 https://translate.google.com/translate?u=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FMemory_management_unit&hl=ko&sl=en&tl=ko&client=srp
[16] Mobile 임베디드 시스템의 CPU 소모전력 관리 기법 https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE02252962
[17] ARM 메모리 관리기법 분석 - semtax의 개발 일지 https://semtax.tistory.com/67
[18] [Computer Science][Operating System] 🧠 메인 메모리와 MMU https://velog.io/@ouk/Computer-ScienceOperating-System-%EB%A9%94%EC%9D%B8-%EB%A9%94%EB%AA%A8%EB%A6%AC%EC%99%80-MMU-%EC%BB%B4%ED%93%A8%ED%84%B0-%EB%A9%94%EB%AA%A8%EB%A6%AC%EC%9D%98-%ED%95%B5%EC%8B%AC-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0
[19] 서·울·과·학·기·술·대·학·교 https://www.seoultech.ac.kr/storage/www/ckfinder/files/2AE6EDA2D26A4E599C5FF62C75455394.pdf
[20] MMU가 없는 Thread기반 운영체제에서 스택 보호를 위한 ... https://os.korea.ac.kr/papers/domestic_confer/yrlee_kiise_2006.pdf

BIG

'정보관리기술사' 카테고리의 다른 글

PIM (Processing In Memory)  (0) 2025.10.26
HBM  (0) 2025.10.12
메모리 병목현상 최소화 방안  (0) 2025.09.28
Cache Flush, Cache Clean, Cache Invalidate  (0) 2025.09.14
캐시 메모리와 가상 메모리 비교  (0) 2025.09.07