能力值:
( LV4,RANK:40 )
|
-
-
26 楼
你说system是系统内核本身,我就越来越糊涂了。
虽说是0号进程(空闲进程),实际上存在Kprocess,不像是虚拟的。
不同点:相对system权限来说,这个R3被拒绝访问,线程更多,无分页内存。
相同点:有ntkrnlpa(windbg看到的是另一个)的线程,看起来更像是寄生的。
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
楼主整理的挺好的,辛苦啦
|
能力值:
( LV12,RANK:250 )
|
-
-
28 楼
0号进程管理0号线程的。每个Cpu都有一个0号线程,0号线程是空闲线程,当Cpu没有其他线程需要运行的时候,就会让0号线程运行。这也说明了为什么0号进程显示的Cpu占用率代表Cpu空闲率了。
(0号进程是有EPROCESS的,只是没法通过Pid找到它)
另外线程问题,内核线程都属于system进程的(除了0号线程)。
为什么说system是系统本身呢?有一下几点证明:
1. system进程是没有实体的,并且从字面上和对该进程的描述(NT Kernel & System)上可以说明。
2. system没有用户态模式,system是一个系统内核进程。全系统只有两个:Idle和system。
3. 所有内核线程都归system管理
分页内存和未分页内存是由内核中全局变量指定的,在system进程信息中体现不出来(上一个跟帖说的有错误啊,不好意思~)
不知道能否解决你的疑惑
|
能力值:
( LV12,RANK:250 )
|
-
-
29 楼
用windbg看一下进程信息会有更好的理解效果
0号进程:!process poi(PsIdleProcess) f
system进程:!process poi(PsInitialSystemProcess) f
|
能力值:
( LV4,RANK:40 )
|
-
-
30 楼
我的理解:
1 0,4号进程都是内核的宿主(system也能被R3进程申请分页内存),哪个进程的非分页内存里的才是存放内核映像。
2. 我发现ntdll,ole等有仅存在于Idle的线程。
3. 另外我想知道userinit的父进程是?为什么不是system进程,这进程退出得太快很难查。
无论如何在这里总算学到了不少。
|
能力值:
( LV12,RANK:250 )
|
-
-
31 楼
1. system要在R3申请分页内存需要一些特殊技巧吧(没试过,system是没有PEB的,就是申请了也没多大用)。system和idle进程中都不会有存放内核镜像。非分页内存由内核的全局变量维护,不存在system和0号进程的VadRoot 中。另外,内核镜像不是都存放在非分页内存中。nt模块的代码有一部分是存放在非分页内存的如.text段, 有一部分是存在分页内存里的如PAGE段,还有一部分是存放在分页内存并可抛弃如INIT段,这个由PE的段头属性决定。
2. 这个是不可能的吧,idle没有R3的内存布局,也没PEB,也不能被用户态访问,idle进程中更不能存在ntdll,ole模块。不知道你用什么工具看的,或者运行什么软件导致这样的情况,给介绍一下 。
3. userinit进程是用户初始化进程,是在用户登录后,做初始化工作用的。所以他的父进程是winLogin.exe。
|
能力值:
( LV4,RANK:40 )
|
-
-
32 楼
好吧,我承认我才学疏浅,做个渔人比做个愚人要好
1. 我用NtAllocateVirtualMemory向system申请的内存,提下权就行了
2. 我用Kernel Detective查看的线程;若用XT才无语,system模块有ntdll.dll存在
3. 据我了解父进程为system,子进程也会一样。因此我对所用的PS API甚感兴趣。
|
能力值:
( LV2,RANK:10 )
|
-
-
33 楼
Mark一下,手机不方便阅读
|
能力值:
( LV12,RANK:250 )
|
-
-
34 楼
只有相互探讨,才能融汇贯通。 。理不辨不明~。有兴趣加入群么?151843490。探讨windows内核技术的~
|
能力值:
( LV12,RANK:250 )
|
-
-
35 楼
1. 你是对的
2. 用Kernel Detective看idle线程列表,里面显示的是所有的线程。所属idle的都是线程ID==0的线程。system存在ntdll.dll不奇怪,是为了让其他进程能够使用ntdll.dll预先映射到system进程中的。system本身是不使用该模块的。
3. userinit父进程是winlogin.exe,这个我是看《windows内核原理与实现》中说的。我没实际测试,
交流是学习最快的方法,我不是在炫耀自己知道的多,自己知道的不一定是对的,这也是我来看雪的原因。希望能与大家相互交流,让自己知道存在哪些不足,并验证自己脑子里记得东西哪些是错的。
如有冒犯请多包涵 你说的很对”做个渔人比做个愚人要好“,我来看雪也是不想做个愚人
|
能力值:
( LV8,RANK:120 )
|
-
-
36 楼
学习了 楼主辛苦
|
能力值:
( LV2,RANK:10 )
|
-
-
37 楼
mark
支持一下
|
能力值:
( LV9,RANK:170 )
|
-
-
38 楼
不错,支持一下!.
|
能力值:
( LV2,RANK:10 )
|
-
-
39 楼
感谢楼主 先收藏了
|
能力值:
( LV2,RANK:10 )
|
-
-
40 楼
我觉得写的很不错。
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
不错不错,学习了。
|
能力值:
( LV12,RANK:250 )
|
-
-
42 楼
对本帖进行了重新编辑,非常感谢与各位的探讨。发现本帖中确实存在错误。主要是从启动到登陆各个进程启动的顺序和时机不正确。
现已对该问题进行了修正。详见本帖。
|
能力值:
( LV4,RANK:50 )
|
-
-
43 楼
论坛迁移,丢了一些楼层吧~~ 内容值得回味
|
能力值:
( LV2,RANK:10 )
|
-
-
44 楼
mark
|
能力值:
( LV2,RANK:10 )
|
-
-
45 楼
此类帖子严重点赞
|
能力值:
( LV1,RANK:0 )
|
-
-
46 楼
把windows操作系统主要的进程,启动顺序详细梳理给了大家,给力。
|
能力值:
( LV1,RANK:0 )
|
-
-
47 楼
winlogin.exe,应该是 winlogon.exe吧
|
能力值:
( LV4,RANK:50 )
|
-
-
48 楼
感谢分享!
|
|
|