Windows – 进程资源管理器:提交历史图表显示什么?
在Process Explorer中可用的Memory图表中,顶部图表显示了Commit History.这在操作系统级别上实际表明了什么?
要进行实验,如果这是一个进程在堆上分配的内存,我写了一个小程序,增量地malloc-ed 100 MB多次.提交历史记录图表增加了一段时间(高达1.7 GB的内存分配),并且之后没有增长,尽管程序存储内存不足. 那么这个图表是什么?如何使用这些信息来了解/分析Windows的状态?
提交级别是分配给系统中所有进程的匿名虚拟地址空间量. (它不包括任何文件备份的虚拟地址空间,例如,从mmap’d文件.)在进程资源管理器中,“提交历史记录”图表显示该值随时间的大小.
由于虚拟内存被分配和分配(实际的RAM支持一个虚拟地址空间的页面不一定被分配,直到它的第一次被触摸),这个当前的’提交’级别表示最坏的情况(当时)的内存该系统可能需要提出.与Linux不同,Windows不会向RAM发出承??诺(地址空间),无法通过分页文件获取或伪造.因此,一旦提交级别达到系统限制(大致RAM页面文件大小),新的地址空间分配将失败(但是现有虚拟地址空间区域的新用途将不会失败). 关于您的系统的一些结论,您可以从这个值得出: >如果此值小于当前的RAM(除了内核和系统开销),那么您的系统不太可能进行交换(使用分页文件),因为在最坏的情况下,所有内容都应该适合内存. 你的实验验证了这一点.我怀疑你遇到了地址空间限制(Windows中的32位进程是limited to 2GB …也许300MB消失到碎片,库和文本?). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 纯Win32 C中的自定义菜单边框(没有WTL,MFC等)
- windows – 无法在IE10浏览器中模拟IE7
- Windows 7 – 您可以在Windows 2012中使用VS 2012构建Win 8
- Windows Server 2016-FSMO操作主机角色介绍
- windows-server-2008 – 我可以为新的域控制器重用失败的域
- windows-server-2012 – RackSpace Cloud中IIS8和MSSQL 201
- batch-file – 用于在Windows 7中更改屏幕分辨率的批处理文
- 批处理文件 – 如何使用Windows批处理脚本从文本文件中删除
- Windows – 如何在没有SendKeys的情况下自动执行Telnet会话
- windows-phone-8 – VS2015崩溃同时部署windows phone 8 ap
- 命令行 – 在Windows 2008 Server中从MP3 / WAV文
- 通过Microsoft.AspNetCore.App元包简化程序集的引
- windows-server-2003 – 具有唯一值的AD自定义属
- windows – 是否可以设置服务的处理器关联,并在重
- 使用PowerShell运行我的第三方DLL文件
- 我需要仅使用本机Windows命令在批处理环境变量中
- 克隆 – 适用于Windows的最佳服务器类幻像工具
- 如何在Windows上安装igraph for python
- Windows 上编译 corefx 源码生成 Linux 上可用的
- 在Windows 10上禁用TortoiseSVN中的德语拼写检查