BIGLIB
  большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно
 
АСТРОЛОГИЯ
  книги по астрологии
 
КРИМИНАЛ
  книги про криминал
 
ДЕТЕКТИВЫ
  детективы известных
   писателей
 
ФАНТАСТИКА
  фентези, фантастика,   фантастические повести
 
ПРИКЛЮЧЕНИЯ
  книги про приключения,   путешествия
 
ПОЛИТИКА
  книги про политиков,   репрессии
 
ПСИХОЛОГИЯ
  разнообразная литература   по психологии
 
КЛАССИКА
  классическая литература
 
КОМПЬЮТЕРНАЯ
  ЛИТЕРАТУРА
  про компютерное железо,   документация, языки   программирования
 
РЕЛИГИЯ, АТЕИЗМ
  книги про религию
 
ФИЛОСОФИЯ
  книги, которые заставляют   задуматься над   окружающим тебя миром.
 
ЭНЦИКЛОПЕДИИ
  самые интересные   энциклопедии на
   разные темы
 
МЕДИЦИНА
  медицинские книги,   методички,
   народные лечебники
 
КУЛИНАРИЯ
  рецепты тортов,   консервирование,
  все о спиртных
  напитках.
 
СТИХИ
  стихи популярных и не   очень авторов
 
ТВОРЧЕСТВО
  народное творчество,   стихи, песни и т.д.
 
ЮМОР
  анекдоты, приколы,   смешные истории
 
ЛЮБОВНЫЙ РОМАН
  мир высоких чувств и   любовных грез
 
ЭРОТИКА
  эротические рассказы,   книги о технике секса,   кама-сутра и др.




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Turbo Debugger 3.0 #3-3
Автор ""
Размер 414526 Байт
Страница 20 из 43
СКАЧАТЬ КНИГУ ЦЕЛИКОМ


            7. Когда в вашей программе встретится точка останова, иници-
               ализируется Турбо отладчик,  а код вашей программы  выве-
               дется  в  соответствующей точке.  Теперь вы можете начать
               отладку резидентной части программы.  (Кроме того, вы мо-
               жете повторно войти в отладчик из DOS,  дважды нажав кла-
               виши Ctrl-Break.)

            Второй метод отладки резидентной части программы  состоит  в
       выполнении резидентной части из командной строки DOS, и последую-
       щего использования Турбо отладчика для отладки области  оператив-
       ной памяти, содержащей TSR.

            При использовании  данного  метода  вам  понадобится утилита
       TDMEM,  которая выводит на экран схему использования  оперативной
       памяти, и TDDEV, которая дает адрес сегмента, где загружена рези-
       дентная часть вашей программы TSR.

            Чтобы использовать данный метод:

            1. Выполните шаг 1 и 2 первого метода для компиляции или ас-
               семблирования  кода  программы  и  для  выделения таблицы
               идентификаторов (если это необходимо) и  помещения  ее  в
               файл .TDS.  Если нужно, запустите также утилиту TDSTRIP с
               параметром -s для преобразования вашей резидентной  прог-
               раммы из формата .EXE в формат.COM.

            2. Запустите вашу резидентную программу в ответ на подсказку
               DOS, набрав ее имя. Например, если ваша резидентная прог-
               рамма называется TSR.EXE,  наберите TSR в ответ на  подс-
               казку DOS и нажмите клавишу Enter.

            3. Запустите утилиту TDMEM,  которая выводит схему использо-
               вания памяти. Запомните адрес сегмента, где загружена ре-

       TDeb 3.0 #3-3                = 87 =

               зидентная  часть  вашей программы (мы обозначим его,  как
               Seg).

            4. Далее нужно определить объем  таблицы  идентификаторов  в
               памяти,  которую  требуется  выделить Турбо отладчику при
               его вызове.  Для этого  запомните  размер  вашей  таблицы
               идентификаторов  (то есть размер файла .TDS),  воспользо-
               вавшись командой DOS DIR.

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

               Обычно нужно выделять примерно в 1.5 раза  больше памяти,
               чем занимает на диске файл .TDS.  Турбо отладчик сообщает
               вам,  когда вы выделяете слишком мало памяти для  таблицы
               идентификаторов, выводя сообщение:  "Not enough memory to
               load symbol table" ("Для загрузки таблицы идентификаторов
               недостаточно памяти"). Обычно это происходит при выполне-
               нии команды FileіSymbol Load (ФайліЗагрузка таблицы иден-
               тификаторов).

            5. Загрузите Турбо отладчик,  не задавая имя файла и выделив
               память для таблицы идентификаторов  с  помощью  параметра
               командной  строки -sm.  В этом параметр указывается аргу-
               мент,  определяющий объем (в килобайтах) памяти,  которая
               будет  выделяться для таблицы идентификаторов.  Например,
               если вы хотите зарезервировать для таблицы  идентификато-
               ров 3К, введите в ответ на подсказку DOS команду:

                       TD -sm3

               Когда вы  загружаете  Турбо отладчик,  не задавайте имени
               файла, так как вы отлаживаете то, что уже находится в па-
               мяти.  В  используемом по умолчанию каталоге у вас должны
               присутствовать файл резидентной программы и файл  .TDS, к
               которым отладчик  может обращаться для получения информа-
               ции об идентификаторах.

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

            7. Когда появляется экран Турбо отладчика,  очистите индика-
               ционное сообщение,  нажав клавишу Esc,  и загрузите с по-

       TDeb 3.0 #3-3                = 88 =

               мощью команды  FileіSymbol  Load  (ФайліЗагрузка  таблицы
               идентификаторов) таблицу идентификаторов. Если вы получи-
               те сообщение,  в котором говорится, что для загрузки таб-
               лицы идентификаторов не хватает памяти,  выйдите из Турбо





