Difference between MMU and MPU

Computer EngineeringComputer NetworkMCA

MMU and MPU are memory management hardwares used by CPU. The set of all logical addresses generated by a program is referred to as a logical address space. The set of all physical addresses corresponding to these logical addresses is referred to as a physical address space. The user program deals with virtual addresses; it never sees the real physical addresses.

MMU − Memory Management Unit

MMU − Memory Management Unit, is used for virtual memory and memory protection operations.

The runtime mapping from virtual to physical address is done by the memory management unit (MMU) which is a hardware device. MMU uses following mechanism to convert virtual address to physical address.

The value in the base register is added to every address generated by a user process, which is treated as offset at the time it is sent to memory. For example, if the base register value is 10000, then an attempt by the user to use address location 100 will be dynamically reallocated to location 10100.

MPU − Memory Protection Unit

MPU − Memory Protection Unit, is used for memory protection only. It is generally part of CPU and it provides memory protection only. It is usually implemented in low power processors where MMU, Memory Management Unit, features like virtual memory management are not needed and only memory protection is required.


Following are the important differences between MMU and MPU.

Sr.No. Key MMU MPU
1 Definition MMU stands for Memory Management Unit. MPU stands for Memory Protection Unit.
2 Primary Operation MMU is used for multiple memory related operations like Virtual Memory, translation of virtual address to physical address and memory protection. MPU is used for memory protection only.
3 Usage Processors running high end Operating systems like Windows, Linux, Android use MMU. Such processors are called App Processors. Processors running RTOS operations like ThreadX use MPU. Such processors are called baseband processors and are useful where 3G/4G protocols are running.
Updated on 19-Aug-2022 12:26:45