· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ASSEMBLER —› Отладочные регистры

<< . 1 . 2 .

Посл.отвђт Сообщенiе


Дата: Апр 21, 2004 20:13:02

и на том спасибо...
перестраховываться всетаки надо...
если универсальность нужна...

ну в общем устаканились....
теперь будем извлекать адрес откуда было обращение и
другую инфу о процессе, который вызвал прерывание...
в общем интересного еще много...

P.S. поздравляю ТОФ - овцев (для тех кто понял !!!)


Дата: Апр 27, 2004 20:46:12 · Поправил: Безпощадный даос

все бы ничего только не будет у Вас ничего работать...
потому что не правильно...
работаем в win2000. админом, в драйвере в ринг 0
берем такой код...
	SIDT diskr
	mov eax,dr7	
	mov old_dr7,eax
	jmp rrr	
assa db 1	
diskr	db 	0,0,0,0,0,0,0,0
mama	db 	0
old_dr7	dd 	0
rrr:
	mov eax,dword ptr [diskr+2] 
	add eax,8 
	mov edx,go
	mov [eax],dx
	shr edx,16
	mov [eax+6],dx
	mov eax,offset assa 
	mov dr0,eax
	mov eax,dr7 	
	or eax,000030101h
	mov dr7,eax
	mov assa,al 
	mov eax,old_dr7
	mov dr7,eax
      mov al,byte ptr mama
int 3	
	jmp sss
go:
	mov mama,5
	iret

sss:	


поидее после срабатывания (int 3) и вываливания в айс
в регистре al мы должны увидать 5-ку - а там ее нет...
дело становится совсем запутанным, потому, как отлаживать это совсем не возможно.

пролистал еще раз book и нашел - типа если не через TSS идет переключение на код обработчика прерывания, а как у меня, то обработчик по ссылке (go) имеет доступ только к стэку !!! , причем в зависимости от содержимого регистров CR - обработка идет аж по 4-м разным алгоритмам, с кодами ошибок и без... в общем мужики - дело путаное, причем в основном литература балует недоговорками, особенно в работе проца в защищенном режиме.


Дата: Апр 27, 2004 20:50:29

поидее после срабатывания (int 3) и вываливания в айс
в регистре al мы должны увидать 5-ку - а там ее нет...


Это ты мешаешь грешное с праведным.
Айс тебе тут не помощник. Кто может гарантировать, что перехваченное int 3 айсом не сделать чего-нибудь эдакого? Единственный надеждный способ отладки в данных условиях - это DbgPrint. Наставь DbgPrint в свой код и смотри, чего тебе будет выдано.
И еще я упроно не догоняю при чем тут TSS... Придется ведь когда-то самому разбираться...


Дата: Апр 28, 2004 21:32:40

я вот собирался - теперь точно собирусь ...
завтра книжку посканирую - вышлю... доки...
у меня книжек за 14 лет собралось !!!

в общем тама - в самом ядре проца что то незатронутое творится... насколько я понял можно творить глобальное...
вплоть до полного контроля системы с точностью до машинной команды...(если непонятно пишу так это уже от весеннего обострения паранои!!!) хотя есть такая технология... я ее уже 5 лет толкаю - никому нафиг ненадо... гибрид отладчика, дизассемблера и экспертной системы...

ну да ладно...кинь мыло куда доки слить !!!


Дата: Апр 28, 2004 21:39:51

Какие доки?


Дата: Апр 30, 2004 14:58:23

ну про переключение задач в проце, обработку исключений, TSS и все такое... описания много где есть но тут давольно подробно !!! от тов. РОВДО.А.А.

<< . 1 . 2 .


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.095