Debuguj (polecenie) — Debug (command)
Pierwotny autor (autorzy) | Tim Paterson |
---|---|
Deweloper(zy) | Microsoft , IBM , badania cyfrowe , Novell , Caldera |
Napisane w | MS-DOS : język asemblera x86 |
System operacyjny | DOS , OS/2 , Windows |
Rodzaj | Debuger |
Licencja | MS-DOS v2.0, FreeDOS: MIT OS/2, Windows: oprogramowanie zastrzeżone |
Strona internetowa | Odpluskwić |
Debuger liniowo zorientowany DEBUG
jest zewnętrznym poleceniem w systemach operacyjnych, takich jak DOS , OS/2 i Windows (tylko w wersjach 16-bitowych/32-bitowych).
DEBUG może działać jako asembler , deasembler lub program zrzutu heksadecymalnego , umożliwiając użytkownikom interaktywne badanie zawartości pamięci (w języku asemblerowym , szesnastkowym lub ASCII ), dokonywanie zmian i selektywne wykonywanie COM , EXE i innych typów plików. Posiada również kilka podkomend, które służą do uzyskiwania dostępu do określonych sektorów dysku , portów I/O i adresów pamięci .
Przegląd
Tradycyjnie wszystkie komputery i systemy operacyjne zawierały funkcję konserwacji, używaną do określenia, czy program działa poprawnie. DEBUG został pierwotnie napisany przez Tima Patersona, aby służył temu celowi w 86-DOS . Kiedy Paterson zaczął pracować dla Microsoftu na początku lat 80., przywiózł ze sobą program. DEBUG był częścią DOS 1.00 i został dołączony do MS-DOS / PC DOS i niektórych wersji Microsoft Windows . Pierwotnie nazwany DEBUG.COM, plik wykonywalny został przemianowany na DEBUG.EXE w DOS 5.0.
Windows XP i nowsze wersje dołączone DEBUG
do podsystemu MS-DOS w celu zachowania zgodności z MS-DOS. 16-bitowe polecenia DOS nie są dostępne w 64-bitowych wersjach systemu Windows.
DEBUG MS-DOS/PC DOS ma kilka ograniczeń:
- W trybach montażu/dezasemblacji obsługuje tylko kody 8086 .
- Może uzyskać dostęp tylko do rejestrów 16-bitowych, a nie do rejestrów rozszerzonych 32-bitowych.
- Kiedy używana jest podkomenda "N" do nazywania plików, nazwa pliku jest przechowywana od przesunięcia DS :5D do DS:67 ( obszar Bloku Kontroli Plików z Prefiksem Segmentu Programu ), co oznacza, że program może zapisywać tylko pliki w formacie FAT 8.3 .
Rozszerzone pakiety DEBUG zawierają polecenie DEBUG w Novell DOS 7 , OpenDOS 7.01 i DR-DOS 7.02 i wyższych, reimplementację wcześniejszego Symbolic Instruction Debugger SID/SID86 firmy Digital Research , który był dostarczany z poprzednimi wersjami DR DOS . Jest w pełni kompatybilny ze składnią wiersza poleceń DEBUG systemu MS-DOS/PC DOS, ale oferuje wiele ulepszeń, w tym obsługę 16-bitowych i 32-bitowych kodów operacyjnych aż do Pentium , tryb rozszerzony (/X) z dziesiątkami dodatkowych poleceń i tryby podrzędne, znacznie ulepszona składnia wiersza poleceń z makrami definiowanymi przez użytkownika i symbolicznymi funkcjami debugowania z nazwanymi rejestrami, załadowanymi tablicami symboli , operacjami matematycznymi i konwersjami bazowymi , a także deasemblerem komentarzy . Niektóre wersje wykorzystywały również DPMS do działania jako debuger w trybie chronionym „tryb ukrycia”.
Wersja FreeDOS DEBUG została opracowana przez Paula Vojtę i jest licencjonowana na podstawie licencji MIT .
Istnieje również wersja 32-bitowego klonu "DEBUGX" obsługująca 32-bitowe programy DPMI . Andreas „Japheth” Grech, autor rozszerzenia HX DOS , opracował ulepszone wersje DEBUG od 0.98 do 1.25, a były programista PC DOS Vernon C. Brooks dodał wersje 1.26 do 1.32.
Składnia
DEBUG [[drive:][path] filename [parameters]]
Gdy DEBUG zostanie uruchomiony bez żadnych parametrów, pojawi się monit DEBUG, "-". Użytkownik może następnie wprowadzić jedną z kilku jedno- lub dwuliterowych komend, w tym „A”, aby przejść do trybu asemblera, „D” w celu wykonania zrzutu szesnastkowego , „T” w celu śledzenia i „U” w celu zdeasemblowania (deasemblacji) programu w pamięci. DEBUG może być również używany jako interpreter skryptu DEBUG przy użyciu następującej składni.
DEBUG < filename
Plik skryptu może zawierać podkomendy DEBUG i instrukcje języka asemblera. Ta metoda może być używana do tworzenia lub edytowania plików binarnych z plików wsadowych .
Używanie do celów innych niż debugowanie
Narzędzie DEBUG jest przydatne do edycji plików binarnych w środowisku, w którym zainstalowany jest tylko DOS bez niczego innego. Może być również używany do edycji sektorów dysku, co jest jedną z metod usuwania wirusów sektora startowego.
Dostępność
Chociaż dokumentacja techniczna dla polecenia DEBUG została usunięta wraz z wydaniem MS/DOS 3.3, polecenie zostało zachowane w standardowej dystrybucji, w przeciwieństwie do tego, co zostało zrobione w EXE2BIN .
DEBUGUJ w innych systemach operacyjnych
Te systemy operacyjne Intel ISIS-II i iRMX 86 , grudzień TOPS-10 i TOPS-20 , Theos / OASIS , Zilog Z80-Rio , Stratus OpenVOS , PC-MOS i AROS zapewniają również DEBUG
polecenie.
Zobacz też
- Lista poleceń DOS
- DDT (polecenie CP/M) (Dynamiczna technika debugowania)
- SID (Debugger instrukcji symbolicznych)
- SYMDEB
- Widok kodu
- Turbo Debuger
- SoftICE