Mecanismo de depuração.
Um mecanismo de depuração (DE) funciona com o sistema operacional ou o intérprete para fornecer serviços de depuração, como avaliação de expressão, pontos de interrupção e controle de execução. O DE é responsável por monitorar o estado de um programa que está sendo depurado. Para fazer isso, o DE usa métodos para os quais estão disponíveis para ele no tempo de execução com suporte, se da CPU ou das APIs de fornecida pelo tempo de execução.
Por exemplo, o common language runtime (CLR) fornece mecanismos para monitorar um programa em execução por meio das interfaces de ICorDebugXXX. A DE que suporta o CLR usa as interfaces apropriadas de ICorDebugXXX para controlar um programa de código gerenciado que está sendo depurado. Ele se comunica as alterações de estado para o Gerenciador de depuração de sessão (SDM), que encaminha essas informações para o Visual Studio IDE.
Dica
Um mecanismo de depuração destina-se um tempo de execução específico, ou seja, o sistema no qual o programa que está sendo depurado é executado.O CLR é o tempo de execução para código gerenciado e o tempo de execução do Win32 é para aplicativos nativos do Windows.Se o idioma que você cria pode direcionar dentre esses dois runtimes, Visual Studio já fornece os mecanismos de depuração necessárias.Tudo que você precisa para implementar é um avaliador de expressão.
Operação do mecanismo de depuração
Os serviços de monitoramento são implementados por meio DE interfaces e podem fazer com que o pacote de depuração a transição entre os diferentes modos operacionais. Para obter mais informações, consulte Modos operacionais. Normalmente, há apenas uma implementação de por um ambiente de tempo de execução.
Dica
Embora haja implementações separadas DE Transact-SQL e JScript, VBScript e JScript compartilhar um único DE.
Visual Studiodepuração permite depurar mecanismos para executar uma destas duas maneiras: no mesmo processo como o Visual Studio do shell ou no mesmo processo como o programa de destino que está sendo depurado. O último formulário geralmente ocorre quando o processo sendo depurado está, na verdade, um script em execução sob um intérprete e o mecanismo de depuração deve ter um conhecimento profundo do intérprete para monitorar o script. Observe que, nesse caso, o interpretador é realmente um tempo de execução; mecanismos de depuração são para implementações específicas de tempo de execução. Além disso, a implementação de um único DE pode ser dividida em limites de processos e de máquina (por exemplo, depuração remota).
A expõe da Visual Studio interfaces de depuração. Toda a comunicação está usando com. Se o DE é carregado no processo, fora de processo ou em outro computador, ele não afeta a comunicação de componente.
O DE funciona com um componente do avaliador de expressão para permitir que o DE para esse determinado tempo de execução compreender a sintaxe de expressões. O DE também funciona com um componente de manipulador do símbolo para acessar as informações de depuração simbólica geradas pelo compilador de linguagem. Para obter mais informações, consulte Avaliador de expressão e Provedor de símbolo.