トップ回答者
ヒープメモリの確保について

質問
回答
-
このあたりのスレッドが参考になりますか?
http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=3208148&SiteID=7
Windows 2000とXPでカーネル他が違うので、メモリの使われ方、断片化の具合も異なります。
その辺が影響しているのではないかと。
すべての返信
-
このあたりのスレッドが参考になりますか?
http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=3208148&SiteID=7
Windows 2000とXPでカーネル他が違うので、メモリの使われ方、断片化の具合も異なります。
その辺が影響しているのではないかと。
-
xylish さんからの引用 断片化が起因しているのであれば、2/3個目のプロセスは同じように確保できないのでは思うのですが。
Hongliangさんが既に述べられていますが、もう一度。
32bitなWindowsでは、1プロセスが使えるメモリ空間(の内、ユーザ領域とされるの)は通常2GBになっています。
これは1プロセスごとの制限であり、メモリ空間内の断片化もそのプロセスでのみ発生します。
また、OS全体の仮想メモリの限界もあり、ページファイルのサイズや物理メモリのサイズによって変動するはずです。
そのため、1プロセス目で限界個数を確保しても、2プロセス目で同じ数確保できることもありますし、N番目のプロセスでは全く確保できないか、確保できる数が減ることもあります。