Handle Manager

The handle manager, in co-operation with the process manager, is responsible for managing BT_HANDLE objects and their associated handles.

Handle Manager API.

API Description

BT_CloseHandle()

Causes a HANDLE to be correctly closed, and free'd up.

Kernel-mode API.

API Description

BT_CreateHandle()

Allocates handle memory and associates a handle with the relevant process.

Design Overview

The handle manager forms lists of all handles associated with each process. All handles contain a BT_HANDLE_HEADER structure, which contains pointers to the relevant interface implementations, e.g. function pointers for writing data to the handle etc.

Further Reading

The full API is defined under:

lib/include/handles/bt_handle.h

See the implementation under:

lib/src/handles/bt_handles.c

Back