MMU は、そのプロセスに対応するページ テーブルを利用して、実行中のプロセスの仮想アドレスを物理アドレスに変換するために使用されます。仮想アドレス空間が物理アドレス空間と等しい場合のシナリオを考えてみましょう。その場合、同じ仮想アドレス空間が異なる物理アドレスにマップされる状況が発生しないため、本当に MMU が必要ですか?
まあ言ってみれば
Virtual Address
| 20 bits (V) | 12 bits(PO) |
Physical Address
| 20 bits(PPN) | 12 bits(PO) |
where V = Virtual Page
PO = Page offset
PPN = Physical Page Number
すべてのプロセスにページテーブルが本当に必要ですか? 複数のプロセスがある場合、どのような問題が発生する可能性がありますか?
簡単にするために、キャッシュメモリは無視してください。