Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.04.19;
Скачать: CL | DM;

Вниз

процесс отладки   Найти похожие ветки 

 
Unknown user ©   (2009-02-18 22:35) [0]

Расскажите, пожалуйста, как работают отладчики. Я знаю, что процесс создается с атрибутами безопасности, позволяющими отладку и отладчик присоединяется к процессу. Вот в принципе и все, что я знаю. Никогда не вникал в подробности, не было необходимости. Сейчас заинтересовался. Как отладчик останавливает процесс в точке останова, как получает значения переменных, как вообще он связывает исходные тексты с бинарным файлом?


 
clickmaker ©   (2009-02-18 22:44) [1]

все дело в волшебном прерывании Int 3 и коде 0xCC, который собственно и представляет точку останова в терминах ассемблера.


> как вообще он связывает исходные тексты с бинарным файлом?

в отладочную версию экзе включается отладочная информация


 
Сергей М. ©   (2009-02-18 22:47) [2]


> Unknown user ©   (18.02.09 22:35)
> как работают отладчики


Все на свете  или конкретно дельфийский ?


 
Unknown user ©   (2009-02-19 00:55) [3]

>Все на свете  или конкретно дельфийский ?

желательно про дельфийский


 
Unknown user ©   (2009-02-19 00:58) [4]

>в отладочную версию экзе включается отладочная информация

а можно детали? то есть для каждой инструкции имеется указание на нее в исходных текстах? где об этом можно почитать? и насколько сложно написать свою IDE, используя тот же дельфийский компилятор?


 
Сергей М. ©   (2009-02-19 08:39) [5]


> про дельфийский


Дельфийский для перехвата управления в точке останова осуществляет сплайсинг - подмену первого байта первой инструкции оператора на байт со значением КОП стандартной отладочной ловушки Int 3 ($CC).


 
Сергей М. ©   (2009-02-19 08:51) [6]


> Unknown user ©   (18.02.09 22:35)  

http://www.kv.by/index2008061108.htm
http://www.xakep.ru/magazine/xA/083/112/1.asp


 
Unknown user ©   (2009-02-19 21:20) [7]

спасибо, очень полезные ссылки, все просто расписано


 
Unknown user ©   (2009-02-20 01:29) [8]

Однако остался еще один интересующий вопрос на который я не нашел ответа. Делфийский компилятор dcc32 можно без проблем использовать без IDE, можно ли без IDE в своей программе использовать делфийский отладчик, имея исходные тексты на Делфи. Требуется пошаговая отладка с возможностью просмотра значений переменных.


 
Petr V. Abramov ©   (2009-02-20 01:36) [9]


> clickmaker ©   (18.02.09 22:44) [1]


> все дело в волшебном прерывании Int 3 и коде 0xCC, который
> собственно и представляет точку останова

ты уверен, что именно так, а не на регистрах DR0..DR3 x386+ ? :)
я не ругаюсь, просто спрашиваю :)


 
Pavia ©   (2009-02-20 02:51) [10]


> ты уверен, что именно так, а не на регистрах DR0..DR3 x386+
> ? :)

Регистров только 4, а точек останова сколько хочешь. Так что 0cch.


 
Сергей М. ©   (2009-02-20 09:18) [11]


> Unknown user ©   (20.02.09 01:29) [8]


Теоретически можно - ядро дельфийского отладчика, например, в D7 являет собой обычный COM-сервер автоматизации, представленный именем "Borland.Dbk".


 
Unknown user ©   (2009-02-20 22:56) [12]

А если писать самому отладчик пользовательского уровня для Делфи приложений, вы можете описать основные части такой программы? Есть примеры подобных решений?



Страницы: 1 вся ветка

Текущий архив: 2009.04.19;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
2-1236018375
DanilPo
2009-03-02 21:26
2009.04.19
Проблема с RadioButton


15-1226079166
123-ий
2008-11-07 20:32
2009.04.19
Локальная сеть так её растак :)


15-1235029054
ДимДимыч
2009-02-19 10:37
2009.04.19
оповещения в SharePoint Services


6-1202307450
Urvin
2008-02-06 17:17
2009.04.19
Исправить простейшую программу на Indy,


3-1219219719
Max Zyuzin
2008-08-20 12:08
2009.04.19
ADO. переподключение после обрыва соединения