为什么大多数进程都将 explorer.exe 作为其父进程

dev*_*v65 2 windows

我多次列出了正在运行的进程,发现其中大多数都是 explorer.exe 的子进程,并且 explorer.exe 的父进程似乎没有运行,为什么会这样?

Vic*_*orV 5

用户登录后,由userinit进程创建explorer进程。Userinit 执行一些用户环境的初始化(例如运行登录脚本和应用组策略),然后在注册表中查找 Shell 值并创建一个进程来默认运行系统定义的 shell \xe2\x80\x93,资源管理器.exe。然后 Userinit 退出。这就是为什么Explorer.exe被各种没有父进程\xe2\x80\x93的进程资源管理器显示,其父进程已退出。-- 参考\nwiki File_Explorer

\n

Windows 启动进度

\n

从图中可以看出,explorer.exe是由userinit.exe启动的,而userinit.exe最后退出,所以explorer.exe没有父进程。

\n

由于 Windows 使用 explorer.exe 来启动启动进程,因此所有正常进程都是 explorer.exe 的子进程,除非子进程因父进程退出而变得无父进程(孤立进程)。

\n

因为所有新程序都是由在用户桌面上运行的用户启动的,所以它们都是资源管理器的子程序。

\n

进程树

\n

在此输入图像描述

\n