メモリ管理ユニット(MMU)とは?ゆるーくわかりやすく解説

はるか
はるか
メモリ管理ユニット(MMU)の話をする。
ふゅか
ふゅか
MMUって、コンピュータのメモリをうまく使うための超重要な仕組みよね!

1. メモリ管理ユニット(MMU)

メモリ管理ユニット(MMU: Memory Management Unit)は、コンピュータに内蔵される重要なハードウェアです。その主な役割は、コンピュータが主記憶装置(メモリ)を効率的に利用できるように管理することです。

2. MMUの主な役割

2.1. アドレス変換(仮想アドレス→物理アドレス)

仮想記憶方式で扱う「仮想アドレス」を、実際にメモリ上のデータが存在する「物理アドレス」に変換します。この操作はDATと呼ばれます。これにより、アプリケーションごとに独立した仮想メモリ空間を提供でき、プログラムがほかのプログラムに影響を与えないようにします。

2.2. メモリ保護

MMUは、不正なメモリアクセスを防ぎます。たとえば、あるプロセスが別のプロセスのメモリ領域にアクセスすることをブロックすることで、システムの安定性とセキュリティを保ちます。

2.3. ページング方式とセグメンテーションのサポート

ページング方式とはメモリを固定サイズ(ページ)に分割し、効率的に使用します。一方で、セグメンテーションと呼ばれるメモリを可変サイズのセグメントに分割して管理することもサポートしています。

ふゅか
ふゅか
ページング方式とかセグメンテーションっていうのもサポートしてるよね?それぞれどう違うの?
はるか
はるか
ページングは固定サイズで分割。セグメンテーションは可変サイズ。用途に応じて使い分ける。

3. MMUがない場合

MMUがない場合、仮想記憶方式における仮想アドレスを変換することができないため、プログラムは直接物理アドレスを扱います。

4. まとめ

MMUは仮想メモリの実現やメモリ保護、効率的なメモリ利用を可能にすることで、安定性とパフォーマンスを向上させています。

PR