Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Linux中单个进程的总/可用虚拟内存_C++_Linux_Memory_Virtual - Fatal编程技术网

C++ Linux中单个进程的总/可用虚拟内存

C++ Linux中单个进程的总/可用虚拟内存,c++,linux,memory,virtual,C++,Linux,Memory,Virtual,我需要监控: 物理存储器 交换存储器 虚拟内存 对于当前进程。总计和可用(免费) 使用sysinfo结构,我可以毫无问题地获得物理和交换,我可以从e.x使用虚拟内存。/proc/self/statm …但我仍然需要当前进程的总虚拟内存和/或可用虚拟内存。如何做到这一点 这纯粹是与Linux相关的问题(在Win中很容易)。使用过的发行版:Ubuntu,Fedora 编辑: 当我说我正试图从Linux系统上获得与ullTotalVirtual和ullAvailVirtual相当的东西时,也许我的

我需要监控:

  • 物理存储器
  • 交换存储器
  • 虚拟内存
对于当前进程。总计和可用(免费)

使用
sysinfo
结构,我可以毫无问题地获得物理和交换,我可以从e.x使用虚拟内存。
/proc/self/statm

…但我仍然需要当前进程的总虚拟内存和/或可用虚拟内存。如何做到这一点

这纯粹是与Linux相关的问题(在Win中很容易)。使用过的发行版:Ubuntu,Fedora

编辑: 当我说我正试图从Linux系统上获得与
ullTotalVirtual
ullAvailVirtual
相当的东西时,也许我的问题更容易理解


几周前,a出版了以下小型图书馆:


也许它有助于解决您的问题

几周前,一家出版了以下微型图书馆:


也许这有助于解决您的问题

请仔细阅读,而不是提供随机链接。我确实有实际的虚拟内存使用情况。我需要的是进程的总虚拟内存(空闲+已用)或进程的可用虚拟内存(空闲)。什么是“进程的空闲虚拟内存”?内部分配器中的空闲空间?超额提交的mmap地址空间?什么?
ullAvailVirtual
调用进程的虚拟地址空间的用户模式部分中当前未保留和未提交的内存量,以字节为单位。
的可能副本请仔细阅读,而不是提供随机链接。我确实有实际的虚拟内存使用情况。我需要的是进程的总虚拟内存(空闲+已用)或进程的可用虚拟内存(空闲)。什么是“进程的空闲虚拟内存”?内部分配器中的空闲空间?超额提交的mmap地址空间?什么?
ullAvailVirtual
调用进程的虚拟地址空间的用户模式部分中当前未保留和未提交的内存量,以字节为单位。
不幸的是,这也是关于内存使用的,这不是我想要的。它使用
/proc/self/smap
。那么您到底在寻找什么呢?您为当前进程编写了物理、交换和虚拟内存。这不是一个容易的问题,所以仔细阅读这个问题非常重要。我有疑问地写道:但我仍然需要当前进程的总虚拟内存和/或可用虚拟内存。如何做到这一点?@MKK好久不见了,你找到答案了吗?我正在寻找相同的,但在web上当前进程的总虚拟内存和/或可用虚拟内存中找不到任何内容。不幸的是,这也是关于内存使用情况的,这不是我要寻找的。它使用
/proc/self/smap
。那么您到底在寻找什么呢?您为当前进程编写了物理、交换和虚拟内存。这不是一个容易的问题,所以仔细阅读这个问题非常重要。我有疑问地写道:但我仍然需要当前进程的总虚拟内存和/或可用虚拟内存。如何做到这一点?@MKK好久不见了,你找到答案了吗?我正在寻找相同的,但在web上当前进程的总虚拟内存和/或可用虚拟内存中找不到任何内容。