Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > вопросы |
Автор: PILOT 19.6.2002, 00:14 |
Ну собственно вопросы: Что такое: PEPROCESS? PIRP? PDEVICE_OBJECT? NTSTATUS? СУВ. PS. "...речь женщины: ИДИ ОТ СЮДА! = ИДИОТ, СЮДА!..." |
Автор: Baa 19.6.2002, 13:10 |
Первые 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. |
Автор: PILOT 19.6.2002, 14:45 |
Baa, спасибо. Если есть еще информация либо ссылки, киньте на мыло [email protected] СУВ. |