解决Windows内存问题的两个小工具RamMap和VMMap(这个更牛更好)
来源:http://www.cr173.com/html/13006_1.html
解决Windows内存问题需要对操作系统的深入理解,同时对于如何运用Windows调试器或性能监控器要有工作认知。如果你正试着得到细节,诸如内核堆栈大小或硬盘内存消耗,你会需要调试器命令和内核数据架构相关的复杂经验。面对进程地址空间来确定私人与共享内存利用率或总堆栈大小,即使是经验最丰富的管理员也会觉得颇具挑战。
不要害怕,RamMap和VMMap易化了解决内存问题的过程。你可以从Sysinternals网站上下载这些免费工具。这两个工具都是Mark Russinovich和Bryce Cogswell编写的。
RamMap
RamMap用于展示系统和进程内存状态和利用率。它提供一个命名为“使用计数”的概要栏,它列出所有各种各样的系统内存分区,如分页池和非分页池、流程私密的、可共享的、硬盘空间、内核堆栈和映射文件。它还显示被称为Metafile的缓存文件内存空间的数量。
所有这些分区又进一步分类成不同类型的物理内存消耗,如活跃的、备用的、修改的、转变的、调零的、免费的或糟糕的。这些列中的每一个都可通过点击列抬头分类。所有这些术语在Russinovich的《Windows内部书》(即«深入解析Windows操作系统»即«Windows Internals» )一书中都有解释。如图1所示,数据以图形的列表视图整齐展示。

图1:RamMap 中的使用计数数据
RamMap还在“进程”栏中显示进程内在利用率。在这里你可以看到所有列出的进程,还有它们相应的私有内存利用率。数据还包括所有占用备用或修改页面列表的进程内存,还有用于页表项的内存量。

图2:RamMap进程栏
RamMap的另一种运用是显示实际的物理内存用量,一页一页地识别内存清单、运用、文件名、进程、虚拟地址和池标签等属性。每一栏都可以分类,并且有一个过滤功能可以用来有选择性地分析数据。

图3:RamMap物理页面栏
最后,RamMap在展现缓存文件活动和数据上也做得不错。你可以运用“文件摘要”和“文件详细信息”栏向下查看系统文件缓存来确定文件路径、它占用的大小、相应内存是在活跃的、备用的还是修改的页面列表中。

图4:RamMap文件摘要栏
VMMap
到目前为止,我们已经明白了RamMap如何展示系统和进程内存使用。如果你要解决的内存问题看起来和特定的进程或应用相关,你也许有必要通过使用VMMap来仔细看看。VMMap是一个过程导向的工具,它让你可以查看现有的进程或者追踪新的进程并查看其内存使用,它提供的信息远比RamMap详细。
VMMap启动时,它提示你选择你想要审查的现在进程或是开启一个新的进程。如果你启动了一个新进程,你将能追踪内存利用率,如堆和虚拟分配。在下面的图5中,我选择了communicator.exe进程。

图5: VMMap显示
一旦VMMap的主窗口显示,你可以看见屏幕分成几部分。顶部部分是进程内存消耗的一个图形概要。它分成提交空间、专用字节和工作集。在屏幕的中部部分,内存利用率根据运用分类,如专有数据、共享数据、图片、映射文件和堆大小。最后,屏幕底部显示每个虚拟地址相应的页面类型是什么、所用的工作集大小和数量、页面保护、所有区块和分区的细节。颜色标记让你可以快速地看到特定类型的内存消耗多少空间。
VMMap提供有关进程地址空间的两个额外视图,包括一个“字符串”视图和一个“分割”视图。字符串视图让你可以搜索地址空间中存在的所有可读字符串。分割视图以颜色标记的方式显示进程虚拟地址空间,因此你可以看到多种分配、它们的大小以及它们的连续性如何。
解决Windows内存问题的两个小工具RamMap和VMMap(这个更牛更好)的更多相关文章
- 解决Windows内存问题的两个小工具RamMap和VMMap
解决Windows内存问题需要对操作系统的深入理解,同时对于如何运用Windows调试器或性能监控器要有工作认知.如果你正试着得到细节,诸如内核堆栈大小或硬盘内存消耗,你会需要调试器命令和内核数据架构 ...
- 2014年Windows平台软件推荐:神器小工具(骨灰级
原文 http://www.wtoutiao.com/a/120621.html 底层工具 “If you know how to use Process Monitor competently, ...
- Windows平台软件推荐:神器小工具(骨灰级)
底层工具 "If you know how to use Process Monitor competently, people of both sexes will immediately ...
- Windows 7环境下网站性能测试小工具 Apache Bench 和 Webbench使用和下载
1.简要说明: Apache Bench 是Apache的网站性能测试小程序,Windows平台下的程序名简称ab.exe,要想获得这个80k的可执行程序,用户需要下载整个Apache Httpd软件 ...
- 2000条你应知的WPF小姿势 基础篇<45-50 Visual Tree&Logic Tree 附带两个小工具>
在正文开始之前需要介绍一个人:Sean Sexton. 来自明尼苏达双城的软件工程师.最为出色的是他维护了两个博客:2,000Things You Should Know About C# 和 2,0 ...
- 推荐两个小工具MediaInfo 和 netpersec
[转载请注明出处]:http://blog.csdn.net/longlong530 流媒体服开发的时候常用的两个工具, 1. MediaInfo 下载路径:(http://w.x.baidu ...
- windows下自动更改IP的小工具(bat批处理文件)
每次上线,都要先上灰度环境再上到正式环境.在上到灰度环境时,访问灰度环境通过自动获取IP和更改指定dns来实现.具体如何实现,大家可自行百度. 新建一个文本文档,将其后缀改为bat,打开该文件,拷贝一 ...
- [原创] Delphi小工具(Windows资源管理器右键菜单扩展)
两个小工具 1. 项目临时文件清理 2. Android Ndk 编译 c/c++ jni 源码工具. 下载后,点击Reg.bat就可以完成注册安装.不需要时点击 UnReg.Bat 就可以删除菜单. ...
- 在windows下实时监控、接受文件变化小工具
在windows下实时监控文件变化小工具 在测试的时候,我们可能想实时监控系统打出的log信息,在unix系统上我们可以用"tail -f"实现,在windows下一般就无法做 ...
随机推荐
- 利用connect建立前端开发服务器
利用connect建立前端开发服务器 对于前后端完全分离的系统,开发时候我们需要给前端配置服务器,当然我们可以选择Nginx之类的服务器进行配置,但我们也能使用NodeJS构建高自由度的前端开发服务器 ...
- 不想作死系列--win7远程linux桌面之vncserver
1.在linux服务器上安装vncserver yum install vncserver 或者下载相应linux版本的tigervnc-serverrpm rpm -ivh tigervnc-ser ...
- offsetWidth, offsetHeight, offsetLeft, offsetTop,clientWidth, clientHeight,clientX,pageX,screenX
offsetWidth: 元素在水平方向上占用的空间大小.包括元素的宽度,内边距,(可见的)垂直滚动条的宽度,左右边框的宽度. offsetHeight:元素在垂直方向上占用的空间大小,包括元素的高度 ...
- 简单的理解deflate算法
简单的理解deflate算法 最近做压缩算法. 用到了deflate压缩算法, 找了很多资料, 这篇文章算是讲的比较易懂的, 这篇文章不长,但却浅显易懂, 基本上涵盖了我想要知道的所有要点. 翻译 ...
- [置顶] javascript-基于对象or面向对象?
最近完成了javascript的初级学习,在这个学习的视频中,我特别注意了两个词,解释性语言和对象,javascript按照我的理解,应该是种解释性语言,他有关于面向对象的思想的体现,但是,他和vb一 ...
- “Will not add file alias 'samefile' ('SameFile' already exists in index)” when `git add/commit` operation
从远程仓库pull下来的代码有两个类类名首字母小写出现如下情况 然后我想删了重新写一下(就是把这个类删了,代码复制到名字正确的类里面),然后commit的时候出现这个错误,后来删一个commit一下, ...
- Dubbo源码学习--服务是如何引用的
ReferenceBean 跟服务引用一样,Dubbo的reference配置会被转成ReferenceBean类,ReferenceBean实现了InitializingBean接口,直接看afte ...
- NodeJS Stream 三:readable
什么是可读流 可读流是生产数据用来供程序消费的流.我们常见的数据生产方式有读取磁盘文件.读取网络请求内容等,看一下前面介绍什么是流用的例子: const rs = fs.createReadStrea ...
- HDU1496 hash
Equations Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- printf输出格式
tips:#为空格 Printf 格式化字符串 格式代码 A ABC ABCDEFGH %S A ABC ABCDEFGH %5S ...