антивирус панда, asplinux, asplinux 11, файловый менеджер, домашняя бухгалтерия, .

compudesign.narod.ru

 
 На сайте
   Главная
   Links

 Разделы
системы управления базой данных
антивирус панда
офисные программы
avast 4.7
архиватор winzip
asplinux deluxe
Архиваторы
текстовые редакторы
asplinux server
asplinux deluxe
winrar
 Главная  Links
{img1} архиватор winrar
Не- обходимо защищать программу. Один из возможных подходов иллюстри- рует листинг 4-20. Фактически, получение положительного ответа на запрос int 2Fh AL=0 означает, что ответила некоторая TSR.
архиватор winzip
{img2} avast 4 server
ISR int 2Fh, показан- ная в листинге, отвечает на функцию AL=1 путем возврата ее сег- мента кодов в регистре ES. TSR, сделавшая начальный запрос, может использовать это значение для нахождения некоторой уникальной строки.
антивирус касперского
{img3} резервное копирование баз данных
Если строки совпадают между собой, то можно быть уверен- ным, что найдена правильная ISR. Такое расширение протокола многократного прерывания не явля- ется стандартным. Отсутствует гарантия того, что некоторая другая TSR будет выполняться в ответ на запрос int 2Fh AL=1.
архиватор winzip

перевод с русского на английский

антивирус панда, asplinux, asplinux 11, файловый менеджер, домашняя бухгалтерия, .
 

avast edition

Многократные прерывания обеспечивают гарантируемые правильные входы IVT для int 2Fh и протокол размещения программ TSR. Начальные входы IVT этого пре- рывания int 2Fh указывают на инструкцию IRET. Каждая TSR, ожидаю- щая использования мультиплексируемого прерывания, сначала ищет предыдущие загруженные копии своей программы, а затем устанавли- вает свою собственную программу ISR прерывания int 2Fh. Листинг 4-19. Размещение TSR путем использования произвольно выбранного вектора прерывания ---------------------------------------------------------------- NewISRVector EQU ?? ; заполнение номера вектора OldISRxx DD 0 ; здесь программа сохраняет старый вектор UniqueID DB 'уникальная строка' ; для идентификации ISR IDLength EQU $-UniqueID ; длина строки NewISRxx PROC FAR ; устанавливается программой инициализации ; ; ... ; все, что выполняет ISR ; iret NewISRxx ENDP Locate PROC NEAR mov al,NewISRVector ; al <== номер вектора mov ah,35h ; ah <== получение функции вектора ; прерывания int 21h ; запрос к DOS для вектора прерывания ret ; es:bx имеет адрес ISR LocateISR ENDP CheckISR PROC NEAR cmp bx,OFFSET NewISRxx ; существующее смещение - 4-32 - ; хорошее jnz done ; если не 0 -- нет mov si,OFFSET UniqueID ; si <== смещение UniqueID mov di,si ; di <== смещение UniqueID mov cx,IDLength ; cx <== длина идентификатора cld repnz cmpsb ; сравнение идентификаторов done: ret ; возврат : ; zr=1 ==> результат установлен CheckISR ENDP ; zr=0 ==> результат не установлен TSRResdnt PROC NEAR ; определяет резидентная ли TSR call LocateISR ; получение адреса ISR call CheckISR ; проверяет идентификатор ID ret ; и возвращает: ; zr=1 ==> результат установлен ; zr=0 ==> результат не установлен TSRResdnt ENDP ---------------------------------------------------------------- TSR сама осуществляет поиск резидентных копий путем загрузки уникального идентификатора в регистр AH, нуля в регистр AL и вы- полнения инструкции int 2Fh. Программа ISR 2Fh проверяет значение в регистре AH. Если ISR распознает идентификатор, то она устанав- ливает AL=00fh и возвращает управление по инструкции IRET; в про- тивном случае она переходит к ранее сохраненной ISR int 2Fh. В конце концов, либо будет достигнут конец этой цепочки, либо ISR распознает значение в регистре AH. Снова возможны конфликты. Для их разрешения TSR должна выб- рать дополнительные проверки. Для облегчения этой проверки можно расширить протокол прерывания int 2Fh, но при этом следует иметь в виду, что стандарты на дополнительные проверки отсутствуют.


система распознавания текста


 
 

CNews: Новости | e-Business | Hi-Tech | Telecom List.ru - каталог ресурсов интернет Directrix џ­¤ҐЄб жЁвЁа®ў ­Ёп
Hosted by uCoz