对象名称

内核模式对象已命名或未命名。 对象名称是一个 Unicode 字符串,用户模式和内核模式组件都可用于引用对象。 例如, \KernelObjects\LowMemoryCondition 是标准事件对象的名称,该对象在系统中的可用内存量较低时发出信号。

用户模式和内核模式组件都通过使用对象名称来打开对象的句柄。 所有后续操作都通过使用句柄来执行。

如果对象未命名,则用户模式组件无法打开其句柄。 内核模式的组件可以通过指针或句柄引用未命名的对象。

命名对象被组织到一个层次结构中。 每个对象都相对于父对象进行命名。 对象名称的每个组件以反斜杠字符开头。 例如, \KernelObjects\KernelObjects\LowMemoryCondition 的父对象。

只有某些类型的对象可以有子对象。 下面是一些示例:

  • 对象目录具有子对象。 对象管理器使用对象目录来组织对象。 例如 \KernelObjects 是一个包含标准事件对象的对象目录。 对象目录与磁盘上的实际目录不对应。 有关详细信息,请参阅 对象目录

  • 磁盘驱动器的设备对象具有与磁盘上的文件对应的子对象。

  • 表示目录的文件对象具有与目录中的文件对应的子对象。

  • WDM 驱动程序的设备对象有自己的命名空间,可以采用驱动程序定义的方式使用。 有关详细信息,请参阅 控制设备命名空间访问

文件具有相对于 \DosDevices 的对象名称。 例如,可以将文件 C:\Directory\File 指定为 \DosDevices\C:\Directory\File

例如,可以按如下所示描述对象名称的组件。

对象名称 DESCRIPTION

\DosDevices

对象目录。

\DosDevices\C:

表示 C: 驱动器的设备对象。

\DosDevices\C:\Directory

表示名为 C:\Directory 的目录的文件对象。

\DosDevices\C:\目录\文件

表示名为 C:\Directory\File 的文件的文件对象。

创建命名对象的驱动程序在特定对象目录中执行此作。 有关详细信息,请参阅 对象目录