次の方法で共有


デバッガー コンポーネント

Visual Studio デバッガーは VSPackage として実装され、デバッグ セッション全体を管理します。 デバッグ セッションは、次の要素で構成されます。

  • デバッグ パッケージ: Visual Studio デバッガーは、デバッグ対象に関係なく、同じユーザー インターフェイスを提供します。

  • セッション デバッグ マネージャー (SDM): さまざまなデバッグ エンジンを管理するために、Visual Studio デバッガーに一貫したプログラム インターフェイスを提供します。 これは Visual Studio によって実装されます。

  • プロセス デバッグ マネージャー (PDM): Visual Studio の実行中のすべてのインスタンスについて、デバッグ可能なすべてのプログラムの一覧を管理します。 これは Visual Studio によって実装されます。

  • デバッグ エンジン (DE): デバッグ中のプログラムを監視し、実行中のプログラムの状態を SDM と PDM に通信し、式エバリュエーターとシンボル プロバイダーと対話して、プログラムのメモリと変数の状態をリアルタイムで分析します。 これは、Visual Studio (サポートされている言語用) と、独自のランタイムをサポートするサードパーティ ベンダーによって実装されます。

  • 式エバリュエーター (EE): 特定の時点でプログラムが停止されたときにユーザーによって提供される変数と式を動的に評価するためのサポートを提供します。 これは、Visual Studio (サポートされている言語) と、独自の言語をサポートするサード パーティベンダーによって実装されます。

  • シンボル プロバイダー (SP): シンボル ハンドラーとも呼ばれ、プログラムのデバッグ シンボルをプログラムの実行中のインスタンスにマップして、意味のある情報 (ソース コード レベルのデバッグや式の評価など) を提供できるようにします。 これは、Visual Studio (共通言語ランタイム [CLR] シンボルと Program DataBase [PDB] シンボル ファイル形式) と、独自のデバッグ情報の格納方法を持つサードパーティ ベンダーによって実装されます。

    次の図は、Visual Studio デバッガーのこれらの要素間の関係を示しています。

    デバッグ コンポーネントの概要

このセクションでは...

デバッグ パッケージ では、Visual Studio シェルで実行され、すべての UI を処理するデバッグ パッケージについて説明します。

プロセス デバッグ マネージャー は、デバッグ可能なプロセスのマネージャーである PDM の機能の概要を提供します。

セッション デバッグ マネージャー は、IDE にデバッグ セッションの統合ビューを提供する SDM を定義します。 SDM は DE を管理します。

デバッグ エンジン は、DE が提供するデバッグ サービスを文書化します。

操作モード では、IDE が動作できる 3 つのモード (デザイン モード、実行モード、中断モード) の概要を示します。 遷移メカニズムについても説明します。

式エバリュエーター では、実行時の EE の目的について説明します。

シンボル プロバイダー では、実装時にシンボル プロバイダーが変数と式を評価する方法について説明します。

型ビジュアライザーとカスタム ビューアー では、型ビジュアライザーとカスタム ビューアーとは何か、両方をサポートする式エバリュエーターが果たす役割について説明します。

デバッガーの概念では、 デバッグアーキテクチャの主要な概念について説明します。

デバッガー コンテキストでは、 コード、ドキュメント、および式の評価コンテキスト内で DE が同時に動作する方法について説明します。 3 つのコンテキストごとに、それに関連する場所、位置、または評価について説明します。

デバッグ タスク には、プログラムの起動や式の評価など、さまざまなデバッグ タスクへのリンクが含まれています。

こちらも参照ください