stringtranslate.com

Отладка (команда)

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

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

Обзор

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

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

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

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

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

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

Также существует 32-битный клон "DEBUGX", поддерживающий 32-битные программы DPMI . [11] Андреас "Japheth" Грех, автор расширителя HX DOS , разработал улучшенные версии DEBUG с 0.98 по 1.25, а бывший разработчик PC DOS Вернон С. Брукс добавил версии с 1.26 по 1.32. [12]

Синтаксис

DEBUG [[диск:][путь] имя файла [параметры]]

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

DEBUG < filename

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

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

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

Доступность

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

Другие операционные системы

Операционные системы Intel ISIS -II [16] и iRMX 86 , [17] DEC TOPS-10 [18] и TOPS-20 , [19] THEOS/OASIS , [20] Zilog Z80-RIO , [21] Stratus OpenVOS , [22] PC-MOS , [23] и AROS [24] также предоставляют DEBUGкоманду.

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

Ссылки

  1. ^ Согласно справочнику Microsoft Macro Assembler, встроенный ассемблер не поддерживается для x64.
  2. ^ ab Sedory, Daniel B. "A Guide to DEBUG" . Получено 29.11.2014 .
  3. ^ Команды подсистемы MS-DOS
  4. ^ SID-86 Руководство пользователя для CP/M-86 (2-е изд.). Digital Research . Август 1982 [март 1982]. SID86UG.WS4. Архивировано из оригинала 2019-10-20 . Получено 06.02.2020 .[1] (Примечание. Перепечатанная версия руководства Эммануэля Роша с добавленными командами Q, SR и Z. Это руководство предназначено для версии CP/M-86 , но версия DR DOS аналогична.)
  5. ^ Борн, Гюнтер [на немецком языке] (1993). Настройка DOS 6 (на немецком языке) (1-е изд.). Маркт и Техник . ISBN 3-87791-495-0.(Примечание. Содержит несколько страниц по MS-DOS DEBUG.EXE, а также по отладчику символических инструкций SID.EXE в DR DOS 5.0 / 6.0 .)
  6. ^ Пол, Маттиас Р. (1997-05-24) [1991]. DRDOSTIP.TXT — Tips und Tricks für DR DOS 3.41 - 5.0 (на немецком языке) (47-е изд.). Архивировано из оригинала 2016-11-07 . Получено 2016-11-07 . {{cite book}}: |work=игнорируется ( помощь ) (Примечание. Содержит некоторую информацию о отладчике символических инструкций (SID86.EXE в DR DOS 3.41 и SID.EXE в DR DOS 5.0/6.0), предшественнике DR-DOS DEBUG.EXE.)
  7. ^ ab Paul, Matthias R. (2002-01-09). "SID86". Группа новостей : comp.os.cpm . Получено 2018-04-08 . […] Поскольку DR-DOS 7.03 DEBUG все еще основан на старом SID86.EXE, я предлагаю запустить DEBUG 1.51 и войти в расширенную справочную систему с помощью ?? из приглашения отладки. Это даст вам восемь экранов, полных справки по синтаксису и функциям. Некоторые из этих функций также поддерживались более старыми выпусками. […]
  8. ^ Пол, Матиас Р. (30 июля 1997 г.). «Kapitel II.5. Allgemeines: Undokumentierte Möglichkeiten von DEBUG» [Недокументированные возможности DEBUG]. NWDOS-TIPs — советы и подсказки для Novell DOS 7, с просмотром недокументированных подробностей, ошибок и обходных путей. Выпуск 157 (на немецком языке) (3-е изд.). Архивировано из оригинала 10 сентября 2017 г. Проверено 6 сентября 2014 г. {{cite book}}: |work=игнорируется ( помощь ) (Примечание. NWDOSTIP.TXT — это всеобъемлющая работа по Novell DOS 7 и OpenDOS 7.01 , включающая описание многих недокументированных функций и внутренних компонентов. Она является частью еще более обширной коллекции автора MPDOSTIP.ZIP, которая поддерживалась до 2001 года и распространялась на многих сайтах в то время. Приведенная ссылка указывает на более старую версию файла NWDOSTIP.TXT, преобразованную в HTML.)
  9. ^ Пол, Матиас Р. (9 апреля 2001 г.). NWDOS-TIPs — советы и подсказки для Novell DOS 7, с просмотром недокументированных подробностей, ошибок и обходных путей . Выпуск 183 (на немецком языке) (3-е изд.). {{cite book}}: |work=проигнорировано ( помощь )
  10. ^ "Пакет обновлений FreeDOS 1.2 - отладка (FreeDOS Base)". Ibiblio.org. 2021-02-16 . Получено 2022-09-08 .
  11. ^ Vojta, Paul. "DEBUG README". Архивировано из оригинала 2007-08-24 . Получено 2007-06-25 .
  12. ^ Брукс, Вернон С. (2014-04-08). "Enhanced DEBUG for PC DOS and MS-DOS". PC DOS Retro . Архивировано из оригинала 2020-02-21 . Получено 2014-05-08 .
  13. ^ "Статья Microsoft TechNet Debug" . Получено 2008-04-23 .
  14. ^ Ирвин, Кип Р. (2010). «Использование отладки». Язык ассемблера для компьютеров на базе Intel (PDF) (6-е изд.). Prentice Hall . ISBN 978-0-13602212-1. Получено 2014-03-18 .
  15. Дрор, Асаэль (1988-01-12). «Спасибо, IBM». PC Magazine . стр. 366.
  16. ^ Руководство пользователя ISIS II
  17. ^ iRMX 86 Введение и справочное руководство оператора для версии 6
  18. ^ TOPS-10 Operating System Commands Manual (PDF) . Digital Equipment Corporation. Август 1980. Архивировано из оригинала (PDF) 2020-08-09 . Получено 2019-02-17 .
  19. ^ "TOPS-20 Command manual" (PDF) . Архивировано из оригинала (PDF) 2020-08-09 . Получено 2018-07-18 .
  20. ^ Руководство пользователя THEOS/OASIS
  21. ^ Руководство пользователя операционной системы Z80-RIO
  22. ^ «Справочное руководство по командам OpenVOS» (PDF) .
  23. ^ Руководство пользователя PC-MOS
  24. ^ «Исследовательская операционная система AROS».

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