2

非常に集中的なグラフィックス作業を行うプログラムがあり、大量のメモリ (> 8GB) を必要としますが、私のマシンには現在 8GB の RAM しかありません。つまり、メモリが不足すると、プログラムは不正な割り当てをスローします。

このプログラム以外にも、メイン メモリを少し使用するプログラムをいくつか開いていましたが、ほとんどの場合、プログラムがメモリを消費しているだけでした。

bad_allocここで、メモリ使用量が 8 GB を超えると、ページ フォールトや一部のページのスワップ アウトではなく、なぜシステムがエラーをスローするのか疑問に思いました。それは、ページングと仮想メモリが解決するはずの問題の 1 つではありませんか?

最近アクセスされていないページをページアウトするだけで、必要なメモリ用に新しいページを作成できる場合、8 GB を超えるメモリを必要とするプログラムを実行できるはずです。

誰でも説明できますか?

私のマシンには 8GB のページ ファイルがあります。

4

2 に答える 2

1

メモリ割り当てには他にも問題があります。

  1. プロセス メモリの割り当て: プロセスは、OS からメモリ フレームを要求する必要があります。OSが提供できる最大サイズに達している可能性があります
  2. 仮想メモリ空​​間: プロセスとプログラム内では、仮想メモリ空​​間で作業しています。繰り返しますが、実行中のプロセスやプログラムには、32 ビットを超えて拡張する能力がない可能性があります。

私がリストしていないこのような問題が他にもあるかもしれません

于 2012-03-30T16:43:41.203 に答える
0

何のOS?
RAM+スワップの合計はいくらですか?

しばらく実行した後、単一の連続した 8Gb リージョンを割り当てようとしていますか? 一般的に悪い考え

メモリの断片化を解決する方法を参照してください

于 2012-03-30T16:39:50.660 に答える