Ядро
Ядро (Kernel) является «сердцем» NT и работает в тесном
контакте с уровнем аппаратных абстракций. Этот модуль, и первую очередь,
занимается планированием действий компьютерного процессора. Если компьютер
содержит несколько процессоров, то ядро синхронизирует их работу, чтобы
достичь максимальной производительности системы.
Ядро осуществляет диспетчеризацию нитей управления (иногда
их называют подзадачами, ответвлениями или потоками), которые являются
основными объектами в планируемой системе. Нити управления определяются в
контексте процесса, который включает адресное пространство, набор доступных
процессу объектов и совокупность выполняемых а контексте процесса нитей управления.
Объектами являются управляемые операционной системой ресурсы.
Ядро производит диспетчеризацию нитей управления таким
образом, чтобы максимально загрузить процессоры системы и обеспечить
первоочередную обработку нитей с более высоким приоритетом. (Всего существует
32 значения приоритета, которые сгруппированы в два класса приоритетов: real-time
и variable). Подобный подход позволяет достичь максимальной эффективности
операционной системы.
' Под компоненты исполняющей системы, такие как диспетчер
ввода/вывода и диспетчер процессов, используют ядро для синхронизации
действий. Они также взаимодействуют г ядром для более высоких уровней
абстракции, называемых объектами ядра; некоторые из этих объектов
экспортируются внутри пользовательских вызовов интерфейса прикладных программ
(API).
Объекты диспетчеризации (dispatcher objects)
характеризуются сигнальным состоянием (signaled или rransignalcd) и управляют
диспетчеризацией и синхронизацией системных операций. Эти объекты включают
события, мутанты, мутэксы, семафоры, нити управления и таймеры (events, mutants,
mutexes, semaphores, threads, timers).
Управляющие объекты (control objects) используются для
операций управления ядра, но не воздействуют на дисиетч ризацию или
синхронизацию. Управляющие объекты включают в себя асинхронные вызовы
процедур, прерывания, уведомления и состояния источника питания, процессы и
профили (asynhcronous procedure calls, interupts, power notifies, power statuses,
processes, profiles).
|