最近有朋友在后台问,在电脑上看到了扩展名为.DMP的文件。而且有些这个.DMP文件的主文件名还形似乱码,问,这是什么文件?有什么用?可以删除吗?因为它们有时会消耗大量的数据(上GB大小!)!
.dmp文件,正式名称是转储文件,本质上是在系统崩溃或某些程序在“蓝屏死机”(BSOD)期间发生故障时,或收到应用程序将突然停止或像Chrome那样关闭的错误信息时,计算机内存的快照,也可以想象为是系统在遭受重大错误不得不中断任务时,留下的内存状态的“截图”。
而且不光Windows系统有,Linux、Mac或其他主流操作系统都在出现突然、故障和崩溃时,会产生DMP文件。
在系统的临时文件夹或根文件夹(%SystemRoot%目录)中一般是保存.dmp的地方。当然有些第三方文件崩溃后的.dmp文件不会放在系统根目录,而是会放在用户目录或者软件目录中。DMP文件包含应用程序错误状态信息、是否发生硬件故障(包括电源故障)、发生故障时运行进程的信息,一些可能的故障原因信息、内存信息、内核地址指针、系统状态和其他数据。总之,你可以把. dmp文件想象成飞机的黑匣子,它记录电脑“坠机”前的情况。
对于开发人员和IT专业运维人员来说,. dmp文件对使用调试工具来分析信息,以了解崩溃、故障或安全威胁的根本原因是必不可少的。这些信息对于bug修复、软件补丁安装和维护整体系统稳定性至关重要。
对于不具备解读转储文件中数据能力的普通用户来说,. dmp文件可能没有帮助。但是,这些文件可以与厂家技术支持人员共享,以帮助进行更快的故障排除。
有很多工具都可以打开和解读.dmp文件的信息。不过,对于不同用途,也有不同的工具来实现。例如,对于调试系统来说,推荐使用微软自家的windbg preview工具。安装它很简单,打开windows商店,搜索windbg就可以找到它,然后点击获取,完成安装即可。
完成安装后,点击开始菜单,选择到Windbg Preview,选“更多”,以管理员身份运行。
打开主界面后,选择“File”(文件)后,就会出现一个次级菜单,在第一个start debugging里,就有打开dump文件的选项,此时可以打开dump文件了。
如果存在dmp文件,那么打开后,就能看到里面提供给维护调试人员的信息了。例如下面就是一个卸载工具geek installer崩溃时的信息
而点击其中的!analyze -v链接,软件会自动下载一些调试需要文件后,进行信息的进一步分析,并给出建议结论。
INVALID_POINTER_READ_c0000005_geek64.exe!Unknown的分析信息,那么有经验的维护人员,就能从这个信息中知道,是软件应用程序进程因内存访问冲突而崩溃,很可能是访问了一个未知的地址,这可能是软件bug,也可能是内存条的纠错故障导致。
而对于软件开发者来说,还可以直接选择其他选项,创建针对特定文件和进程的调试监控信息,最后记录为dmp文件进行分析。
当然,如果纯只看dmp文件的话,也有第三方工具,比如BlueScreenView等。
答案是肯定的。虽然dmp文件在故障排除中很有用,但它们在计算机日常使用中不起作用。因此,你可以在不损害系统的情况下删除它们,不会对系统性能产生任何影响。
此外,与计算机上的其他文件一样,每个DMP文件会占用大量磁盘空间,如果可用磁盘存储耗尽,还可能会从计算机中占用虚拟RAM(页面文件)空间。删除DMP文件可以释放硬盘空间,提高硬盘运行速度。
但如果需要.dmp文件来诊断系统或软件的潜在问题,就可以暂时不删除,或者在存储它们的磁盘分区空间耗尽时将它们移动到其他驱动器,以待专业人士解读。
删除.dmp文件的过程非常简单。首先,打开文件资源管理器并导航到“C:\WINDOWS\Minidump”文件夹(或您默认的dmp存放文件夹位置),在那里找到由于程序崩溃而创建的所有. dmp文件,全选dmp文件后从系统中删除即可。
当然,也可以使用Windows内置的磁盘清理工具来清理. dmp文件,根据需要,在“windows错误报告和反馈诊断”选项处,设置为选中状态并确认即可。
这个系统内置的磁盘清理程序清理.DMP文件,基本不会导致错误。有时调试转储文件会占用大量空间,当然应该删除它们。
可以的。
方法是点击开始菜单-设置-系统-关于,点右侧的“高级系统设置”,然后选择里面的“启动和故障恢复”选项页上的“设置”。
然后进入到设置界面,如果不想让系统生成.DMP文件了,则去掉“将事件写入系统日志”前的勾选状态,然后“写入调试信息”选择“无”,以后系统就不会生成.DMP文件占空间了。当然,一些第三方文件还是可能生成的。
而如果你想要更详细的调试信息量,则可以把“写入调试信息”选项从默认的小内存转储改为其他的递增选项,丰富信息维度。
Windows 10的开发是为了允许终端用户在系统错误的情况下有管理选择。由于系统由许多进程组成,微软开发了一些文件格式存储了故障的相关数据或信息,以便进行故障排除。这就是dmp文件。不好的是,积累这些文件意味着不必要地使用硬盘空间,可能会影响其他更关键的进程。这就是为什么如果不需要的话,最好在Windows中定期删除.dmp文件的原因。