Библиотека Ntdll.dll

Автор: addministr от 19-05-2014, 10:49

Категория: Информация



Ntdll.dll является специальной библиотекой системной поддержки, предназначенной, главным образом, для использования DLL-библиотек подсистем. В ней содержатся функции двух типов:

- функции-заглушки, обеспечивающие переходы от диспетчера системных служб к системным службам исполняющей системы Windows;

- вспомогательные внутренние функции, используемые подсистемами, DLL-библиотеками подсистем и другими исходными образами.

Первая группа функций предоставляет интерфейс к службам исполняющей системы Windows, которые могут быть вызваны из пользовательского режима. К этой группе относятся более чем 400 функций, среди которых NtCreateFile, NtSetEvent и т. д. Как уже отмечалось, основная часть возможностей, присущих данным функциям, доступна через Windows API. Но некоторые возможности недоступны и предназначены для использования только внутри операционной системы. Для каждой из этих функций в Ntdll содержится точка входа с именем, совпадающим с именем функции. Код внутри функции содержит зависящую от конкретной архитектуры инструкцию, осуществляющую переход в режим ядра для вызова диспетчера системных служб, который после проверки ряда параметров вызывает настоящую системную службу режима ядра, реальный код которой содержится в файле Ntoskrnl.exe. Ntdll также содержит множество вспомогательных функций, таких как загрузчики образов (префикс Ldr), диспетчер динамической области памяти и функции обмена данными между процессами подсистемы Windows (префикс Csr). Ntdll включает также общие подпрограммы библиотеки времени выполнения (префикс Rtl), поддержку отладки в пользовательском режиме (префикс DbgUi) и отслеживания событий для Windows (EventTracingforWindows) (префикс Etw), а также диспетчер асинхронных вызовов процедур и исключений пользовательского режима (APC). И наконец, в Ntdll находится небольшой поднабор подпрограмм времени выполнения языка C (CRT), ограниченный подпрограммами, являющимися частью строковых и стандартных библиотек (в качестве примера можно привести подпрограммы memcpy, strcpy, itoaи т. д.).



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

Архив | Связь с админом | Конфиденциальность

RSS канал новостей     Яндекс.Метрика