线程对象简介

用户模式线程对象表示当前进程中的执行路径。 每个用户模式线程对象都是通过使用嵌入式内核模式线程对象来实现的。

内核模式线程对象是内核定义的调度程序对象类型的实例。 它表示的线程是操作系统中的基本可计划实体。

线程对象:

  • 由内核调度执行。

  • 在任何给定时刻具有以下属性:

    • 调度状态

    • priority

    • 上下文

    • (内核或用户) 执行模式

    • 亲和力

  • 是“由”一个进程对象拥有,但可以把自己附加到另一个进程的地址空间。

通常,大多数驱动程序在当前正在运行的线程的上下文中执行,即在任意线程上下文中执行。 虽然文件系统驱动程序可以为其自己的设备专用线程创建独立进程,但文件系统通常避免设置驱动程序创建的进程和线程,以节省系统内存并避免上下文切换的开销。

FSs (和其他驱动程序) 可以设置设备专用 (系统进程) 线程和/或 FS 可以使用系统工作线程(如果需要在其中执行特定于驱动程序的线程上下文)。 驱动程序使用内核模式 PsXxx 例程来创建进程和/或设备专用线程。 FS 调用 ExXxx 例程以使用系统工作线程。