有沒有辦法找出我的系統使用C的總RAM量? 我在Ubuntu 12.04上。我需要用C編寫一個應用程序,它應該在運行時理想地查詢RAM的總量。如何查找我的系統正在使用的RAM的總量C
5
A
回答
5
在Linux上,可從/proc/meminfo
獲取。例如:
MemTotal: 16469432 kB MemFree: 792136 kB MemAvailable: 15201832 kB Buffers: 5806244 kB Cached: 8637760 kB ...
只需將其作爲普通文件打開並解析內容即可。
3
最簡潔的方法是使用procfs(請參閱Dietrich的回答)。
然而,關於硬件的詳細信息(RAM,CPU數量,速度,型號,雜項等設備),您可以從dmesg的提取噸的信息:
dmesg | grep Memory
您可以使用C STDLIB POPEN ()從dmesg讀取,如果你有privs,並解析各種信息。我已經將它用於像Spong這樣的監控系統,以便儘可能多地提取關於節點的信息。您甚至可以通過現場監控它來獲取您發出的硬件/設備命令(dmesg | tail -f)的反饋。
記住dmesg並不總是可用的,這取決於privs。
+0
感謝您的精彩提示。 – abc 2014-10-22 05:08:38
1
@abc本文檔可幫助您。 http://valgrind.org/docs/manual/ms-manual.html
1
獲得物理內存的唯一方法是使用BIOS調用,如果您不希望操作系統爲您執行此操作。 所有您需要的信息http://wiki.osdev.org/index.php?title=How_Do_I_Determine_The_Amount_Of_RAM&redirect=no
0
可以使用頂部命令將顯示CPU使用率內存使用情況等
相關問題
- 1. 如何查找的內存量在RAM中使用的Java
- 2. 如何僅在Python中查找總RAM
- 3. 如何確定C++中Linux系統RAM的數量?
- 4. 僅在RAM中使用mlock的系統
- 5. 通過Java查找系統RAM
- 6. 我將如何去檢查我正在使用的文件系統C
- 7. 如何使用Install Shield的安裝腳本知道系統的總內存(RAM)
- 8. 如何查找使用R的系統驅動器數量?
- 9. 如何檢索可用的系統RAM和電池電量
- 10. 在我的系統上查找NDK
- 11. 我如何知道我正在使用的操作系統?
- 12. 如何查找我的程序的系統調用位置?
- 13. 如何從C++的Windows中檢索總系統CPU使用率?
- 14. 如何檢查我的SVN存儲庫正在使用的文件系統?
- 15. 如何找到JDK在我的系統中使用BlueJ
- 16. 如何查找系統卷?
- 17. 如何檢查Linux操作系統中正在使用的C++版本?
- 18. 查找MAC系統的地址,使用python(聊天系統)
- 19. 用C獲得系統的總內存
- 20. 使用iPhone中的本地測量系統查找距離
- 21. 如何查找正在使用的臨時端口的數量?
- 22. 如何使我的應用系統
- 23. 如何在* realtime * ..中檢查VPS中可用的RAM內存總量?
- 24. 如何找出用戶正在運行的操作系統?
- 25. 查找正在生成CAL中斷的進程(系統調用)
- 26. 如何查找正在使用的isbns
- 27. 檢查正在運行的程序中可用RAM的數量
- 28. 如何使用Qtdbus公開在系統總線上的方法
- 29. 如何讓我的Fortran程序使用一定數量的RAM?
- 30. 如何讓我的電腦使用大量的RAM?
感謝。我不確定在C庫中是否有一些功能可以爲我做到這一點。 – abc 2014-10-19 07:04:03