為什麼我的「承諾」記憶體比我的實際 RAM 空間高得多?

為什麼我的「承諾」記憶體比我的實際 RAM 空間高得多?

http://i.imgur.com/cilRmfD.png

我已經運行了兩次病毒掃描,但到目前為止都沒有發現任何病毒(Malware Bytes 和 Avira Rescue)。在遊戲過程中,我會收到 Windows 彈出窗口,提示我的系統記憶體不足,建議關閉遊戲。瀏覽時也可能發生這種情況。我的電腦似乎變得非常緩慢,並且經常掛起,例如單擊訊息程式中的連結以在瀏覽器中開啟時。

我不確定是什麼原因造成的。我在“進程”選項卡上的內存使用量加起來並沒有達到我的實際內存的如此高的百分比。


順便說一句,我的磁碟使用率有時會飆升至 100% 嗎?研究似乎是這麼說的。

答案1

“為什麼我的“承諾”內存比我的實際 RAM 空間高這麼多?”因為「commited」大部分是進程私有的虛擬的位址空間,其中一些可以在 RAM 中,一些可以在頁面檔案中。

有些可能根本不佔用任何儲存空間!也就是說,如果它已被分配但從未被訪問,因此還沒有「出錯」。但它仍然計入“提交限制”,因為如果將來訪問它,它將佔用儲存空間然後。系統說「對不起,我們都沒有空間了」已經太晚了。

整個要點虛擬的記憶體是它可以比物理(RAM)大得多,不是嗎?

順便說一句...您似乎有一個大約 24 GB 的頁面文件,因為您有 8 GB RAM 並且提交限制為 32 GB。因此,您的「承諾」容量可能高達 32 GB。 (目前它幾乎是那麼高,因此減少或消除頁面文件將是一個壞主意。)

而使用的 RAM 就是這樣。所以,當然,使用的 RAM + 所使用的頁面檔案可以大於使用的 RAM。

畢竟,虛擬記憶體的全部意義之一在於,您可以使用比實體記憶體 (RAM) 更多的虛擬記憶體。

如果您想了解什麼正在使用提交的內存,您需要查看任務管理器的“詳細資料”標籤並啟用“提交大小”列。

「提交大小」列的總和也不會等於「提交費用」(您的電腦上為 30.1 GB),因為其他因素也會影響提交費用:非分頁和分頁池以及一些更「微妙」的機制,例如複製-寫入部分、頁面檔案支援的部分、AWE 映射...但與進程私有vas 相比,這些通常很小)

在該標籤上,「記憶體(專用工作集)」列對應於「進程」標籤中顯示的「記憶體」列。這是目前分配給每個進程的 RAM,用於其提交的虛擬位址空間。其餘部分將位於頁面文件中。但是,進程還有其他類型的位址空間,大部分是所謂的「映射」類型,其中一部分也將位於 RAM 中。還有其他由作業系統創建的系統範圍的東西,不特定於任何進程,也會消耗 RAM。

簡而言之,「進程」標籤的「記憶體」列不應等於正在使用的總 RAM。它僅顯示每個進程私下使用了總使用量的數量。

答案2

最簡單的思考方式就是回溯到 1995 年。

高階 PC 應該有8MB RAM(是的,兆位元組)。然而在 Windows NT(後來成為 Windows 2000,又成為 Windows XP)上,您的應用程式會認為它們有權存取 2國標記憶體——一個大到令人難以置信的數字。

你的應用程式可以做到這一點:

  • 它可以分配 2 GB 內存
  • 而實際的 PC 只有8MB 記憶體

這怎麼可能行得通?當 PC 只有 8 MB RAM 時,我的程式如何主動使用 2 GB 記憶體?這些東西都去哪了?它顯然不會進入 RAM 晶片。

答案是虛擬的記憶

應用程式以 4 KB 區塊的形式分配內存,稱為頁面。如果 RAM 中的所有頁面都已滿:

  • Windows 會選擇 RAM 中很少使用的一些頁面
  • 將該 4 KB 頁面的副本儲存到頁面文件在你的硬碟上
  • 然後將新可用的頁面提供給你的應用

如果使用該程式的程式會怎樣需要嗎?

  • 那麼 Windows 將偵測到您的應用程式正在嘗試存取某個頁面“交換”出到頁面文件
  • 釋放 RAM 中的其他頁面
  • 用硬碟上儲存的值填入新可用頁面的內容

然後您的應用程式就可以像什麼都沒發生一樣訪問該頁面。

今天也是如此

  • 你可以有“堅定的”31 GB 的“記憶”
  • 雖然只有 8 GB“記憶體”

因為RAM只是記憶體的一種。

答案3

Windows 使用頁面文件,它類似於 RAM,但儲存在硬碟中。它的速度要慢得多,但是當您需要使用比電腦中的記憶體更多的記憶體時,它很有用。當Windows需要儲存更多記憶體但RAM中沒有任何空間來儲存它時,Windows會將一段時間未使用的部分記憶體儲存在頁面檔案中。

提交的記憶體是電腦中的記憶體加上頁面檔案。看起來有時程式使用了太多內存,導致 Windows 在頁面文件中儲存了一些內容。頁面檔案不夠大,無法容納儲存在其中的所有記憶體窗口,因此必須增加其大小。它的體型不斷增大,直到達到極限。現在Windows無法進一步增加頁面文件,這意味著它無法儲存任何額外的內存,因此它唯一的選擇就是告訴你關閉一些程式以減少記憶體使用。你的電腦速度慢的原因是它需要從頁面文件加載內容,這比直接從 RAM 加載慢得多,並且使磁碟使用率非常高,因為頁面檔案儲存在硬碟中。

您不應該打開盡可能多的程序,並確保您的電腦有足夠的記憶體來容納您正在玩的遊戲和您使用的程式。我希望這有幫助!

相關內容