2011-07-08 7 views
2

デバイスに1つのレジスタがあり、CPUがx86のようなアーキテクチャを持っているとします。このレジスタは、物理アドレス0x50000にマップされたメモリです。プロセッサがメモリマップドレジスタにアクセスするとき、実際にデバイスにアクセスしているかどうか

プロセッサは0X00ABCDEFを0x50000(phys。)に書き込みます。もし私が によってRAMバンクを「開く」ことによってそのアドレスを調べることができたら、どうすればよいでしょうか? 0X00ABCDEFまたは迷惑?

デバイスのレジスタに0X00ABCDEFが既にあるとします。私が間違っているなら、私を修正してください。

答えて

6

特別なアドレスは、デバイスや他の周辺機器の「ピン」にマッピングすることができるため、RAMはまったく関与しません(現時点では少し複雑ですが、アイデアは全く同じです)。したがって、そのアドレスにアクセスすると、そのアドレスにマップされたハードウェアの仕様に基づいて何かを実行できますが、RAMにはトラックが残っていません。別の言い方をすると、そのアドレスはRAM内の場所ではありません。それはちょうど方法であるアドレス(到達するために)デバイス。

+0

ありがとうございます!それは私が知る必要があったすべてです:) –

関連する問題