Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Сведения о интерфейсах программирования, которые драйвер может реализовать или вызвать, см. в Kernel-Mode справочнике по драйверу.
В этом разделе содержатся общие понятия, помогающие понять программирование в режиме ядра и описывать конкретные методы программирования ядра. Общие сведения о драйверах Windows см. в статье "Начало разработки драйверов Windows", в котором представлен обзор компонентов Windows, перечислены типы драйверов устройств, используемых в Windows, обсуждаются цели драйверов устройств Windows и рассматриваются универсальные примеры драйверов устройств, включенных в комплект.
В этом разделе содержатся концептуальные сведения, описывающие и помогающие создавать драйверы в режиме ядра.
Обзор, содержащий следующее:
Каталог примеров драйверов Kernel-Mode
Рекомендации по разработке драйверов ядра, скомпилированные командой Microsoft Surface
Kernel-Mode компоненты описывают основные управляющие программы режима ядра и компоненты операционной системы Windows.
Компонент Описание Менеджеры Диспетчер объектов Windows Kernel-Mode Управляет объектами: файлами, устройствами, механизмами синхронизации, разделами реестра и т. д. Диспетчер памяти Windows Kernel-Mode Управляет физической памятью для операционной системы. Диспетчер процессов и потоков Windows Kernel-Mode Управляет выполнением всех потоков в процессе. Диспетчер ввода-вывода windows Kernel-Mode Управляет взаимодействием между приложениями и интерфейсами, предоставляемыми драйверами устройств. Windows Kernel-Mode Plug and Play Manager Подсистема диспетчера ввода-вывода диспетчера подключаемых устройств (PnP) позволяет компьютеру распознавать, когда устройство добавляется в систему. Windows Kernel-Mode Power Manager Управляет упорядоченным изменением состояния питания для всех устройств, поддерживающих изменения состояния питания. Диспетчер конфигураций Windows Kernel-Mode Управляет реестром, например мониторинг изменений в реестре или регистрация обратных вызовов для определенных данных реестра. Диспетчер транзакций ядра Windows Kernel-Mode Реализует обработку транзакций в режиме ядра. Охранный эталонный монитор Windows Kernel-Mode Предоставляет подпрограммы для драйвера для работы с управлением доступом. Библиотеки Библиотека ядра Windows Kernel-Mode Реализует основные функции, от которых зависит все остальное в операционной системе. Ядро Microsoft Windows предоставляет базовые низкоуровневые операции, такие как планирование потоков и обработка аппаратных прерываний. Библиотека поддержки руководителей Windows Kernel-Mode Относится к компонентам режима ядра, предоставляющим различные службы драйверам устройств, включая управление объектами, управление памятью, управление процессами и потоками, управление входными и выходными данными и управление конфигурацией. Библиотека Windows Kernel-Mode Run-Time Набор общих служебных функций, необходимых различным компонентам режима ядра. Библиотека безопасных строк Windows Kernel-Mode Безопасная строковая библиотека для обеспечения большей безопасности в разработке в режиме ядра. Библиотека DMA для Windows Kernel-Mode Библиотека прямого доступа к памяти (DMA) для разработчиков драйверов устройств. Библиотека HAL для Windows Kernel-Mode Аппаратный уровень абстракции (HAL) для разработки драйверов в режиме ядра. Библиотека CLFS для Windows Kernel-Mode Система ведения журнала транзакций — общая файловая система журналов (CLFS). Библиотека Windows WMI Kernel-Mode Общий механизм управления компонентами, называемый инструментарием управления Windows (WMI). Написание драйверов WDM и введение в WDM предоставляют сведения, необходимые для записи драйверов с помощью модели драйверов Windows (WDM).
Объекты устройств и другие статьи в объектах устройств и стеках устройств описывают, как операционная система представляет устройства объектами устройства.
Управление памятью для драйверов Windows показывает, как драйверы режима ядра выделяют память для таких целей, как хранение внутренних данных, буферизация данных во время операций ввода-вывода и совместное использование памяти с другими компонентами режима ядра и пользовательского режима.
Безопасность От контроля доступа и привилегий устройства к языку определения дескриптора безопасности (SDDL) для объектов устройств убедитесь, что драйверы максимально безопасны.
Обработка irPs описывает, как драйверы в режиме ядра обрабатывают пакеты запросов ввода-вывода (IRPs).
DMA Прямой доступ к памяти (DMA) является критически важным аспектом разработки драйверов, а статьи в этом узле охватывают DMA от A до Z.
Объекты контроллера представляют физический контроллер устройства с подключенными устройствами.
Обработчики прерываний (ISR) обрабатывают прерывания для драйверов физических устройств, которые получают прерывания.
Message-Signaled прерывания вызываются путем записи значения в конкретный адрес памяти.
Отложенные вызовы процедур (объекты DPC) могут быть помещены в очередь от ISR и выполняются позже и на более низком IRQL, чем в ISR.
Plug and Play (PnP) фокусируется на системной поддержке программного обеспечения для PnP и о том, как драйверы используют эти поддержку для реализации PnP.
Управление питанием описывает архитектуру, которая обеспечивает комплексный подход к управлению питанием системы и устройств.
Инструментарий управления Windows (WMI) — это расширения для драйвера режима ядра, что позволяет драйверу стать поставщиком WMI. Поставщик WMI делает данные измерения и инструментирования доступными для потребителей WMI, таких как приложения в пользовательском режиме.
Методы программирования драйверов Для драйверов программирования в режиме ядра Windows требуются методы, которые иногда значительно отличаются от программирования в пользовательском режиме.