Ядро
Ядро ОС Windows NT реагирует на прерывания и исключения,
занимается планированием потоков, сохранением и восстановлением контекстов
потоков, направляет потоки на выполнение, выполняет межпроцессорную синхронизацию,
предоставляет набор сервисов, элементарных объектов и интерфейсов, используемых
компонентами исполнительной системы. Большая часть ядра зависит от типа
процессора.
Драйверы NT и компоненты исполнительной системы вызывают внутренние процедуры,
обеспечиваемые ядром, названия которых начинаются с префикса Ke(rnel)
-ядро.
Ядро экспортирует два основных типа объектов ядра: объекты-диспетчеры
(dispatcher objects) и управляющие объекты (control objects). Объекты
ядра отличаются от объектов исполнительного уровня, создаваемых и управляемых
менеджером объектов, и зачастую являются базисом для них.
Объект-диспетчер используется для планирования и синхронизации и имеет
атрибут, определяющий его состояние - «занят» или «свободен». Объектами-диспетчерами
являются: события, мьютексы, семафоры и таймеры.
Управляющие объекты используются для управления системными операциями.
Управляющими объектами являются: АРС-объект (Asynchronous Procedure Call),
содержащий адрес процедуры асинхронного вызова и указатель на объект-поток,
который будет исполнять данный вызов; DPC-объект (Deferred Procedure Call),
содержащий адрес процедуры отложенного вызова; объект-прерывание, отвечающий
за установление соответствия между определенным вектором прерывания и
процедурой обработки прерывания (Interrupt Service Routine, ISR) драйвера устройства.