Debug (příkaz) - Debug (command)
Původní autoři | Tim Paterson |
---|---|
Vývojáři | Microsoft , IBM , Digital Research , Novell , Caldera |
Napsáno | MS-DOS : jazyk sestavení x86 |
Operační systém | DOS , OS/2 , Windows |
Typ | Debugger |
Licence | MS-DOS v2.0, FreeDOS: MIT OS/2, Windows: Proprietární software |
webová stránka | Ladit |
Ladicí program orientovaný na řádky DEBUG
je externí příkaz v operačních systémech, jako jsou DOS , OS/2 a Windows (pouze v 16bitových/32bitových verzích).
DEBUG může fungovat jako program assembleru , disassembleru nebo hexadecimálního výpisu, který uživatelům umožňuje interaktivně zkoumat obsah paměti (v jazyce sestavení , hexadecimální nebo ASCII ), provádět změny a selektivně spouštět COM , EXE a další typy souborů. Má také několik dílčích příkazů, které se používají k přístupu ke konkrétním diskovým sektorům , I/O portům a adresám paměti .
Přehled
Všechny počítače a operační systémy tradičně obsahují funkci údržby, která se používá k určení, zda program funguje správně. DEBUG původně napsal Tim Paterson, aby sloužil tomuto účelu v 86-DOS . Když Paterson začal pracovat pro Microsoft na začátku 80. let, přinesl program s sebou. DEBUG byl součástí DOS 1.00 a byl zahrnut v systému MS-DOS / PC DOS a určitých verzích systému Microsoft Windows . Původně pojmenovaný DEBUG.COM, spustitelný soubor byl přejmenován na DEBUG.EXE s DOS 5.0.
Windows XP a novější verze součástí DEBUG
pro podsystém MS-DOS zachování kompatibility MS-DOS. 16bitové příkazy DOS nejsou k dispozici v 64bitových edicích systému Windows.
MS-DOS/PC DOS DEBUG má několik omezení:
- V režimech montáže/demontáže podporuje pouze 8086 operačních kódů.
- Má přístup pouze k 16bitovým registrům, nikoli k 32bitovým rozšířeným registrům.
- Při použití dílčího příkazu „N“ pro pojmenování souborů je název souboru uložen od offsetu DS : 5D do DS: 67 (oblast bloku řízení předpony segmentu programu ), což znamená, že program může ukládat pouze soubory ve formátu názvu souboru FAT 8.3 .
Vylepšené balíčky DEBUG zahrnují příkaz DEBUG v systémech Novell DOS 7 , OpenDOS 7.01 a DR-DOS 7.02 a novějších, reimplementace dřívějšího ladicího programu Symbolic Instruction Debugger SID/SID86 společnosti Digital Research , který byl dodáván s předchozími verzemi DR DOS . Je plně kompatibilní se syntaxí příkazového řádku DEBUG systému MS-DOS/PC DOS, ale nabízí mnoho vylepšení, včetně podpory 16bitových a 32bitových operačních kódů až do Pentia , rozšířeného režimu (/X) s desítkami dalších příkazů a podrežimy, podstatně vylepšená syntaxe příkazového řádku s uživatelsky definovatelnými makry a symbolickými ladicími zařízeními s pojmenovanými registry, načtenými tabulkami symbolů , matematickými operacemi a základními převody , stejně jako komentátorem disassembleru . Některé verze také využívaly DPMS k tomu, aby fungovaly jako debugger chráněného režimu v „utajeném režimu“.
FreeDOS verze DEBUG byla vyvinuta Paulem Vojta a je licencován pod MIT licencí .
Existuje také 32bitová klonová verze „DEBUGX“ podporující 32bitové programy DPMI . Andreas „Japheth“ Grech, autor extenderu HX DOS , vyvinul vylepšené verze DEBUG 0,98 až 1,25 a bývalý vývojář PC DOS Vernon C. Brooks přidal verze 1,26 až 1,32.
Syntax
DEBUG [[drive:][path] filename [parameters]]
Když je DEBUG spuštěno bez jakýchkoli parametrů, zobrazí se výzva DEBUG s „-“. Uživatel pak může zadat jeden z několika jedno nebo dvoupísmenných dílčích příkazů, včetně „A“ pro vstup do režimu assembleru, „D“ pro provedení hexadecimálního výpisu , „T“ pro trasování a „U“ pro rozebrání (rozebrání) programu v paměti. DEBUG lze také použít jako interpret "DEBUG script" pomocí následující syntaxe.
DEBUG < filename
Soubor skriptu může obsahovat dílčí příkazy DEBUG a pokyny pro jazyk sestavení. Tuto metodu lze použít k vytváření nebo úpravě binárních souborů z dávkových souborů .
Použití pro účely bez ladění
Nástroj DEBUG je užitečný pro úpravu binárních souborů v prostředí, kde je nainstalován pouze DOS bez čehokoli jiného. Lze jej také použít k úpravě sektorů disku, což je jedna z metod odstraňování virů spouštěcího sektoru.
Dostupnost
Přestože byla s vydáním systému MS/DOS 3.3 odstraněna technická dokumentace pro příkaz DEBUG, byl příkaz zachován ve standardní distribuci, na rozdíl od toho, co bylo provedeno pomocí EXE2BIN .
DEBUG v jiných operačních systémech
Tyto operační systémy Intel ISIS-II a iRMX 86 , prosinec TOPS-10 a TOPS-20 , theos / OASIS , Zilog Z80-Rio , Stratus OpenVOS , PC-MOS a AROS také poskytují DEBUG
příkaz.
Viz také
- Seznam příkazů DOS
- DDT (příkaz CP/M) (technika dynamického ladění)
- SID (ladič symbolických instrukcí)
- SYMDEB
- CodeView
- Turbo Debugger
- SoftICE