Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Использование IoConnectInterrupt  (Прочитано 12056 раз)
0 Пользователей и 1 Гость смотрят эту тему.
gryzun
Гость
« : 31-05-2004 11:14 » 

Подскажите пожалуйста смысл функции IoConnectInterrupt, а то возникли небольшие сомнения по поводу её использования. Какая разница между прямой модификацией нужного шлюза IDT и регистрацией ISR (Interrupt Service Routine) при помощи IoConnectInterrupt.
Записан
maaaaaad
Гость
« Ответ #1 : 01-06-2004 16:30 » 

какие сомнения?
Записан
gryzun
Гость
« Ответ #2 : 01-06-2004 19:39 » 

Сомнения по поводу того чем занимается эта функция: выполняет она только работу по модификации шлюза IDT, или же ещё сообщает системе о новом обработчике прерывания. То есть будет ли это то же самое если я "в ручную" модифицирую шлюз вместо вызова IoConnectInterrupt?
Записан
maaaaaad
Гость
« Ответ #3 : 02-06-2004 09:15 » 

смотря для каких целей тебу нужно использвать обработчик. Я так думаю что иницализация IDT происходит еще при загрузке, инициализируется таблица затычек-редиректов ISR назначение которых абстракция от платформы и инициализация контекста в котором будет работать установленный обработчик ISR ioconnectinterrupt (многие функции ядра не работаю без этого контекста, функция DbgPrint, например, вешала у меня систему, этим контекстом можно скорее назвать последовательность магических дествий, после которых можно пользоваться функциями ядра), менеджер расшаренных  прерываний, который анализирует возвращаемое значение обработчиков, блокировка PIC.... Сам ioconnectinterrupt idt не трогает. Внутри ioconnectinterrupt вызывается keInitializeInterrupt, что она делает - не смотрел.
Записан
gryzun
Гость
« Ответ #4 : 02-06-2004 19:09 » 

Не понятно о каком контексте идёт речь!
Цитата

многие функции ядра не работаю без этого контекста, функция DbgPrint, например, вешала у меня систему, этим контекстом можно скорее назвать последовательность магических дествий, после которых можно пользоваться функциями ядра
Записан
maaaaaad
Гость
« Ответ #5 : 03-06-2004 08:43 » 

я тоже не совсем это понимаю.... =)
что бы это объяснить надо довольно долго просидеть под отладчиком...
Записан
Mayor
Специалист

ru
Offline Offline

« Ответ #6 : 07-06-2004 02:32 » 

maaaaaad, по поводу отладчиков - чем пользуешься?
Записан

1n c0de we trust
gryzun
Гость
« Ответ #7 : 07-06-2004 18:19 » 

А рахве есть альтернатива? Использую SoftIce 4.05. Более новый к сожалению не работает. Возникает исключение при загрузке его видеодравера, которое в среде NT известно чем заканчивается.
Записан
maaaaaad
Гость
« Ответ #8 : 09-06-2004 11:04 » 

SoftIce, Ida

поищи пач для нового айса, к меня новый тоже не вставал, я здесь это обссуждал....а сейчас я непомню какой у меня стоит =)
Записан
gryzun
Гость
« Ответ #9 : 09-06-2004 17:24 » 

Искал. Не нашёл. Если где увидешь ссылку закинь. Под XP новый должен пойти, но у меня Win2000 Pro SP4 Build 2195. Старый впроче тоже работает абы как. Прикладные программы отлаживать невозможно: Loader32 вместо загрузки просто запускает их.
Записан
gryzun
Гость
« Ответ #10 : 10-06-2004 17:58 » 

Нашёл, скачал. Но пока не ставил. Некогда. Сдам сессию, вот тогда оттянусь!
Записан
Mayor
Специалист

ru
Offline Offline

« Ответ #11 : 27-06-2004 06:30 » 

Цитата

А рахве есть альтернатива?



Ну grozny юзает WinBuG с WMWare -  очень удобно можно сразу использовать с IDA, но мне тоже больше SoftICE нравится, нашел наконец-то я рекомендованый тобой icedump, теперь можно код и данные из SoftICE в IDA легко перекидывать, теперь бы еще додуматься как сгенереный в IDA файл в SoftICE перекинуть.
Записан

1n c0de we trust
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines