Показать сообщение отдельно
  #3  
Старый 26.10.2013, 17:14
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Цитата:
такт/машинный цикл/прерывание(ИОРКу) ... ГоТо L... Абортед:булеан - труе ор фальш
Не надо пользоваться терминами, если даже не знаешь, как их написать. Минуты две расшифровывал весь этот наркоманский бред.
По теме - это называется отладка. Есть аппаратные отладочные регистры, есть флаг Trace, генерирующий исключение после каждой команды.
Трассировать из третьего кольца прерывания невозможно, т.к. прерывание отправляется в ядро системы, на нулевое кольцо, и там системе уже не до всяких левых отладчиков. Также нельзя трассировать SysCall'ы.
Против отладки есть антиотладочные приемы. Так что полностью автоматически некоторые приложения не отладить.
Ежели надо трассировать вообще всё - можно смотреть в сторону эмуляторов, там теоретически это возможно. Но если отладчик на уровне эмулятора - придется как-то фильтровать поток исполнения, т.к. через отладчик будут проходить все процессы и система.
Также можно попробовать Syser - ядерный отладчик. У меня он к сожалению не заводится. Пытаться писать такое самому не советую - 147% угробишь систему.
И еще - сильно сомневаюсь, что даже не зная толком про прерывания получится сделать вменяемый отладчик и уж тем более уделать уже существующие. OllyDbg неплох, в IDA Pro есть еще и IDC/Pyton скрипты, через которые можно делать все что угодно непосредственно во время отладки (правда несколько медлительны эти скрипты).
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием