Windows系统内存管理工具的详细解决方案

Windows的内存问题的解决需要一个操作系统的深入了解,在了解如何使用Windows调试器和性能监测。如果你想得到的细节,比如内核堆栈大小或硬盘内存消耗,你会需要调试器命令和内核数据结构复杂的经验。面对进程的地址空间来确定私人和共享内存利用率或总的堆栈大小,即使是最有经验的管理者会发现它具有挑战性。


别害怕,RamMap和VMMap是容易解决内存问题。你可以从Sysinternals网站下载这些免费的工具。这些工具都是由Mark Russinovich和Bryce Cogswell写的。


rammap


rammap用来显示状态和利用的系统和过程的记忆。它提供了一个使用计数为摘要栏,它列出了所有种类的系统内存分区,例如分页池和非分页池,相对,共享硬盘空间,内核栈和地图文件。它还显示内存空间的量称为图元文件的缓存文件。


所有这些分区被进一步分为不同类型的物理内存消耗,如主动,互生,修改、转化、归零、自由或坏。这些栏目可以通过点击栏目分类。所有这些术语都是Russinovich的书,书上说Windows内部,如图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提供进程的地址空间中,两个额外的视图,包括字符串视图和分区的观点。字符串视图允许您搜索所有可读的字符串的地址空间中的存在。分段看颜色标记的方式显示虚拟地址空间,所以你可以看到很多种类的配置,它们的大小和连续性。