|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Янв 9, 2004 15:35:05 Как в драйверах режима ядра с ними вообще работать? Там же разные функции выполняются в разных контекстах. Я хочу сказать, что например DriverEntry в SYSTEM, а какой-нибудь DispatchControl в другом контексте. Как здесь быть? Пробовал переключать контексты KeAttachProcess() и KeDetachProcess() но ничего не вышло, т.к. снова же нужно запоминать где-то значение PEPROCESS, возвращаемое функцией GetCurrentProcess() Вообщем, вопрос такой - как работать с глобальными переменными в драйвере. |
|
|
Дата: Янв 9, 2004 23:21:51 Так дрова то грузятся в системное адресное пространство, а оно контекстно независимо, кроме очень маленьких областей типа области рабочего набора и гиперпространства. Так что обращайся к своей переменной и не боись. Можно даже при любом IRQL, т.к. по умолчанию дрова в неподкачиваемую память грузятся. |
|
|
Дата: Янв 11, 2004 16:23:37 Незнаю тогда, что это за прикол. Глобальная перeменная у меня типа СТРОКА, и она какого-то хрена сама изменяется, т.е. в ходе работы драйвера поверх нее записывается что-то еще. Такое может быть? P.S. Если вы не против, я могу код привести(только на Си). |
|
|
Дата: Янв 11, 2004 17:19:37 Поставь туда bpm и посмотри кто пишет. Код... приводи, поглядим. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.164 |