Windows 10 启动突然需要 10-20 分钟

Mic*_*ann 7 windows boot performance windows-10

我安装了全新的联想 900s,在安装了标准软件和开发系统后,突然系统无法启动并卡在启动屏幕上。我首先认为它有缺陷并重新启动,尝试修复 UEFI 引导扇区等无济于事。偶然地,当我与一位同事交谈时,我将它卡在了启动屏幕上,当我回到机器上时,我可以登录。

然后我发现机器启动需要 10 到 20 分钟。我运行了性能工具包,发现它卡在 Wininit 阶段,但我无法找出是哪个特定进程或驱动程序导致的。

我已经尝试过的:

  • 证监会/扫描
  • dism 恢复健康
  • Windows 10 就地升级
  • 卸载蓝牙和音频,重新安装
  • 更新所有驱动程序
  • 清除 Appcompat 缓存

这是启动阶段的图片:

性能分析器启动阶段视图

[1]:http://i.stack.imgur.com/8l14W.jpg

编辑 1:当我使用 Fullboot.boot 配置文件在性能分析器中加载 ETL 时,我可以看到该阶段正在运行的进程是 ntoskrnl.sys、cdd.dll、cxkrnl.sys、win32kbase.sys 和 dxgmms2.sys。也许这与directX有关?此外,在完整阶段几乎没有 CPU/磁盘活动。

编辑 2:我做了一个记录的开始。ntblog.txt 声明 cdrom.sys 未加载(有意义,因为没有 cdrom),四次(分布在日志中)dxgkrnl.syss 未加载,接近尾声时 wdFilter.sys 未加载。DXDIAG 没有发现任何问题。在设备管理器中没有警告标志。

编辑 3:由于 cdd(规范显示驱动程序)涉及到感兴趣的阶段,我卸载了 Intel 550 显示驱动程序,并提供了删除文件的选项。结果是通常的徽标阶段和重新启动时“回来”徽标阶段之间的延迟更短。最终显示在问题出现之前初始化,更有可能不是原因。

编辑 4:我使用更多选项重新启动启动监控,并可以打开通用事件视图。我只能看到在该阶段中只有 System 和 Idle 处于活动状态,并且有几个子流程,但由于事件分布在 700 年代的时间线上,因此没有任何帮助。

编辑 5:只是为了确保我重置了 Windows 更新(停止服务、重命名软件分发文件夹、重新启动服务)。重启后没有变化...

编辑 6:我决定采用痛苦的方式重新安装我的完整内容(这对我是一名开发人员来说相当多),尤其是因为这是第二次。我现在将回到一个非常早期的映像,该映像在每个市长安装步骤之前都可以工作并设置还原点,然后重新启动。一旦我发现原因,我会在这里发布。

更新 1:我对除 STEAM 之外的所有应用程序进行了完整的重新安装,并在每一步后重新启动系统还原点和 - 启动和重新启动保持在 10 秒!我现在将制作两个图像,运行 bitlocker,然后尝试使用 Steam(之前有一个还原点)。祈祷;-)

最后更新:我用 Bitlocker 加密了 C: 和 D: 并安装了 Steam。一切正常。与导致 10-20 分钟启动的前两次安装的唯一区别是 Photoshop CS2。但是当我现在使用 Corel Photopaint 时,我安装了它,检查了重启,工作并再次卸载了它。一方面,我不知道是什么导致了这些问题,另一方面,我现在很高兴拥有一台正在运行的 900。

mag*_*981 2

WinLogonInit 阶段很慢。

此子阶段中发生的情况
当 SMSSInit 完成并启动 Winlogon.exe 时,WinLogonInit 子阶段开始。在 WinLogonInit 期间,将出现用户登录屏幕、服务控制管理器启动服务并运行组策略脚本。当 Explorer 进程启动时,WinLogonInit 结束。

视觉提示WinLogonInit 在登录屏幕出现之前不久开始。它在桌面第一次出现之前结束。

WinLogonInit 性能漏洞许多操作在 WinLogonInit 期间并行发生。在许多系统上,此子阶段受 CPU 限制,并且具有大量 I/O 需求。在此阶段启动的服务的良好公民意识对于优化启动时间至关重要。服务可以声明依赖项或使用加载顺序组来确保它们按特定顺序启动。Windows 按串行顺序处理加载顺序组。早期加载顺序组中的服务初始化延迟会阻止后续加载顺序组,并且可能会阻止引导过程

在Windows 性能分析器 (wpa.exe)中打开捕获的 trae并应用FullBoot.Boot.wpaprofile转到通用事件 - 通用完全启动表并展开Microsoft-Windows-Winlogon提供程序后,查找属于同一组的任务(任务名称相同,但 1 个带有 Start 的事件和 1 个带有 Stop 的事件) Opcode)并查看时间列并从结束时间中减去开始时间以获得整个持续时间。现在的任务还很漫长。

在示例中,RequestCredentials(输入密码)和 AuthenticateUser(检查输入的数据)花费的时间太长。

在此输入图像描述