ちょっと見ない間に伸びてて、その割には解決してなく問題の根の深さを再認識してます。
さて、物理メモリ、仮想メモリのはなしですが、ちょっとチャチャ入れますね。
まず、使用中メモリ→これは物理メモリの使用量です。
そして、コミット済み→これは物理、仮想両方でコミットされているメモリの総量です。
そして、
・PCをつけっぱなしにしてウェブブラウズなど、ごく一般的な操作をすると、コミット済みメモリがモリモリ増えていく。
・explorer.exeとtaskhostexe.exeをkillした時に、コミット済みメモリが大幅に減るよくわからない現象が起こる。
・物理メモリに空きがある状態(使用中<<<インストール済み物理メモリサイズ)にもかかわらず、メモリ不足というエラーが出る、もしくはパフォーマンスが劇的に悪化する。
これが今回の問題のおおまかな部分ですね。
3つ目は単純にページファイルの最大容量に到達、もしくは到達直前なだけなんですが。
そして、ややこしいことに物理メモリ、仮想メモリの他に物理アドレス空間、仮想アドレス空間なんてものもあります。
これはそれぞれ物理仮想でイコールじゃないですよね。
>> 「呼び出し側プロセスの仮想アドレス空間内のページ領域を、予約またはコミットします。」
> つまり、この API を呼び出したところで、物理メモリにはなんら影響を与えない。。。ということではないでしょうか?
> 提示されているサイトは、特定のプロセスにおける「仮想アドレス空間」のメモリ マップ状態を調べる方法だと思います。(ちゃんと読んでないけど。)
仮想メモリと仮想アドレス空間を混同してますね。
仮想アドレス空間はメモリの物理仮想関係なく、OSに申請したサイズで割り当ててもらったメモリのアドレス空間ですね。
VirtualAlloc()の検証方法としてはスレ主さんので意図はあってるんじゃないですか?
だからどうしたら良いかは本職じゃないのでよくわかりませんが。
デバッグ方法に関しては、分かりかねるので、他の人に譲りますね。
最後に、
>(自分でデバッグすれば、1日程度原因究明できる話では。。。と思っています。)
こういう捨て台詞はかっこ悪いのでやめましょ。それを指し示せない自分が虚しくなるだけでしょうに。
>なぜこの問題を1年以上にわたりこのコミュニティで議論しているのか、理解に苦しみます。
状況の再現に時間がかかるので、多くの情報を集めるため、だと私は把握してます。
議論じゃなくて情報収集ですね。
チャチャ入れ失礼しました。
WindowsUpdateである日ぽっくり直ればいいのになぁ・・・