Руководство по Soft-ICE(DOS) — 19

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}ка / Donate

Благодарю за поддержку!

Новости сайта

Новости форума

Архив исходников

Automatic translation

[ Вернуться на главную страницу сайта «Delphi Sources» ]

Delphi FAQ — Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |

| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |

Материалы предоставлены сайтом Delphi World

Введите условия поиска Отправить форму поиска

Web www.delphisources.ru

Руководство по Soft-ICE (DOS) — 19

— Я умею торм… торм… тормозить.

WINDOWS:

— А я умею висееееееееее…

LDR название-программы | название-программы.SYM | название-программы.расширение

7.4.1 Загрузка Программы, Символов и Исходного Текста

Для загрузки вашей программы, символов и исходных файлов за один шаг, вы должны использовать LDR.EXE так:

LDR название-программы

Обратите внимание, что название-программы не имеет расширения. Если расширение не указано, LDR.EXE выполнит следующие действия:

1. Загрузит название-программы.SYM в расширенную память

2. Загрузит исходные файлы в расширенную память. Этот шаг выполняется только, если в .SYM-файле есть записи об исходных файлах.

3. Загрузит название-программы.EXE в память, в область, куда бы она загрузилась, если бы была загружена непосредственно из командной строки DOS.

4. Вызовет Soft-ICE с указателем инструкций на первой инструкции вашей программы. Если это — C- программа и для файла, содержащего _MAIN, загружен исходный текст, тогда исходный текст этого файла будет видим в окне кода.

7.4.2 Загрузка только Символов и Исходных Файлов

Если вы хотите загрузить только символы и исходные файлы (например, для отлад- ки загружаемого драйвера устройства), вы должны использовать LDR.EXE так:

LDR название-программы.SYM

Обратите внимание, что расширение .SYM — указано. .SYM-файл и исходные файлы будут загружены в расширенную память. Когда символы загружены таким образом, символы вашей программы или драйвера устройства будут приняты для ссылки с адреса 0:0. Так как это — редкий случай, вы должны будете использовать команду Soft-ICE, SYMLOC для локализации символов. См. описание команды SYMLOC в главе 5.10 для полной информации. Вот пример загрузки файла символов, называющегося DRIVER.SYM:

LDR DRIVER.SYM

7.4.3 Загрузка Программы Без Символов или Исходного Текста

Для загрузки программного файла без загрузки связанного с ним файл символов, вы должны использовать LDR.EXE так:

LDR название-программы.расширение

Обратите внимание, что расширение файла присутствует. Обычно расширение файла будет .EXE или .COM. Когда расширение файла определено, LDR.EXE загрузит программу и вызовет Soft-ICE с указателем инструкций на первой инструкции программы. Вот пример загрузки программы с символами и исходным текстом:

LDR TEST.EXE

Примечания:

LDR.EXE автоматически сохраняет копию таблицы векторов прерываний при загрузке вашей программы. Это эквивалентно выполнению команды VECS S. Если вы хотите выйти из вашей программы до ее завершения, вы можете выполнить EXIT R для выхода из программы и восстановления таблицы векторов прерываний.

Использование LDR.EXE для загрузки только название-программы.EXE часто полезно для рестарта вашей программы, во время сессии отладки по исходному тексту. Для рестарта выполните команду EXIT R, чтобы прервать текущую сессию. Затем используйте LDR.EXE, для повторной загрузки вашего .EXE-файла. Символы: исходный текст не должен загружаться, т.к. он остается в расширенной памяти.

Если LDR.EXE выдает вам сообщение «Out of space loading symbol information», это означает, что вы не зарезервировали достаточно расширенной памяти при помощи переключателя загрузки /SYM в CONFIG.SYS.

Если LDR.EXE не находит ваши исходные файлы в той же директории, что и программа, которую вы загружаете, LDR.EXE попросит указать путь, по которому он может найти исходные файлы. Если у вас исходные файлы в нескольких директориях или вы часто загружаете программу, это становится тяжелым. Вы можете устранить необходимость во вводе, используя переменную окружающей среды DOS, SRC. LDR.EXE использует эту переменную окружающей среды, чтобы найти исходные файлы до обращения к пользователю. Вот синтаксис для установки переменной окружающей среды из командной строки DOS:

SET SRC = директория;директория;…;директория

В каждой из указанных директорий будет произведен поиск до обращения к пользователю.

Ограничения:

Soft-ICE поддерживает символы только для одной программы одновременно. Если вы загружаете новый .SYM-файл, существующий — перезаписывается.

Soft-ICE не поддерживает оверлеи или перемещения сегментов Microsoft Windows.

Soft-ICE распознает только публичные символы и номера строк. Он не поддерживает локальные переменные.

7.5 Символьная Отладка

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

Символы также используются несколькими командами Soft-ICE, когда выводятся адреса. Например, команда U выводит символьные имена меток и процедур, когда с ними сталкивается. Есть две команды, которые полезны при символьной отладке:

* SYM — Используйте команду SYM, чтобы получить список названий и значений символов или изменить значение символа.

* SYMLOC — Используйте команду SYMLOC, чтобы переместить базу всех ваших символов. Вы будете должны использовать команду SYMLOC когда:

1. Загружаете символы для загружаемого драйвера устройства

2. Загружаете символы для T

Добавить комментарий