カーネル モード オブジェクトは、名前付きまたは名前なしのいずれかです。 オブジェクト名は、ユーザー モード コンポーネントとカーネル モード コンポーネントの両方がオブジェクトの参照で使用できる Unicode 文字列です。 たとえば、\KernelObjects\LowMemoryCondition は、システム メモリの空き容量が少なくなったことを通知する標準イベント オブジェクトの名前です。
ユーザー モード コンポーネントとカーネル モード コンポーネントのどちらも、オブジェクト名を使用してそのオブジェクトへのハンドルを開きます。 続くすべての操作ではハンドルが使用されます。
オブジェクトに名前がないと、ユーザー モード コンポーネントではそのオブジェクトへのハンドルを開くことができません。 カーネル モード コンポーネントでは、ポインターまたはハンドルを使用して名前のないオブジェクトを参照できます。
名前付きオブジェクトは階層の形式で編成されます。 各オブジェクトの名前は親オブジェクトを基準にしています。 オブジェクト名を構成する各要素名は先頭が円記号です。 たとえば、\KernelObjects は \KernelObjects\LowMemoryCondition の親オブジェクトです。
一部の種類のオブジェクトのみが子オブジェクトを持つことができます。 次はその例の一部です。
オブジェクト ディレクトリには子オブジェクトがあります。 オブジェクト マネージャーでは、オブジェクト ディレクトリを使用してオブジェクトを整理します。 たとえば、\KernelObjects は、標準イベント オブジェクトを保持するオブジェクト ディレクトリです。 オブジェクト ディレクトリは、ディスク上に実在するディレクトリには対応していません。 詳しくは「オブジェクト ディレクトリ」を参照してください。
ディスク ドライブのデバイス オブジェクトには、ディスク上のファイルに対応する子オブジェクトがあります。
ディレクトリを表すファイル オブジェクトには、そのディレクトリにあるファイルに対応する子オブジェクトがあります。
WDM ドライバーのデバイス オブジェクトには、そのドライバーで定義された方法で使用できる独自の名前空間があります。 詳細については「デバイスの名前空間アクセスの制御」を参照してください。
ファイルには、\DosDevices を基準としたオブジェクト名があります。 たとえば、ファイル C:\Directory\File を \DosDevices\C:\Directory\File として指定できます。
たとえば、オブジェクト名の各要素を次のように記述できます。
オブジェクト名 | 説明 |
---|---|
\DosDevices |
オブジェクト ディレクトリ |
\DosDevices\C: |
C: ドライブを表すデバイス オブジェクト。 |
\DosDevices\C:\Directory |
ディレクトリ C:\Directory を表すファイル オブジェクト。 |
\DosDevices\C:\Directory\File |
ファイル C:\Directory\File を表すファイル オブジェクト。 |
名前付きオブジェクトを作成するドライバーは、その作成操作を特定のオブジェクト ディレクトリで実行します。 詳しくは「オブジェクト ディレクトリ」を参照してください。