メモリ管理ユニット
メモリ管理ユニット (メモリかんりユニット、英: memory management unit、MMU) は、コンピュータのハードウェア部品のひとつであり、CPUの要求するメモリアクセスを処理する機構の事である。
PCIデバイスなどバスマスタとしてメモリにアクセスするデバイスやDMAを使用する場合、アーキテクチャ設計時にデバイスやDMAに対して物理アドレスと仮想アドレスのどちらを見せるかを選択しなければならない。後者を選択した場合はデバイスやDMAによるメモリアクセスもMMUによるアドレス変換の対象となり、MMUによって実現する仮想記憶機能のメリットおよびデメリットがデバイスやDMAに対してもほぼそのまま適用される。
例えば、デバイスの仕様上ページサイズよりも大きな連続したメモリが必要な場合、物理アドレスによるアクセスでは実際に連続した物理メモリの確保が必要だが、仮想アドレスによるアクセスであれば物理的にはバラバラなメモリをMMUにより連続したメモリとしてデバイスへ見せることができる。一方、デバイスによるメモリアクセスに起因するページフォルトが発生した場合は、OSが処理する必要がある。