Руководство по Soft-ICE (DOS) - 17
|
- Вы кем работаете?
- Я фармацевт.
- А, значит в аптеке работаете.
- Нет, диск С форматирую.
|
Функциональная клавиша по умолчанию: F3
FILE
FILE -- Изменить/вывести текущий исходный текст
Синтаксис:
Комментарии:
Если имя файла указано, этот файл становится текущим файлом и
начало файла выводится в окне кода. Если имя не указано, выводится
имя текущего файла (если он есть) с исходным текстом.
Команда FILE часто полезна при установке точки останова в строке, которая
не ассоциирована ни с одним публичным символом. Используйте FILE, для вызова
желаемого файла в окно кода, используйте команду SS для поиска определенной
строки, переместите в нее курсор и введите BPX для установки точки останова.
Обратите внимание:
Для команды FILE доступны только файлы с исходным текстом, загруженные в
дополнительную память (XMS) программой LDR.EXE.
Пример:
Если MAIN.C был загружен LDR.EXE, эта
команда выводит его в окно кода, начиная со
строки 1.
SS
SS -- Найти строку в текущем файле с исходным текстом
Синтаксис:
SS [номер-строки] ['строка']
|
номер-строки -- десятичное число
строка -- символьная строка, заключенная в кавычки.
Кавычки могут быть как одиночными так
и двойными.
Комментарии:
Команда SS ищет в текущем файле с исходным текстом указанную
символьную подстроку. Если имеется соответствие, строка, в которой была
найдена подстрока будет выведена как верхняя строка в окне кода.
Поиск начинается с указанного номера строки. Если номер строки не
указан, поиск начинается с верхней строки, отображаемой в окне кода.
Если параметры не указаны, продолжается поиск предыдущей
указанной строки.
Обратите внимание:
Окно кода должно быть видимо и быть в режиме исходного текста до использования
команды SS.
Пример:
В текущем файле с исходным текстом ищется, начиная со строки 1,
подстрока 'if (i = = 3)'. Строка, содержащая следующее
совпадение с подстрокой, становится верхней отображаемой строкой
в окне кода.
РАЗДЕЛ III -- Поддерживаемые Возможности
ГЛАВА 6
6.1 Введение
Программный файл Soft-ICE (S-ICE.EXE) может быть загружен как загружаемый
драйвер устройства в CONFIG.SYS или как программа из командной строки DOS. Для
получения всей силы Soft-ICE, он должен быть загружен как драйвер устройства в
CONFIG.SYS. Однако, могут иметься обстоятельства, когда вы можете захотеть
запустить Soft-ICE из командной строки DOS или пакетного файла, типа:
* У вас нет расширенной памяти в вашей системе.
Soft-ICE можно загрузить как загружаемый драйвер устройства,
только если у вас есть расширенная память.
* Вы хотите занять НОЛЬ байт обычной
памяти. При загрузке как драйвер устройства,
Soft-ICE занимает приблизительно 2КБ
обычной памяти.
* Вам только иногда необходимо использовать Soft-ICE и
нет никаких других программ, использующих расширенную
память.
В некоторых случаях вам могут быть нужны некоторые возможности, требующие
загрузки Soft-ICE из CONFIG.SYS, но не нужно, чтобы Soft-ICE был постоянно
резидентным. В этом случае Soft-ICE может быть загружен из CONFIG.SYS, чтобы
зарезервировать расширенную память, и потом отключен переключателем /UN, пока
не потребуется Soft-ICE. См. часть 6.3.1 для большей информации относительно
переключателя /UN.
6.2 Загрузка из командной строки DOS
Вы НЕ можете активизировать все возможности Soft-ICE при загрузке из командной
строки DOS. Если вы будете использовать Soft-ICE как автономный отладчик,
рекомендуется загружать Soft-ICE из файла CONFIG.SYS.
Чтобы загрузить Soft-ICE из командной строки DOS, введите
В системах без расширенной памяти, Soft-ICE загружается в
самые высокие возможные адреса памяти. Тогда память, используемая Soft-ICE
"отрезается", становясь невидимой для программ DOS. Так как общая память,
видимая для DOS и ее программ, уменьшается после загрузки Soft-ICE,
рекомендуется загружать Soft-ICE до загрузки любых TSR-программ.
В системах с расширенной памятью вы можете загружать Soft-ICE из командной
строки DOS, только если вы не используете расширенную память для чего-либо еще
(напр. VDISK, CACHE, HIMEM...). Когда вы загружаете Soft-ICE из командной
строки или из пакетного файла, Soft-ICE предупредит вас, выдав специальное
сообщение. Это предупреждение только напоминает вам, что Soft-ICE перезапишет
старшую область расширенной памяти, когда загрузится. Вы можете
подавить это предупреждающее сообщение при помощи опции EXTENDED в файле
конфигурации Soft-ICE. Для большей информации относительно опции EXTENDED,
см. часть 6.4.1.
6.3 Загрузка Soft-ICE как Загружаемого Драйвера Устройства
Чтобы использовать все возможности Soft-ICE, вы должны загрузить Soft-ICE как
загружаемый драйвер устройства в вашем файле CONFIG.SYS. При этом становятся
доступными следующие возможности:
* Сосуществование с другим программным обеспечением, использующим
расширенную память.
Загрузка как драйвера устройства позволяет Soft-ICE
управлять расширенной памятью, так что вы можете запускать Soft-ICE
с программами, использующими расширенную память, такими как
VDISK, CACHE и HIMEM.
* Отладка на уровне символов и исходного текста.
Загрузка как драйвера устройства позволяет Soft-ICE
разместить в расширенный памяти буфер для информации
о символах и исходном тексте.
* Диапазоны обратной трассировки и команда SNAP.
Загрузка как драйвера устройства позволяет Soft-ICE
разместить в расширенный памяти буфер для информации
обратной трассировки. Этот буфер также используется для
команды Soft-ICE, SNAP.
* Активизация возможностей Soft-ICE по EMM 4.0
* Запуск Soft-ICE с MagicCV или MagicCVW
Заметьте:
Загруженный, как драйвер устройства в CONFIG.SYS, Soft-ICE резервирует старшую
область расширенной памяти для себя и связанных с ним компонент, следовательно
не может возникнуть конфликтов памяти. S-ICE.EXE должен быть загружен в
CONFIG.SYS до любого другого драйвера, резервирующего расширенную память при
загрузке (напр. VDISK.SYS, RAMDRIVE.SYS). Вообще Soft-ICE работает наилучшим
образом, если он - первый загружаемый драйвер устройства в CONFIG.SYS.
6.3.1 Переключатели Загрузки Soft-ICE
После S-ICE.EXE в CONFIG.SYS может быть указан один или более переключателей
загрузки. Эти переключатели позволяют вам указывать, как Soft-ICE будет
резервировать расширенную память. Все переключатели должны начинаться
символом / . Есть следующие переключатели загрузки:
* /EXT XXXX -- Сообщает S-ICE.EXE зарезервировать
XXXX килобайт расширенной памяти для других
программ DOS, использующих расширенную память (напр.
VDISK, CACHE, HIMEM,...). Если переключатель
/EXT не указан, то расширенная память, не используемая Soft-ICE и связанными
с ним компонентами будет оставлена, как стандартная расширенная память, но ее
количество нельзя гарантировать. Переключатель /EXT полезен, потому что
иногда трудно точно определить, сколько памяти используется Soft-ICE и
связанными с ним компонентами. Использование переключателя /EXT будет
гарантировать, что указанное количество будет доступно для других программ,
использующих расширенную память.
* /SYM XXXX -- Сообщает S-ICE.EXE зарезервировать
XXXX килобайт расширенной памяти для символов
и исходного текста. Если XXXX не указано, то
вся остающаяся расширенная память используется для
символов. Должно быть зарезервировано достаточно памяти для
вашего файла .SYM и всех исходных текстов. Для большей
информации об использовании символов и исходного текста, см.
главу 7.
* /TRA XXXX -- Сообщает S-ICE.EXE зарезервировать
XXXX килобайт расширенной памяти для буфера истории
обратной трассировки. Этот буфер используется для диапазонов
обратной трассировки и для команды SNAP. Если
XXXX не указано, то для буфера автоматически
резервируется 10КБ расширенной памяти. Если
вы вообще не хотите резервировать память для буфера
обратной трассировки, используйте /TRA 0. Для большей информации
об использовании диапазонов обратной трассировки, см. главу 9.
* /MCV XXX -- Сообщает S-ICE.EXE зарезервировать
XXX килобайт расширенной памяти для MagicCV
или MagicCVW. Минимальный объем расширенной
памяти, который вы можете указать - 280КБ и максимум -
620КБ. Если XXX не указано, S-ICE.EXE
зарезервирует остающуюся память, между 280КБ и
620КБ. См. главу 10 для большей информации относительно
работы Soft-ICE с MagicCV или MagicCVW.
* /EMM XXXX -- Сообщает S-ICE.EXE преобразовать
XXXX килобайт расширенной памяти в отображаемую
память, соответствующую EMM 4.0. Если указано
XXXX, то вся остающаяся память используется как
отображаемая. См. главу 8 для большей информации
Относительно поддержки отображаемой памяти.
* /UN -- Сообщает S-ICE.EXE перейти в защищенный
режим, зарезервировать необходимую расширенную память, затем
выйти из защищенного режима и выгрузиться. Этот переключатель
должен использоваться, когда вы загружаете S-ICE.EXE
как загружаемый драйвер устройства, но не хотите,
чтобы ваша система оставалась в защищенном режиме. Этот
переключатель зарезервирует память для Soft-ICE, и вы
должны выполнить S-ICE.EXE из командной строки DOS,
когда вы будете готовы использовать Soft-ICE.
Soft-ICE резервирует расширенную память в следующем порядке, независимо от
порядка указанных переключателей:
Резервируется приблизительно 120КБ для S-ICE.EXE.
Резервируется память для переключателя /EXT, если он указан.
Резервируется память для переключателя /SYM, если он указан.
Резервируется память для переключателя /TRA, если он указан.
Если он не указан, по умолчанию резервируется 10КБ для буфера обратной трассировки.
Резервируется память для переключателя /MCV, если он указан.
Резервируется память для переключателя /EMM, если он указан.
Если при попытке зарезервировать память для переключателя в вышеупомянутой
последовательности, доступной памяти не хватает, S-ICE.EXE делает следующее:
1. Остающаяся расширенная память резервируется для
переключателя, обрабатываемого, когда не хватило памяти.
2. Память не будет резервироваться для оставшихся
переключателей.
Заметьте:
Если присутствует переключатель /MCV или /EMM, резервируются дополнительные
64КБ расширенной памяти для буфера поддержки DMA.
Переключатели могут быть указаны в любом порядке после DEVICE = S-ICE.EXE.
Пример:
DEVICE = S-ICE.EXE /TRA50 /EMM 500 /SYM 2048
|
Если доступны четыре мегабайта расширенной памяти, этот пример зарезервирует
приблизительно 120КБ для Soft-ICE, 2 мегабайта для символов, 50КБ для буфера
истории обратной трассировки, 500КБ для отображаемой памяти и оставит
приблизительно 1,3 мегабайта для других программ расширенной памяти. Заметьте,
что Soft-ICE загрузится в самую высокую область расширенной памяти, оставив
оставшуюся память, начиная с 100000H (мегабайтовая отметка).
|