NikNet
Гость
|
|
« : 13-06-2005 13:04 » |
|
Вот не разу не слышал и не видел что бы в Драйвере можно было вызвать приревание
Это возможно? Если да не могли бы дать пример?
|
|
|
Записан
|
|
|
|
dachny
Гость
|
|
« Ответ #1 : 14-06-2005 06:39 » |
|
А зачем Можно просто IRQL поднять хоть до небес
|
|
|
Записан
|
|
|
|
NikNet
Гость
|
|
« Ответ #2 : 14-06-2005 14:07 » |
|
Не понил 8| Если я поднему IRQL до 31 то тогда я смогу простым оброзом вызвать приревание? Простым я имел введу Int Например Int21h
|
|
|
Записан
|
|
|
|
SlavaI
Главный специалист
Offline
|
|
« Ответ #3 : 14-06-2005 14:13 » |
|
ну естественно int "что-то" вызовет обработчик, вот только если он действительно от железяки- он в нее полезет и все тогда. А вызвать прерывание честным путем просто- пошли что-то в железяку на что она отвечает прыванием. А вобще вопрос странный- это практически бесполезная вещь. IRQL тут не при чем- он не вызывает естественно никакое аппаратное прерывание для конкретного девайса, это заблуждение начинающих. IRQL нужен для сигхронизации.
|
|
|
Записан
|
|
|
|
dachny
Гость
|
|
« Ответ #4 : 15-06-2005 07:43 » |
|
Я заблуждений не строю и с "IRQL тут не при чем- он не вызывает естественно никакое аппаратное прерывание для конкретного девайса, это заблуждение начинающих. IRQL нужен для сигхронизации." согласен полностью
Ноесли очень нада зачемто непонятно зачем вызвать ISR процедуру конкретного девайса можно повесить хук на кернелову функцию IoConnectInterrupt техника такая же как для NDIS хука и получить адрес ServiceRoutine а затем его дергать естествено подняв IRQL до девайс уровня
|
|
|
Записан
|
|
|
|
SlavaI
Главный специалист
Offline
|
|
« Ответ #5 : 15-06-2005 08:24 » |
|
ну вот и хорошо, все рассказали товарищу.
|
|
|
Записан
|
|
|
|
|