скрыть

скрыть

  Форум  

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

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

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


Настоящий хакер может взломать домофон из Пентагона и Пентагон из домофона.

F10 - Выполняет подпрограмму или цикл (^P;)
F11 - Перейти к адресу возврата (большая модель) (^G @SS:SP;)
F12 - выводит номер версии Soft-ICE (^VER;)

Знак "сaret" (^), предшествующий команде, делает ее невидимой, точка с запятой (;) после команды производит перевод строки. Вы можете вывести на экран текущие назначения функциональных клавиш, введя команду:


FKEY

Для использования функциональной клавиши просто нажмите ее вместо ввода команды. При необходимости программирования функциональных клавиш, см. часть 5.8 для получения описания команды FKEY или главу 6 для получения описания предварительной инициализации функциональных клавиш в S-ICE.DAT.

3.10 Помощь

Команда помощи выводит краткое описание, синтаксис выражения и пример каждой команды. Чтобы получить информацию помощи, введите:

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

3.11 Обучающая Часть

Эта обучающая часть демонстрирует некоторые из возможностей Soft-ICE и дает вам возможность попробовать использовать Soft-ICE. Soft-ICE может быть использован вместе с другим отладчиком или как автономный отладчик. Обучающая часть демонстрирует использование Soft-ICE как дополнение к отладчику DOS DEBUG, а потом показывает, каким образом Soft-ICE может использоваться как автономный отладчик с загруженным исходным текстом и символами. DEBUG можно найти на системной дискете PC DOS или MS DOS. Если у вас нет DEBUG, вы можете найти другой отладчик или использовать Soft-ICE как автономный отладчик.

Пользователи, которым необходимо использовать Soft-ICE для "обратного проекти- рования" или для отладки загружаемых драйверов устройств DOS или резидентных программ, также должны пройти эту обучающую часть. Даже если примеры программ этих типов непосредственно не демонстрируются, вы получите представление об отладке при помощи Soft-ICE. Рекомендуется поэкспериментировать с Soft-ICE и вашим специфическим окружением до начала работы с реальным проектом.

Для демонстрации аппаратных точек останова используется короткая программа на языке ассемблера с тонким изъяном. Программа-пример была сделана максимально короткой и ясной для тех, кто не очень знаком с языком ассемблера. Обучающая часть предназначена для того, чтобы дать вам почувствовать возможности Soft-ICE. Не стесняйтесь экспериментировать по собственной инициативе после прохождения обучающей части.

Так как Soft-ICE очень гибок, он позволяет вам загружать его оптимальным для вашей системы образом. Пройдите процедуры установки в части 2.2 перед тем как продолжить изучать обучающую часть.

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

Soft-ICE может быть загружен из командной строки DOS или как драйвер устройства в CONFIG.SYS. Для этой обучающей части вы должны установить Soft-ICE в CONFIG.SYS с хотя бы 50КБ расширенной памяти для символов и файлов с исходным текстом. Soft-ICE должен быть первым драйвером устройства, установленным в CONFIG.SYS. Строка установки устройства должна выглядеть так:


DEVICE = диск:\путь\S-ICE.EXE /SYM 50

Параметр /SYM 50 указывает Soft-ICE резервировать 50 килобайтов расширенной памяти для символов и файла с исходным текстом. Этого недостаточно для решения реальных задач, но будет работать с нашей программой-примером.

Вы должны перезагрузить вашу систему после помещения этой строки в CONFIG.SYS.

Когда вы перезагрузите вашу систему, Soft-ICE выведет информацию об авторских правах, регистрационный номер, имя владельца этой копии Soft-ICE и количество расширенной памяти, зарезервированной для каждой компоненты Soft-ICE. В системе с 384КБ расширенной памяти начальный экран напоминает следующий:

Soft-ICE Ваше имя Название вашей компании # SInnnnnn Copr. (C) Nu-Mega Technologies 1987-1989 All Rights Reserved Soft-ICE Version 2.00 Soft-ICE is loaded from 00132000H up to 00160000H. 50K of symbol space reserved. 10K of back trace space reserved. 200 K of extended memory available.

Сообщение "Soft-ICE загружен ..." указывает вам точную область памяти, которая занята Soft-ICE и его компонентами. Если у вас Compaq или клон Compaq и включено слово COMPAQ в ваш файл S-ICE.DAT, вы также увидите сообщение : "Using high memory from XXXXXXXX to 00FE0000H".

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

Следующая строка сообщает, сколько памяти было зарезервировано для истории обратной трассировки. По умолчанию резервируется 10КБ. Эта область памяти используется командой SNAP и командой BPR с опциями T или TW.

Последняя строка сообщает вам, сколько памяти оставлено под обычную расширен- ную память. Эта память может использоваться другими программами, типа HIMEM, SMARTDRIVE, VDISK и т.д.

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

