- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个关于 VmSize 的小问题,在文档中它应该是应用程序对内存的使用。
但是在我的系统上:
VmSize = 物理内存 + swapVmHWM 看起来更像是应用程序实际使用的内容。
[root@sun ~]# free -m
total used free shared buffers cached
Mem: 12012 9223 2788 0 613 1175
-/+ buffers/cache: 7434 4577
Swap: 3967 0 3967
[root@sun ~]# cat /proc/8268/status
Name: mysqld
State: S (sleeping)
Tgid: 8268
Pid: 8268
PPid: 1
TracerPid: 0
Uid: 89 89 89 89
Gid: 89 89 89 89
FDSize: 512
Groups: 89
VmPeak: 15878128 kB
VmSize: 15878128 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 7036312 kB
VmRSS: 7036312 kB
VmData: 15839272 kB
VmStk: 136 kB
VmExe: 10744 kB
VmLib: 6356 kB
VmPTE: 16208 kB
VmSwap: 0 kB
Threads: 265
SigQ: 0/96048
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000087007
SigIgn: 0000000000001000
SigCgt: 00000001800066e9
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: 0000001fffffffff
Seccomp: 0
Cpus_allowed: fff
Cpus_allowed_list: 0-11
Mems_allowed: 00000000,00000001
Mems_allowed_list: 0
voluntary_ctxt_switches: 2567
nonvoluntary_ctxt_switches: 77
知道为什么吗?我特别尝试获取此应用程序的内存使用情况,但此结果没有任何意义。
谢谢。
最佳答案
VMsize 是进程使用的“地址空间”:可用地址 的数量。这些地址不必附加任何物理内存。 (附物理内存为RSS图)
您可以通过使用 p = malloc(4 * 1024 * 1024);
分配一 block 内存来验证这一点,并且不对*p做任何事情
:VmSize 将增加 1K 页,但 RSS 将(大约)相同。 (你的程序会有更多的可寻址内存,但它没有寻址,所以内存不需要attached)
关于linux - VmSize = 物理内存 + swap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17174645/
有没有办法通过选择不同的配置(而不是手动)来定义和更改服务定义文件 *.csdef 中的 VMSIZE? 我们有一个调试测试环境,可以使用多个服务配置文件 (*.cscfg) 进行发布,但是当我们进行
有没有办法通过选择不同的配置(而不是手动)来定义和更改服务定义文件 *.csdef 中的 VMSIZE? 我们有一个调试测试环境,可以使用多个服务配置文件 (*.cscfg) 进行发布,但是当我们进行
我试图跟踪我的应用程序占用了多少内存。所以我正在阅读 /proc/self/statm。 #include #include void print_mem(){ std::ifstream p
我有一个关于 VmSize 的小问题,在文档中它应该是应用程序对内存的使用。 但是在我的系统上: VmSize = 物理内存 + swapVmHWM 看起来更像是应用程序实际使用的内容。 [root@
我们的代码位于 Visual Studio Online 中TFS 存储库,我们构建并部署到 Azure。我们有一个Build Definition使用托管构建 Controller 和 TfvcCo
我想知道代码运行时会占用多少内存。我总结了代码中使用的所有内存,并使用 GCC 转换为可执行 bin 文件。 当我运行 bin 文件并使用 cat/proc/$PID/status 时,VmSize
在我的云服务中,我有一个 Web 角色和辅助角色。我将网络角色虚拟机大小从中更改为A6。 当我尝试部署到 Windows Azure 时,收到以下错误消息:s 似乎提示我错误 The VM size
我想写VmSize。当我输入 get-azvm 时,我获得了有关 VM 的所有信息。 当我输入 get-azvm |select VmSize 时,我有一个空变量。 我怎样才能得到这个信息? 我在网上
我想在部署期间更改正在运行的 Azure Web 角色的 vmsize,最好使用 powershell。 这可能吗? 这里的用例是,并非所有客户(和测试环境)都应该运行相同的虚拟机大小,但他们都使用相
我正在尝试在 Linux 系统上为产品计算适当的大小数据,并希望确定内存使用情况。到目前为止,我接近它的方式是运行: cat /proc//status 查看输出时,我不确定哪些数字是相关的。例如:
我有 Azure 云服务,并尝试将其升级到标准 D2 大小,但升级失败,并且我遇到了与此问题相同的错误:link 之后,我在 Azure 门户中创建了新的云服务,并以标准 D2 大小发布了我的项目,一
我有 Azure 云服务,并尝试将其升级到标准 D2 大小,但升级失败,并且我遇到了与此问题相同的错误:link 之后,我在 Azure 门户中创建了新的云服务,并以标准 D2 大小发布了我的项目,一
我是一名优秀的程序员,十分优秀!