网站搜索

Windows 有一个工具,可以显示在你的电脑上接触过某个文件的每个应用程序


当我在我的 Windows 电脑上运行一个工具时,我感到很惊讶,因为我看到我以为是空闲的系统在很短的时间内触及了超过一千个文件。浏览器在写入日志,云应用在扫描文件夹,还有一个安全进程在每个文件写入驱动器后立即读取它。

微软的 Process Monitor 是揭示所有这些我从未知道存在的活动的工具。与显示资源使用百分比的任务管理器不同,它实时显示我的应用程序正在访问的确切文件。看到如此大量的活动让我对我的电脑有了更深的理解。

你的电脑看起来并不像那么空闲

Process Monitor 中的最初几秒钟之所以感觉混乱是有原因的

当我第一次打开进程监视器时,我立刻觉得我的电脑出了问题。窗口瞬间被超过一百万个事件填满,行在我还没来得及阅读之前就不断更新。我的系统什么都没做,但看起来就像承受着巨大压力。

这可能就是你在电脑上注意到的同样的活动洪流,而且在运行多个后台应用程序的系统上会更加令人不堪重负。后台应用程序越少,活动流就越轻。然而,重点仍然是 Windows 不断处于活动状态。

我看到的数据不是抽象的。每一行都指向真实的操作。与任务管理器不同,它并没有显示这些操作消耗了多少资源;它显示的是它们在做什么以及影响了哪些文件。对于工具记录的每个事件,都有一个进程名称、文件路径、时间戳和结果。

那些文件操作实际上揭示了什么

一旦你理解了这些模式,噪音就开始有意义了






最初,我看到的流感觉像是很多噪音,但随着我了解每种操作类型的含义,它变得更加清晰。下表总结了主要事件:

操作

它的意思

常见触发器

ReadFile

应用程序正在从存储中检索数据

配置加载,缓存读取,应用启动

WriteFile

应用正在将数据保存到存储

日志写入,自动保存,遥测阶段

RenameFile

文件或文件夹路径正在更改

安装、更新、安全保存序列

删除

文件正在被删除

临时清理,卸载程序活动

然而,这张表隐藏了这些操作随时间的行为。如果你只注意到一次 WriteFile 事件,可能没有什么特别之处。例如,如果你注意到同一个操作每隔几秒被一个你没有启动的进程重复执行,并且影响相同的路径,那么它就变得更值得注意。这类模式就是你希望使用 Process Monitor 揭示的内容。

你关注的不是单独的代码行,而是整个系统的行为。当我注意到某个特定应用程序反复读取一个配置文件时,我可以假设它在轮询自己永远找不到的更改。如果一个文件不断写入临时路径,它可能会记录你没有预料到的数据。单独来看,这些操作是中性的,但上下文是基于它们发生的频率建立的。

过滤是在这里变得有用

一个简单的规则将成千上万的事件变成你实际上可以阅读的东西

一次性消费原始的 Process Monitor 数据并没有帮助。筛选才赋予它真正的意义,我喜欢选择一个进程并按其名称进行筛选。

这很简单。导航到过滤器菜单,选择过滤器,并添加一条规则,其中进程名称包含你想要监视的应用程序。你仍然可以通过包含路径来进一步缩小过滤范围。这样,你可以选择查看特定应用程序在特定文件夹中所做的操作。

我建议对过滤器保持适度,因为一旦你开始叠加太多过滤器,可能会失去一些有用的上下文。被过滤掉的事件可能与活动相关,并且它们可能解释你正在观察的行为。

另外,不要把过滤与高亮混淆。高亮保留完整的流;然而,它会让你专注于你可能关心的特定事件。当我需要理解某个事件如何融入更广泛的背景时,我选择使用高亮。

一旦你开始寻找,你会发现什么

大多数人直到看到它才注意到的后台行为

我觉得最有趣的不是活动本身,而是它在我认为处于空闲状态的系统上所代表的意义。即使你只打开一个标签页,浏览器也会不断写入缓存文件夹、更新日志和管理临时数据。

即使你数小时都没有接触某个文件,云同步工具仍然会定期扫描目录。另一层来自安全工具,它们会在文件被写入后立即扫描文件;Process Monitor 显示了从写入者到扫描器的这一交接过程。

数据还显示了磁盘活动,因为在文件更改或计划运行期间,Windows 搜索在索引内容时会启动。虽然这些都没有危险或出乎意料,但了解您的特定系统的正常状态是有价值的。这个基线有助于您在问题升级之前识别潜在问题。

当某事感觉不对时,将一切结合起来

当我无法使用常见的 Windows 故障排除工具定位问题时,Process Monitor 已成为我的首选工具。当某个应用程序响应缓慢或行为异常时,我会按应用程序的进程名称进行筛选,并观察结果列。反复出现 ACCESS DENIED 条目表明存在权限问题。

当我无法解释某些磁盘活动时,尤其是在使用任务管理器时,筛选 WriteFile 操作并按进程排序会带来清晰的理解。Process Monitor 确保你不是仅仅在推测,而是在观察实际的系统行为。

相关文章