отладчика и запустите его снова из командной строки DOS задав в качестве аргумента параметра -sm большее значе- ние. 8. Таблица идентификаторов содержит набор идентификаторов, связанный с ячейками памяти в вашем коде. В качестве пре- фикса идентификаторов в таблице указывается #имя_файла#, где "имя_файла" - это имя файла резидентной программы. Например, если ваша резидентная программа называется TSR. ASM (исходный файл) и содержит метку Intr, то ячейку в памяти отмечает идентификатор #TSR#INTR. Идентификаторы в таблице идентификаторов представляют со- бой смещения (один от другого) на корректное число байт, но абсолютный адрес первого идентификатора не определен, так как DOS может загрузить вашу резидентную программу в другое место памяти (а не по тому адресу, как она ассемб- лировалась). По этой причине вы должны использовать ко- манду, чтобы явным образом найти первый идентификатор в памяти. 9. Используйте команду FileіTable Relocate (ФайліПеремещение таблицы идентификаторов) для помещения первого идентифи- катора из таблицы идентификаторов в соответствующую ячей- ку памяти. Таким образом, имеющаяся информация об иденти- фикаторах будет соответствовать вашему коду (программе). Для этого в ответ на подсказку Турбо отладчика задайте адрес сегмента Seg вашей резидентной программы, который определен с помощью утилиты TDMEM, плюс шестнадцатиричное значение 10 (для PSP размером 256 байт). Дизассемблированные из памяти операторы синхронизированы с информацией из таблицы идентификаторов. В случае нали- чия исходного файла исходные операторы выводятся на той же строке, что и информация из таблицы идентификаторов. 10. Для перехода к сегменту оперативной памяти, где находится ваша резидентная программа, используйте команду Goto (клавиши Ctrl-G). Это можно сделать, используя адрес сег- мента вашей программы TSR, за которым следует смещение 0000H, или с помощью перехода на конкретную метку вашей программы. После этого дальнейшие действия будут эквивалентны первому методу, начиная с пункта 4. Что такое драйвер устройства? ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД Драйвер устройства - это набор подпрограмм, используемых TDeb 3.0 #3-3 = 89 = операционной системой DOS для управления на нижнем уровне функци- ями ввода-вывода. Устанавливаемые драйверы устройств (в отличие от драйверов, встроенных в DOS) устанавливаются с помощью включе- ния соответствующих строк, например: device = clock.sys в файл CONFIG.SYS. Когда DOS выполняет операцию ввода-вывода для отдельного символа, она просматривает связанный список заголовков устройств, выполняя поиск устройства с соответствующим логическим именем (например,COM1). В случае драйверов блочно-ориентированных устройств, таких, как драйвер диска, DOS отслеживает, сколько ус- тановлено драйверов блочно-ориентированных устройств, и обознача- ет каждый из них буквой: A - первый установленный драйвер уст- ройства, B - второй и т.д. Когда вы, например, ссылаетесь на дисковод C, DOS знает, что нужно вызвать драйвер третьего блочно- ориентированного устройства. Связанный список двух заголовков драйвера содержит смещение двух компонентов самого драйвера устройства: подпрограмму функции и подпрограмму обработки прерывания. Когда DOS определяет, что требуется вызвать данный драйвер устройства, она вызывает драйвер дважды. При первом вызове драй- вера DOS общается с подпрограммой функции и передает ей указатель на буфер в памяти, который называется заголовком запроса. Этот заголовок запроса содержит информацию о том, какие функции требу- ет выполнить DOS от драйвера устройства. Подпрограмма функции просто просто сохраняет данный указатель для последующего исполь- зования. При втором вызове драйвера устройства DOS вызывает подп- рограмму обработки прерывания, которая выполняет реальные функ- ции, заданные DOS в заголовке запроса, например, пересылку символов с диска. В заголовке запроса с помощью байта, который называется ко- дом команды, определяется, что должен делать драйвер устройства. Код команды определяет одну из предопределенных операций из набо- ра операций, которые должны выполнять все драйверы устройств. На- бор кодов команд (операций) для драйверов символьно-ориентирован- ных и блочно-ориентированных устройств различен. Проблема при отладке драйверов устройств состоит в том, что файл .EXE отсутствует, так как для выполнения соответствующих функций драйвер должен быть загружен во время загрузки системы с помощью команды DEVICE = DRIVER.EXT, где EXT - это расширение .SYS, .COM или .BIN. Это означает, что отлаживаемый драйвер уст- ройства уже резидентен в памяти до начала отладки. Следовательно, функции по выполнению загрузки и перемещения таблицы идентифика- торов весьма полезны, поскольку они могут восстановить информацию об идентификаторах для дизассемблированного сегмента памяти (ког- да драйвер загружен). Как мы увидим далее, команда FileіResident (ФайліРезидент) также очень полезна.


Страницы : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [20] 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43


adfun.ru









Форум раскрутка сайта и интернет-реклама
реклама - рекламное агентство -
Интернет PR агентство чат и форум
волчат знакомства - сайт знакомств
бесплатные компьютерные игры
фото знакомства
новые стеклопакеты -
качественное остекление балконов
портал - пластиковые окна -
закажите окна пвх в Москве

частная стоматология в Москве:
надежная стоматологическая клиника
протезирование зубов и
отбеливание зубов в стоматологии
Музыка - скачать mp3 музыка
каталог партнерские программы
ручной бесплатный обмен ссылками цифровые камеры цифровые фотоаппараты -
цифровые видеокамеры

театры - заказ билетов в театр -
магазин - продажа компьютеров
в Москве форум Испания - жилье -
недвижимость в испании

турфирма - испания туры
Переводы - бюро переводов
Законы - закон о товарных знаках,
Грузовые перевозки. АсМАП. Дальнобой закон о рекламе
Интернет казино
реклама на форуме и контекстная реклама
на Яндексе Баннерная сеть и
интернет каталог сайтов Holiday.Ru
Форумы политика, лучшие анекдоты
знакомства.