メモリマップドI/Oを使用するデバイスがある、つまり、このデバイスに割り当てられた物理メモリの特定の範囲があると想定します。
仮想メモリシステムが使用されていない場合、対応する物理アドレスを使用して実行される読み取り/書き込み操作を通じてデバイスを操作するのは非常に簡単です。
仮想メモリシステムがある場合はどうなりますか?
デバイスドライバは、そのデバイスに割り当てられた物理メモリの特定の範囲を認識する必要がありますが、物理ではなく仮想アドレスを使用する必要がある場合、どのようにそのアドレス範囲にアクセスしますか?