Отладка (команда) - Debug (command)

Отлаживать
Dosbox 001.png
Автор (ы) оригинала Тим Патерсон
Разработчики) Microsoft , IBM , Digital Research , Novell , Caldera
Написано в MS-DOS : язык ассемблера x86
Операционная система DOS , OS / 2 , Windows
Тип Отладчик
Лицензия MS-DOS v2.0, FreeDOS: MIT
OS / 2, Windows: проприетарное программное обеспечение
Веб-сайт Отлаживать

Строчно-ориентированный отладчик DEBUG - это внешняя команда в таких операционных системах , как DOS , OS / 2 и Windows (только в 16-битных / 32-битных версиях).

DEBUG может действовать как программа на ассемблере , дизассемблере или шестнадцатеричном дампе, позволяя пользователям интерактивно исследовать содержимое памяти (на языке ассемблера , в шестнадцатеричной системе или ASCII ), вносить изменения и выборочно выполнять COM , EXE и другие типы файлов. Он также имеет несколько подкоманд, которые используются для доступа к определенным секторам диска , портам ввода-вывода и адресам памяти .

Обзор

Image
DEBUG.COM(среди других команд) в IBM PC DOS 1.0.
Image
Microsoft Windows 95 debug команда

Традиционно все компьютеры и операционные системы включают функцию обслуживания, которая используется для определения правильности работы программы. DEBUG изначально был написан Тимом Патерсоном для этой цели в 86-DOS . Когда Патерсон начал работать в Microsoft в начале 1980-х, он принес с собой программу. DEBUG была частью DOS 1.00 и была включена в MS-DOS / PC DOS и некоторые версии Microsoft Windows . Первоначально называвшийся DEBUG.COM, исполняемый файл был переименован в DEBUG.EXE с DOS 5.0.

Windows XP и более поздние версии включены DEBUGв подсистему MS-DOS для обеспечения совместимости с MS-DOS. 16-разрядные команды DOS недоступны в 64-разрядных выпусках Windows.

MS-DOS / PC DOS DEBUG имеет несколько ограничений:

Усовершенствованные пакеты DEBUG включают команду DEBUG в Novell DOS 7 , OpenDOS 7.01 и DR-DOS 7.02 и более поздних версиях, являющуюся повторной реализацией прежнего отладчика символьных инструкций SID / SID86 от Digital Research , который поставлялся с предыдущими версиями DR DOS . Он полностью совместим с синтаксисом командной строки DEBUG MS-DOS / PC DOS, но предлагает множество улучшений, включая поддержку 16-битных и 32-битных кодов операций вплоть до Pentium , расширенный режим (/ X) с десятками дополнительных команд. и подрежимы, значительно улучшенный синтаксис командной строки с определяемыми пользователем макросами и средствами символьной отладки с именованными регистрами, загруженными таблицами символов , математическими операциями и базовыми преобразованиями , а также комментирующим дизассемблером . Некоторые версии также использовали DPMS для работы в качестве отладчика защищенного режима в «скрытом режиме».

FreeDOS версия DEBUG была разработана Полом Войта и распространяется под лицензией MIT License .

Также существует 32-битная версия клона "DEBUGX", поддерживающая 32-битные программы DPMI . Андреас «Иафет» Греч, автор расширителя HX DOS , разработал расширенные версии DEBUG с 0.98 по 1.25, а бывший разработчик DOS для ПК Вернон С. Брукс добавил версии 1.26 в 1.32.

Синтаксис

DEBUG [[drive:][path] filename [parameters]]

Когда DEBUG запускается без каких-либо параметров, появляется приглашение DEBUG со знаком «-». Затем пользователь может ввести одну из нескольких одно- или двухбуквенных подкоманд, включая «A» для входа в режим ассемблера, «D» для выполнения шестнадцатеричного дампа , «T» для трассировки и «U» для разборки (дизассемблирования) программы. в памяти. DEBUG также может использоваться как интерпретатор «сценария DEBUG», используя следующий синтаксис.

DEBUG < filename

Файл сценария может содержать подкоманды DEBUG и инструкции на языке ассемблера. Этот метод можно использовать для создания или редактирования двоичных файлов из командных файлов .

Использование в целях, не связанных с отладкой

Утилита DEBUG полезна для редактирования двоичных файлов в среде, где установлена ​​только DOS без чего-либо еще. Его также можно использовать для редактирования секторов диска, что является одним из методов удаления вирусов загрузочного сектора.

Доступность

Хотя техническая документация по команде DEBUG была удалена с выпуском MS / DOS 3.3, команда осталась в стандартном дистрибутиве, в отличие от того, что было сделано с EXE2BIN .

DEBUG в других операционных системах

В операционных системах Intel ISIS-II и iRMX 86 , декабрь TOPS-10 и TOPS-20 , ТЕОС / OASIS , Zilog Z80-RIO , Stratus OpenVOS , PC-MOS и AROS также обеспечивают DEBUGкоманду.

Смотрите также

использованная литература

внешние ссылки