x86 ISAデバイスによると、ISAデバイスRobert Love
は Linux Kernel Development
物理メモリの最初の16MB(範囲0MB〜16MB)にのみアクセスできるため、32ビットアドレス空間全体でDMAを実行できません。なぜこれが起こるのですか?
答え1
16ビットISAバスアドレスラインは24本だけなので、最大16MiBのアドレスのみエンコードできます。これは、8086および20のアドレスラインで使用される8ビット拡張バスの拡張として設計された80286 CPUと一致します。
ISAバス自体は24本のアドレスラインを超えて拡張されません。これは、MCA、EISA、VESAローカルバス、およびPCIに置き換えられました。