Ру-Сфера: Исследование защиты и обсуждение IT-безопасности

Windows Kernel Programming:Глава 4. Драйвер и взаимодействие с ним из пользовательского режима

  • 4 162
  • 9
В этой главе мы будем использовать многие концепции, которые мы изучили в предыдущих главах, и создадим простой драйвер.

Также в этой главе создадим клиент, для взаимодействия с нашим драйвером.
Мы установим драйвер и выполним в режиме ядра некоторую операцию, недоступную пользовательский режиме.

В этой главе:

Введение.
Инициализация драйвера.
Код клиента.
Создание и закрытие процедур отправки.
Программа отправки DeviceIoControl
Установка и тестирование.

1)Введение

Проблема, которую мы решим с помощью простого драйвера ядра, заключается в негибкости установки приоритетов потоков используя Windows API.
В пользовательском режиме приоритет потока определяется комбинацией его класса приоритета процесса со смещением для каждого потока, которое имеет ограниченное количество уровней.

Изменение класса приоритета процесса может быть достигнуто с помощью функции SetPriorityClass, которая принимает дескриптор процесса и один из шести поддерживаемых классов приоритетов...

Windows Kernel Programming:Глава 3.Основы программирования ядра windows

  • 2 465
  • 1
Предыдущие версии глав:
В этой главе мы углубимся в API, структуры и определения ядра.
Мы также рассмотрим некоторые механизмы, которые вызывают код в драйвере.
Наконец, мы объединим все эти знания, чтобы создать наш первый функциональный драйвер.

В этой главе:

Общие рекомендации по программированию ядра.
Отладка и сборки релизов.
API ядра.
Функции и коды ошибок.
Строки.
Динамическое распределение памяти.
Списки.
Объект драйвера.
Объекты устройства.

Итак начнем:

1)Общие рекомендации по программированию ядра

Для разработки драйверов ядра требуется Windows Driver Kit (WDK), где находятся соответствующие заголовки и необходимые библиотеки.

API ядра состоит из функций...

Windows Kernel Programming:Глава 2.Начало работы с инструментами разработчика ядра

  • 2 767
  • 6
Это вторая часть, с первой частью можно ознакомиться здесь:Windows Kernel Programming:Глава 1.Основные моменты и архитектура ядра

В этой главе рассматриваются основы, которые необходимы для разработки драйверов.
Вы установите необходимые инструменты и напишете первый драйвер, который можно загружать и выгружать.

В этой главе:

• Установка инструментов.
• Создание проекта драйвера.
• Описание процедур DriverEntry и Unload.
• Разработка драйвера.
• Простая трассировка.

1)Установка инструментов

В старые времена (до 2012 года) процесс разработки и сборки драйверов включал использование особого инструмента для сборки из комплекта драйверов устройств (DDK).
Нужно-было качать специальный пакет компиляторов, далее в командной строке собирать драйвер, не было никакой интеграции в Visual Studio.
Были некоторые обходные пути, но ни один из них не был ни...

Найти пользователя

Поиск по форуму

Последние сообщения

Верх Низ