申し訳ありませんが、私は Windows ドライバー開発の初心者です。WDK からこのドキュメントを読んだ後、理解できないことがありました。
文書によると
プロセスが使用できる仮想アドレスの範囲は、プロセスの仮想アドレス空間と呼ばれます。各ユーザー モード プロセスには、独自のプライベート仮想アドレス空間があります。32 ビット プロセスの場合、仮想アドレス空間は通常、0x00000000 から 0x7FFFFFFF までの 2 ギガバイトの範囲です。64 ビット プロセスの場合、仮想アドレス空間は 0x000'00000000 から 0x7FF'FFFFFFFF までの 8 テラバイトの範囲です。仮想アドレスの範囲は、仮想メモリの範囲と呼ばれることがあります。
それについての私の質問は次のとおりです。
8ギガバイトのメモリバンクを持つコンピュータがあるとします。
- この 8 ギガバイトのメモリからすべての仮想アドレス空間が実際に割り当てられているのでしょうか?
- 1 つのプロセスに 2g の仮想アドレス空間を割り当てる必要がある場合、システムで 4 つのプロセスが実行されていると言えますか。彼らは完全に8ギガバイトのメモリを必要としていますか? 答えが「はい」の場合、そのコンピューターで実行できるプロセスの最大数が 4 であることを意味しますか?
何かを誤解しているかどうかはわかりません。私を修正してください。どうもありがとう。