Debug (comando)

Origem: Wikipédia, a enciclopédia livre.
Saltar para a navegaçãoSaltar para a pesquisa
Debug-comand.png
Debug (debug.exe) é um comando que foi criado no início dos anos 1980 e acompanhava sistemas operacionais DOS[1] (MS-DOS, PC-DOS, OS/2). O comando continuou a ser incorporado em diversas interfaces e sistemas operacionais posteriores como o Windows 3.1Windows 95Windows 98Windows NTWindows XPWindows Vista 32 bits, Windows 7 32 bits, poderia ser acessado pelo shell (command.com ou cmd), porém foi removido do Windows Vista e Windows 7 64 bits, e no Windows 8 32 e 64 bits.
Nos sistemas Microsoft Windows ele usualmente era encontrado na pasta %windows%\system32.
O comando é tido como especialmente útil para interpretar e monitorar o funcionamento de programas executáveis, bem como encontrar possíveis erros operacionais. Com ele é possível abrir apenas programas .COM (até 64K de memória), além de fazer leitura de disco pelo processo de interrupção da BIOS e interrupção do MS-DOS (que o Windows emulava em modo shell) para examinar o FAT (File Allocation Table) e Boot (setor de inicialização do sistema), sendo possível investigar sua aparência em Assembly (baixo nível).
Além exibir a aparência em assembly de praticamente qualquer executável, ele também exibia em formato hexadecimal do arquivo utilizando-se a sintaxe: debug nome_do_executável.
Quem pode (e deve) usar o Debug
A ferramenta de Debug da SAP pode e deve ser utilizada por praticamente toda a equipe envolvida nas customizações do código ABAP.
Desenvolvedores iniciantes ou analistas que não tem um grande conhecimento sobre o código podem se beneficiar do Debug por terem mais facilidade na identificação e correção de problemas ocorridos no desenvolvimento.
Como ele vai poder te ajudar
O debug ajuda a compreender nos mínimos detalhes o código de um programa ABAP. Com ele é possível saber por exemplo, qual a lógica empregada e quais as regras de negócio estão implementadas nas rotinas.
Além disso, é possível descobrir os valores de tabelas, variáveis e campos de tela para entender como está sendo executada a manipulação dos dados internos dos programas, passagem de parâmetros, etc. Por conta disso, o debug é uma poderosa ferramenta para análise e simulação de cenários em tempo de execução dos programas.
Um alerta aos profissionais que utilizam ou desejam utilizar o Debug é sobre os cuidados necessários ao executá-lo no ambiente de produção. Na verdade, é aconselhável que nunca se faça debug em produção, porque podem ser efetuadas determinadas consistências ou a manipulação de alguma informação que poderá impactar nas áreas de negócio. Em ambientes de desenvolvimento e qualidade não há essa dificuldade e preocupação.

Sintaxe[editar | editar código-fonte]

debug [[Drive:][caminho] arquivo [parâmetros]]
Exemplo:
c:\> debug programa.com

Montador Assembly[editar | editar código-fonte]

Além de ser um disassembly, o debug tambem monta programas escrevendo diretamente ou em códigos hexa, porém, sendo desenvolvido para arquitetura x86 e ainda na década de 80, ele não entende os modernos mnemônicos que a intel introduziu, nem o recurso MMX de manipulação gráfica da intel.
Uma montagem de programa para ler o BOOT do disquete:
c:\> debug
-a  
0B6E:0100 mov ax,0201
0B6E:0103 mov bx,200
0B6E:0106 mov dx,0
0B6E:0109 mov cx,1
0B6E:010C int 13
0B6E:010E int 20
0B6E:0110 
-g=100

Funções Básicas[editar | editar código-fonte]

Após rodar o comando Debug, estão disponíveis as seguintes funções (principais)
-A - a100 (Começar a escrever Assembly a partir do endereço 100h)
-D - D100 ( Exibir em formato Hexa, a partir do endereço 100h )
-U - U100 (Exibir em imagem Disassembly a partir do endereço 100h )
-RCX - rcx20 (reservar 20 bytes hexa para o programa mencionado em "N")
-N - N arquivo.com ( considerar o nome arquivo.com quando for selecionado gravacao em disco através do recurso "W")
-W - W ( gravar conteúdo reservado a partir de 100h com a quantidade definida em "RCX" utilizando o nome mencionado em "N")
-G - G=120 (executar o programa a partir do endereço hexa 120h )
-O
-Q - ( sair do Debug )

Referências

  1.  Daniel B. Sedory. «A Guide to DEBUG». Consultado em 13 de setembro de 2011
  2.  «Debug». Microsoft Technet. Consultado em 13 de setembro de 2011
Ícone de esboçoEste artigo sobre software é um esboço. Você pode ajudar a Wikipédia expandindo-o.