Прежде чем начинать тяжелую отладку, давайте вызовем окно Soft-ICE и произведем его проверку. Очистите экран, введя:


CLS

Вызовите окно Soft-ICE, нажав:


CTRL D

Теперь окно Soft-ICE - на экране. Если ваш файл S-ICE.DAT доступен через переменную PATH, то окно Soft-ICE будет занимать весь экран. Он будет разделен на четыре части. Сверху вниз эти части : окно регистров, окно данных, окно кода и окно команд. Если S-ICE.DAT не был найден, у вас будет маленькое окно в центре экрана. Это также означает, что другие компоненты, необходимые для обучающей части, не были загружены.

Если видимо маленькое окно, вы должны:

1. Выйти из Soft-ICE, введя X.
2. Выгрузить Soft-ICE, введя S-ICE /U.
3. Скопировать файл S-ICE.DAT с дистрибутивной дискеты в каталог, доступный через существующую переменную PATH.
4. Повторно начать демонстрационный пример.

Сейчас мы перейдем к маленькому окну. Маленькое окно очень удобно для использования Soft-ICE в дополнение к другому отладчику.

Введите:


WIN

Это приведет к появлению маленького окна команд в центре экрана вместо большо- го. На этом экране видно несколько команд Soft-ICE. Это - остатки строки инициализации из S-ICE.DAT, которые первоначально установили Soft-ICE в полноэкранный режим.

Вы заметите символ стимула (:) и строку состояния в нижней части окна.

Окно Soft-ICE может перемещаться относительно экрана, так же может быть отрегулирован размер окна.

Переместите окно по экрану, нажимая:

CTRL стрелка вверх-- перемещает окно на одну строку вверх
CTRL стрелка вниз -- перемещает окно на одну строку вниз
CTRL стрелка вправо -- перемещает окно на одну позицию вправо
CTRL стрелка влево -- перемещает окно на одну позицию влево

Измените размер окна так, чтобы оно заполнило весь экран, введя:


WIN

Вы увидите, что восстановился первоначальный экран.

Вернитесь к маленькому окну, снова введя


WIN.

Сделайте окно выше или ниже, нажимая:

ALT стрелка вверх -- делает окно выше
ALT стрелка вниз -- делает окно ниже

Теперь представьте, что происходит, когда вы - перед новой программой и точно не знаете, что делать дальше -- вы просите помощи.

Получите помощь, введя:


?

Обратите внимание, что вывод на экран прекращается до нажатия любой клавиши прежде чем прокрутить информацию по экрану. Посмотрите на строку состояния в в нижней части окна. В строке состояния выведены инструкции: "Любая клавиша - продолжение, ESC - отмена". Теперь нажмите любую клавишу, для продолжения вы- вода информации помощи. Продолжайте нажимать клавишу до повторного появления стимула (:).

Прокрутите информацию помощи назад, нажав

SHIFT стрелка вниз

Выведенная ранее информация может прокручиваться в окне команд при помощи клавиш shift вверх, shift вниз, page up и page down. Попробуйте разные клавиши для перемещения по информации помощи.

Средство помощи Soft-ICE дает вам краткий обзор каждой команды. Если вы введете знак вопроса (?) сопровождаемый названием команды, вы увидите экран, показывающий синтаксис команды, краткое описание команды и пример.

Попробуйте поэкспериментировать с помощью, вводя команды в следующем формате:


? команда

Например,


? ALTKEY

Если вы запутались, обратите внимание на сообщения в строке состояния в нижней части экрана.

Команда помощи также позволяет вам вычислять шестнадцатеричные выражения.

Например, введите:


? 10*2+42

Результирующий экран показывает вам значение выражения, сначала в шестнадцатеричном, потом десятичном, а потом в ASCII - представлении:


0062 00098 "b"

Мы вызвали окно комбинацией клавиш CTRL D. Некоторых это устраивает, но вы можете предпочесть использовать другую комбинацию клавиш.

Теперь введем команду, чтобы изменить комбинацию клавиш, требуемую для вызова окна. Мы сделаем это шаг за шагом, так чтобы вы привыкли к строке состояния в нижней части окна.

Введите букву "A". Строка состояния покажет список всех команд, начинающихся с буквы "A". Завершите ввод слова "ALTKEY". Строка состояния теперь покажет короткое описание команды ALTKEY Нажмите "пробел". Строка состояния теперь покажет требуемый синтаксис для команды ALTKEY. Наберите буквы "ALT D" потом нажмите ВВОД, чтобы ввести полную команду:


ALTKEY ALT D

Вы только что изменили комбинацию клавиш для вызова окна на ALT D. С этого времени вы должны нажать клавиши ALT D, чтобы вызвать окно. Так и оставим это во всей оставшейся обучающей части. Теперь давайте проверим предыдущую команду.

Для выхода из окна, введите:


ALT D






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook