Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> вопросы, разбираю чужой код 
:(
    Опции темы
PILOT
Дата 19.6.2002, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54



Ну собственно вопросы:
Что такое:
PEPROCESS?
PIRP?
PDEVICE_OBJECT?
NTSTATUS?

СУВ.

PS. "...речь женщины: ИДИ ОТ СЮДА! = ИДИОТ, СЮДА!..."


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
Baa
Дата 19.6.2002, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва

Репутация: 8
Всего: 12



Первые 3 - это указатели на что-то, а последние - это код возврата, точнее большенство функций возвращают тип NTSTATUS
вот тебе структура PIRP ( подробнее могу по мылу, а вообще все это есть в NTDDK)
typedef struct _IRP {
 .
 .
 PMDL MdlAddress;
 ULONG Flags;
 union {
   struct _IRP *MasterIrp;
   .
   .
   PVOID SystemBuffer;
 } AssociatedIrp;
 .
 .
 IO_STATUS_BLOCK IoStatus;
 KPROCESSOR_MODE RequestorMode;
 BOOLEAN PendingReturned;
 .
 .
 BOOLEAN Cancel;
 KIRQL CancelIrql;
 .
 .
 PDRIVER_CANCEL CancelRoutine;
 PVOID UserBuffer;
 union {
   struct {
   .
   .
   union {
     KDEVICE_QUEUE_ENTRY DeviceQueueEntry;
     struct {
       PVOID DriverContext[4];
     };
   };
   .
   .
   PETHREAD Thread;
   .
   .
   LIST_ENTRY ListEntry;
   .
   .
   } Overlay;
 .
 .
 } Tail;
} IRP, *PIRP;

А вот что пишут про DEVICE_OBJECT
A device object represents a logical, virtual, or physical device for which a loaded driver handles I/O requests. Every kernel-mode driver must call IoCreateDevice one or more times from its AddDevice routine to create its device object(s).

A device object is partially opaque. Driver writers must know about certain fields and system-defined symbolic constants associated with device objects because their drivers must access these fields through the device object pointer returned by IoCreateDevice and passed to most standard driver routines. The following fields in device objects are accessible to drivers.

А вот про процесс

process object
A Kernel-defined control object type, representing the virtual address space and control information necessary for the execution of a set of thread objects. A user-mode process object defines the base priority, default affinity, and directory table base value for its threads and for any child processes it creates. Every user-visible process object is implemented through the use of an embedded kernel-mode process object.
A kernel-mode-only process object must be initialized before any thread objects that belong to the process.


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
PILOT
Дата 19.6.2002, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54



Baa, спасибо.
Если есть еще информация либо ссылки, киньте на мыло [email protected]

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0672 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.