翻译: Windows Internals: 第六章: 进程内部结构

进程内部结构
这段讲述了Windows 进程数据结构还列出了关键内核变量, 性能计数器, 方法和跟进程有关的工具.

数据结构
每个Windows porcess用一个可执行的进程块表示,除了包含许多跟进程有关的属性,一个EPROCESS块还包含了一个指向其他相关数据的指针.例如: 每个进程用

ETHREAD来表示一个或多个线程.EPROCESS块与其相关的数据结果被放在系统空间,但PEB是例外它存在于进程地址空间.

除了EPROCESS块,Windows子系统进程为每个执行Windows程序的Windows进程维护一个并列的结构. 当线程第一次调用一个Windows USER或者GDI以内核方式实现

的方法时,Windows子系统的内核模式部分为每个进程创建一个数据结构.

图6-1是一幅进程和线程数据结构的简化图, 这章会详细描述图中每个数据结构.

首先让我们注意这个进程块.
表6-1详细解释了在以上实验中的一些字段,包含了可以在这本书中其他地方找到更多信息的引用.

内核进程块(KPROCESS)是EPROCESS块的一部分, EPROCESS块有指针指指向PEB,PEB中包含更多更详细的关于进程的信息. 图6-3中显示了KPROCESS块.它包括了Windows需要安排线程的基本信息.

内核变量
表6-2列出了少数进程相关内核全局关键变量, 一会儿这些变量将在本章节创建进程的步骤中被描述到.

性能计数器
Windows维护了很多记数器,你可以用它们来追踪系统中进程的运行. 你可以通过编程或使用性能工具来获取这些记数器.表6-3列出了跟进程有关的计数器.

相关方法
因为引用的关系, 表6-4描述了某些应用到进程的Windows方法, 你可以查询Windows API文档进一步了解.

你可能感兴趣的:(翻译: Windows Internals: 第六章: 进程内部结构)