首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >开机后资源管理器卡顿处理(虚拟内存设置)

开机后资源管理器卡顿处理(虚拟内存设置)

原创
作者头像
钓鱼的人
修改于 2026-10-19 07:57:42
修改于 2026-10-19 07:57:42
590
举报

开机后资源管理器卡顿:别急着关启动项,先让系统自己交代

实测环境:Windows 10 22H2(19045)/i7-14700KF/RTX 5070 Ti/C 盘 151GB(剩余 49.5GB) 数据来源:本机事件日志与 fltmc 实测,取证过程交由 WorkBuddy 执行,命令全部可复现。

开机之后那几十秒,鼠标能动了,但双击「此电脑」要愣两秒,任务栏图标一个个蹦出来,右下角托盘还在长。多数人的第一反应是打开任务管理器,把启动项挨个禁用——然后发现作用有限。

原因很简单:你在关应用,而卡住你的可能根本不是应用。

这篇文章做一件事:把"卡"拆开,用系统自带的日志和命令行取证,让你知道该动哪一层。

一、先分清是哪一种卡

"资源管理器卡"是个笼统说法,四种症状对应四套完全不同的根因,治法互相不通。

症状

发生阶段

大概率根因

登录后桌面空白、任务栏逐个加载

登录阶段(Explorer 还没起来)

启动项抢资源、会话管理器初始化慢

双击文件夹要等 1–2 秒才列目录

已进入桌面,Explorer 运行中

文件系统过滤驱动叠加、网络盘、索引器

右键菜单转圈、卡死

右键瞬间

第三方 Shell 扩展(右键菜单项)

切到"大图标"就卡死

浏览缩略图时

缩略图处理器、图片解码、索引

先把症状对上号,再往下走。对不上号就去改启动项,等于蒙。

二、取证:系统自己会记账

1)开机到底花了多久,谁拖的

Windows 有一份专门的启动性能日志,默认开启,很多人从没打开过:

代码语言:powershell
复制
Get-WinEvent -LogName "Microsoft-Windows-Diagnostics-Performance/Operational" -MaxEvents 20 |
  Where-Object { $_.Id -in 100,101,102,103,110 } |
  Select-Object TimeCreated, Id

事件 ID 的含义:100 是整次启动的持续时间,101 点名某个应用启动超时(含毫秒数),110 是会话管理器初始化,102/103 针对驱动和服务。

我这台机器的实测结果:

时间

事件

内容

总耗时

其中降级

10-18 18:08

100

本次启动持续时间

48729 ms

—

10-18 18:08

101

WorkBuddy.exe

32692 ms

27692 ms

10-18 18:08

101

QQ.exe

16444 ms

11444 ms

10-18 18:08

101

OllamaSetup.tmp

11184 ms

6184 ms

10-18 18:08

101

SearchIndexer.exe

445 ms

352 ms

10-16 21:29

110

SMSSInit(会话管理器)

11234 ms

5961 ms

10-16 21:29

100

本次启动持续时间

30474 ms

—

两个数字值得盯:

  • 48729 ms。接近 49 秒,这个成绩在 SSD 机器上属于偏慢,正常应在 15–25 秒。
  • SMSSInit 11234 ms。这一条最关键——会话管理器初始化阶段就已经慢成这样,说明问题发生在用户态程序还没来得及启动之前。换句话说,关掉几个开机启动的软件,对这种卡是无效的。

"降级时间"是 Windows 给出的参考基线差值,可以理解为"比你该花的时间多花了多少"。WorkBuddy 那 32.7 秒里,有 27.7 秒是"多花的"。

2)启动项到底有几个,别只信任务管理器

任务管理器的"启动影响"只统计它认识的启动项,服务、计划任务、驱动它都不管。用这一条更全:

代码语言:powershell
复制
Get-CimInstance Win32_StartupCommand | Select-Object Name, Location, Command | Format-Table -AutoSize

我这台机器有 9 个:Ollama、Edge 自动启动、夸克浏览器、夸克更新器、Steam、QQNT、WorkBuddy、微信、GoogleUpdater。其中三个是更新器(夸克更新、GoogleUpdater),它们开机就联网检查版本,收益为零。

3)最容易被忽略的一层:文件系统过滤驱动

这是本文的重点。杀毒软件、网盘同步、沙箱、安全卫士,都会往文件系统栈里挂"过滤驱动"。它的可怕之处在于:每次文件操作都要从这层走一遍,包括 Explorer 列目录。

代码语言:powershell
复制
fltmc filters

实测输出(节选,数字是高度 altitude):

代码语言:bash
复制
筛选器名称        数字实例   高度
360AntiSteal          7     402120
UCPD                  7     385250.5
360Box64              7     382310
360FsFlt              7     382300
360qpesv              7     327404
DsArk                 7     327402
Wof                   4      40700
FileInfo              7      40500

图 3|本机过滤驱动栈:5 个同源驱动全部挂着 7 个卷实例

高度越高,越靠近 IO 栈上层,也就意味着更早、更频繁地介入每一次文件访问。这张表里有 5 个来自同一家安全软件的过滤驱动(360 系列 + DsArk),全部挂着 7 个实例(对应已挂载卷)。

