启动程序是按照什么顺序加载的?

启动程序是按照什么顺序加载的?

Windows 10 启动程序是否按特定顺序启动,例如按字母顺序或 CPU 影响顺序,还是全部同时启动?

是否存在特殊情况,程序会优先于其他程序,例如出于安全目的首先加载 Windows Defender?

答案1

Windows 在启动时会并行但分组启动这些程序,如下所示:

  • Windows 启动设备驱动程序,其Start值等于 0
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services

  • Windows 自动启动服务和驱动程序,其Start值等于 2
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services

  • Windows 延迟自动启动服务和驱动程序,其Start值等于 2 且DelayedAutostart等于 1:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services

  • 仅运行一次服务:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce

  • 永久运行服务:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices

用户登录后顺序如下:

  • 通知登录事件:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify

  • 用户初始化:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit

  • 壳:
    HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell

  • ShellServiceObjectDelayLoad指向CLSID InProcServer:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad

  • RunOnce 本地机器密钥:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx

  • 永久运行:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

  • RunOnce 当前用户密钥(主要用于安装):
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce

  • 探索者奔跑:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run

  • 加载密钥(已弃用):
    HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows\load
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows

  • 共享任务调度器:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SharedTaskScheduler

  • AppInit_DLL:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows

  • 所有用户启动文件夹:

    C:\Users\All Users\Start Menu\Programs\Startup
    
  • 用户配置文件启动文件夹:

    C:\Users\username\Start Menu\Programs\Startup
    

资料来源:

相关内容