2016-03-07 84 views
-2

現代操作系統和CPU硬件提供內存保護,防止進程訪問除分配給進程的內存以外的內存。在內存保護操作系統中讀取內存

鑑於此,如何將一個寫像Windows的資源管理器工具,報告有多少內存是免費的,在使用時,保留等;或基本的內存轉儲工具等?通過使這樣的程序成爲具有內核特權的操作系統的一部分,在此類系統上執行此操作的唯一方法是?

有操作系統的API,允許訪問另一個進程的內存。但即使你使用這些,你的記憶閱讀程序仍然需要特權。是否只通過操作系統找到內存和CPU寄存器的內容?

與磁盤監控程序的情況是否相似?

回答

0

存儲器是一束單獨的標記的存儲器位置,這要麼的1或0,高或低,打開或關閉。這些都是位。 需要一定量的電流來使用這些位,將它們打開或關閉,所以也許有可能您可以讀取內存使用的電流,查找設置基準的最小值和最大值,以及通過如何查看內存使用情況電流大不相同。

用軟件來完成這個任務是完成任務。它處於內核級甚至上游。

隨着磁盤監控系統,以計數從來來往往的比特的實際數目。

+0

這將需要精心設計的監控硬件內置到計算機硬件。雖然有趣的想法。 – BenK

0

鑑於此,如何編寫一個像Windows資源管理器這樣的實用程序來報告有多少內存空閒,正在使用,保留等等;或基本的內存轉儲工具等?

此類應用程序調用操作系統中的系統服務來獲取此類數據。這些可能是有記錄的或無證的。