Explorer 打开一个文件夹,要读目录项、取图标、判断缩略图;每个动作都要依次穿过这一串过滤驱动。这不是"某个驱动有 bug",而是叠加成本:单个可能只多 1ms,五个叠起来在冷启动、首次访问时会被放大成肉眼可见的等待。

这也解释了为什么 SMSSInit 阶段就慢——会话管理器初始化时就要访问大量文件,此时安全软件已经驱动加载完毕,正卡在 IO 路径上。

三、按层处置

层一:登录阶段被启动项拖住

原则是延迟,不是禁用。禁用会让你真的少用功能;延迟只是把它挪到你不看屏幕的时候。

  • 更新器类(夸克更新、GoogleUpdater、各种 Updater)→ 直接在任务管理器里禁用,收益零风险。
  • 即时通讯类(QQ、微信)→ 保留,但如果你不需要开机就接消息,可以在设置里关掉"开机自启",改成手动。
  • 本地模型服务(Ollama)→ 这类启动后要加载模型、占显存,建议改成按需启动:用一个批处理或计划的"登录后延迟 3 分钟"任务拉起,别和登录抢那几秒。

延迟启动不一定要装第三方工具,任务计划程序就能做:触发器选"登录时",勾选"延迟任务 3 分钟"。

层二:过滤驱动叠加

这是收益最大、也最需要谨慎的一层。判断方法不是看任务管理器,而是上面那条 fltmc filters:数一下挂了多少个、高度多少、实例数是不是等于卷数。

处置只有两条路:

  1. 减少层数:卸载不需要的同步盘客户端(很多网盘装了就一直挂驱动,即使你没在同步)。
  2. 做对照实验:临时退出安全软件的文件防护(不是卸载),重启后重新跑一次事件日志,看 ID 100 的启动持续时间和 SMSSInit 是否下降。

对照实验是唯一可信的验证方式。不要凭感觉判断"某软件拖慢了我"——同一台机器、同一时段、改前改后各取三次,对比 ID 100 的数值,这是唯一站得住脚的证据。

层三:Shell 扩展与右键菜单

如果卡的是右键菜单而不是双击文件夹,方向就变了。右键菜单的每一项都来自注册表里的 Shell 扩展,第三方软件挂得越多,菜单构建越慢。

处置:用微软自家的 Autoruns(Sysinternals 套件),切到 Explorer 标签,看 ContextMenuHandlers 与 ShellIconOverlayIdentifiers 两项。禁用前先记下原始值,出问题能改回来。

层四:索引与缩略图

  • 如果卡顿只在"大图标/超大图标"视图出现:打开文件夹选项,勾选"始终显示图标,从不显示缩略图",再切回来看是否恢复。能恢复就说明是缩略图处理器或解码器的问题。
  • 如果卡在搜索框输入时:索引重建一次(设置 → 索引选项 → 高级 → 重建),并把索引范围收窄到常用目录。我这台 WSearch 是 Running/Automatic,索引器本身也在启动阶段占了 445ms。

四、怎么证明你改对了

改完别急着说"流畅了",用同一套取证再跑一遍:

  1. 重启,等桌面完全静止;
  2. 跑第一节那条 Get-WinEvent,取最新的 ID 100,记下启动持续时间;
  3. 跑 fltmc filters,确认驱动层数有没有真的减少;
  4. 手动计时:双击"此电脑"到文件列表出现,用手机秒表,连测三次取中位数。

三项里至少两项变好,才算改对。只凭"感觉变快了"很容易被重启缓存和当日负载骗到。

五、不建议做的三件事

  • 清空 Prefetch、关掉 SysMain。这两个在 SSD 上仍有收益,网上流传的"关闭提速"多数来自机械盘时代的经验。
  • 用"一键优化"批量禁用服务。它不清楚你机器上跑着什么,禁用列表里经常包含驱动依赖。
  • 长期关闭索引却继续用搜索。关索引不会让 Explorer 更快,只会让搜索变慢,代价转移而已。

六、这套流程的成本

整个取证过程不需要装任何软件,全部是系统自带工具,四条命令、十分钟内能跑完。我自己这一轮是让 WorkBuddy 直接跑命令、读日志、汇总成表格的——命令本身没有魔法,谁执行都一样,关键是把"猜"换成"量"。

下次开机再卡,别先动手,先看 ID 100 是多少毫秒。


标签:#WorkBuddy #Windows #性能优化

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 开机后资源管理器卡顿:别急着关启动项,先让系统自己交代
    • 一、先分清是哪一种卡
    • 二、取证:系统自己会记账
      • 1)开机到底花了多久,谁拖的
      • 2)启动项到底有几个,别只信任务管理器
      • 3)最容易被忽略的一层:文件系统过滤驱动
    • 三、按层处置
      • 层一:登录阶段被启动项拖住
      • 层二:过滤驱动叠加
      • 层三:Shell 扩展与右键菜单
      • 层四:索引与缩略图
    • 四、怎么证明你改对了
    • 五、不建议做的三件事
    • 六、这套流程的成本
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档