ヌル モデム ケーブルを使用してリモート デバッグ セッションをセットアップする方法

文書翻訳 文書翻訳
文書番号: 151981 - 対象製品
この記事は、以前は次の ID で公開されていました: JP151981
すべて展開する | すべて折りたたむ

目次

概要

この資料では、別の Windows ベースのコンピュータに接続されたヌル モデム ケーブルを使用して、Windows ベースのコンピュータでデバッガをセットアップする方法について説明します。

詳細

ここでは、以下の内容について説明します。
  • カーネル デバッガが必要かどうかを判断する
  • リモート デバッグについて
  • ヌル モデム ケーブルを使用する
  • Boot.ini ファイルの属性を変更する
  • デバッガ オプション
  • 使用するコンピュータ用にデバッガを構成する
  • ヌル モデム ケーブルをセットアップする
  • Remote.exe セッション用にホスト コンピュータを構成する

カーネル デバッガが必要かどうかを判断する

Windows に付属するカーネル デバッガを使用すると、デバッガを使用しないと通常は取得できないコンピュータに関する情報を取得できます。Windows スタートアップ メニュー (Boot.ini) で、Windows のカーネル デバッガを有効にできます。カーネル デバッガを有効にすると、Windows デバッガによってデバッグ情報がリモート デバッガに出力され、その情報をリモート ユーザーが解析できるようになります。この操作は通常、Memory.dmp ファイルからは診断できない致命的なエラーが Windows で発生した場合、または Memory.dmp ファイルが生成されない場合に、そのエラーを解析する目的で、Microsoft Support 担当者からの指示によって行います。

リモート デバッグについて

ここでは、デバッグ対象のシステムをターゲット コンピュータ、デバッグを実行する側のシステムをホスト コンピュータと呼びます。リモート デバッグの処理が実行されるのは、2 台のコンピュータがシリアル通信ポートで接続されている場合です。ターゲット コンピュータおよびホスト コンピュータでは Windows カーネル デバッガが実行されます。Windows カーネル デバッガでは、通信に特殊なデバッグ API およびプロトコルが使用されます。Debugging Tools for Windows は、次のマイクロソフトの Web サイトからダウンロードできます。
http://www.microsoft.com/japan/whdc/devtools/debugging/default.mspx

ヌル モデム ケーブルを使用する

ヌル モデム ケーブルをシリアル ポートに接続すると、現状では最高速度 19,200 でデバッガを実行できます。これに対し、モデム経由の場合の速度は 9,600 です。一般に、ヌル モデム ケーブルによる接続は、モデムを使用する場合よりも信頼性が高いと考えられています。その理由には以下の点が挙げられます。
  • 構成作業にモデムの構成が関係しない。
  • モデムや回線の障害が発生する可能性がない。
  • コンピュータをローカルでデバッグできる。
  • 高速なデバッグが可能である。
その方法としては、ターゲット コンピュータをデバッグ用にセットアップし、ホスト コンピュータは Remote.exe セッションを使用してデバッグを行うようにセットアップするのが、最も一般的です。この構成により、テクニカル サポート担当者は、リモート アクセス接続を使用して Remote.exe セッションに接続し、実際にターゲット コンピュータのある場所に行かなくてもターゲット コンピュータをデバッグできるようになります。

Boot.ini ファイルの属性を変更する

ターゲット コンピュータをセットアップするには、ブート パーティションにある Boot.ini ファイルを編集し、適切なデバッガ オプションを追加します。これには、標準的な ASCII テキスト エディタを使用します。Boot.ini ファイルは、ブート パーティションのディレクトリにある隠しファイルです。Boot.ini には、隠しファイル属性、読み取り専用属性、およびシステム属性が設定されています。Boot.ini ファイルを編集するには、先にこれらの属性を変更する必要があります。

Boot.ini ファイルの属性を変更するには、コマンド プロンプトで attrib -h -r -s c:\boot.ini と入力し、Enter キーを押します。メモ帳などのテキスト エディタを使用して Boot.ini ファイルを編集します。

ファイルを編集した後、コマンド プロンプトで attrib +h +r +s c:\boot.ini と入力し、Enter キーを押して、読み取り専用属性、隠しファイル属性、およびシステム属性を復元します。コマンド プロンプトを使用する代わりに、ファイル マネージャを使用してファイルの属性を変更することもできます。これを行うには、次の手順を実行します。
  1. ファイル マネージャで、[表示] メニューの [ファイルの種類の指定] をクリックします。
  2. [隠しファイル/システム ファイルも表示] チェック ボックスをオンにして、[OK] をクリックします。
  3. Boot.ini ファイルを選択し、[ファイル] メニューの [プロパティ] をクリックします。
  4. 以下のチェック ボックスをオフにして、[OK] をクリックします。
    • 読み取り専用
    • 隠しファイル
    • システム

デバッガ オプション

ターゲット コンピュータの Boot.ini をエディタで開いたら、以下のオプションを Boot.ini に追加して、ターゲット コンピュータのデバッガ環境を構成します。
  • /debug : カーネル デバッガを有効にするには、このオプションを使用します。
  • /debugport : カーネル デバッガで使用するシリアル ポートを指定します。シリアル ポートが指定されていない場合、デバッガでは常に COM2 が使用されます。
  • /crashdebug : 致命的なシステム エラー (FSE) が発生した場合にのみ、デバッグ情報を送信します。
  • /baudrate : カーネル デバッガで使用するボー レートを設定します。デフォルトのボー レートは 19,200 です。モデム経由のリモート デバッグでは、9,600 のボー レートが一般的です。

使用するコンピュータ用にデバッガを構成する

ターゲット コンピュータでデバッガを構成するときは、上記のようないくつかのオプションを使用できます。これらのオプションのいずれかを Boot.ini に追加するには、次の例を参考にしてください。

典型的な Boot.ini の内容を以下に示します。[operating systems] セクションの各エントリは、通常のシステム起動時にブート メニューに表示される各オプションに対応しています。
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT" Version 3.5"
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT" Version 3.5 [VGA
mode]" /BASEVIDEO
C:\="MS-DOS"
				
デバッガを有効にするには、COM1 を使用して以下の手順を実行します。
  1. 通常使用するスタートアップ オプションを選択し、行末に /debug スイッチを追加します。
  2. /debugport=com1 というスイッチを追加して、通信ポートを指定します。
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT" Version 3.5"
/debug /debugport=com1
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT" Version 3.5 [VGA
mode]" /BASEVIDEO
C:\="MS-DOS"
				

ヌル モデム ケーブルのセットアップ

ヌル モデム ケーブルとは、2 つのシリアル ポート間でデータを転送できるように構成されたシリアル ケーブルです。シリアル ポートには、通常はシリアル デバイスを接続します。今回の場合は、シリアル ポート間の接続を行えるようにターゲット コンピュータを構成する必要があります。通常のシリアル ケーブルを使用すると、ターゲット コンピュータのシステムでは、別のシリアル ポートではなくシリアル デバイスが接続されるものと見なされ、システムをデバッグできなくなります。このため、ヌル モデム ケーブルを使用することが重要です。

ヌル モデムを使用して 2 台のコンピュータ間に直接シリアル接続を確立するときは、次の表のようにケーブルを接続する必要があります。
9 ピン ヌル モデム ケーブル接続

リモート ホスト
シリアル ポート コネクタ ホスト システム
シリアル ポート コネクタ

シグナル
3  2  Transmit Data (送信データ)
2  3  Receive Data (受信データ)
7  8  Request to Send (送信要求)
8  7  Clear to Send (送信可)
6, 1  4  Data Set Ready (データ セット レディ) および Carrier Detect (キャリア検出)
5  5  Signal Ground (グラウンド線)
4  6, 1  Data Terminal Ready (データ ターミナル レディ)

25 ピン ヌル モデム ケーブル接続

2  3  Transmit Data (送信データ)
3  2  Receive Data (受信データ)
4  5  Request to Send (送信要求)
5  4  Clear to Send (送信可)
6  20  Data Set Ready (データ セット レディ) および Carrier Detect (キャリア検出)
7  7  Signal Ground (グラウンド線)
20  6  Data Terminal Ready (データ ターミナル レディ)
				

Remote.exe セッション用にホスト コンピュータを構成する

ここでは、テクニカル サポート担当者がホスト コンピュータの前に座っているかのように、ターゲット コンピュータのデバッグを行えるよう、ホスト コンピュータをセットアップします。Remote.exe を実行して、このデバッグ セッションにリモート アクセス接続を介してリモートからアクセスできるようにします。

Remote.exe は、リモート コンピュータでのコマンド ライン プログラムの実行を可能にするコマンド ライン ユーティリティです。Remote.exe ではサーバー コンポーネントとクライアント コンポーネントの 2 つの部分が使用されます。Remote.exe を使用するには、まず、デバッグを実行するコンピュータでサーバー コンポーネントを開始する必要があります。これにより、Remote.exe のクライアント コンポーネントを使用して、別のユーザーがデバッグ セッションに接続できるようになります。Remote.exe は、リソース キットに付属しています。このユーティリティの詳細とコマンドの構文については、リソース キットのオンライン ヘルプを参照してください。

このセットアップには、Windows のインストール CD と Windows リソース キットの CD が必要です。
  1. ネットワークで、テクニカル サポート担当者用のリモート アクセス アカウントをセットアップする必要があります。ホスト システムの名前を含め、この情報を文書化して、いつでもサポート担当者に通知できるようにしておいてください。
  2. ホスト コンピュータは、以下の「サポート技術情報」 (Microsoft Knowledge Base) に記載されているように構成する必要があります。この資料では、ホスト コンピュータにシンボルをセットアップして、ターゲット コンピュータをデバッグする方法が詳しく説明されています。 関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
    148659 Windows NT のデバッグ シンボルを設定する方法
  3. I386KD を実行するには、Support\Debug\I386\ フォルダ (I386 コンピュータをデバッグする場合) にあるすべてのファイルをハード ディスク上のフォルダにコピーし、コピーされたこのフォルダにカレント ディレクトリを移動してから I386KD を実行することを推奨します。
  4. 同じフォルダに、リソース キットから Remote.exe をコピーします。
  5. I386KD では、正しく実行するために必要な情報が環境変数から取得されます。I386KD では多くの環境変数が使用されますが、ここでは少なくとも _NT_SYMBOL_PATH 変数と _NT_DEBUG_PORT 変数が必要になります。環境変数を設定するには、set コマンドを使用します。_NT_SYMBOL_PATH 変数には、デバッガによってデバッグ セッションで使用されるシンボル ファイルのパスを指定します。_NT_DEBUG_PORT には、デバッグ時にホスト コンピュータで使用するアクティブなシリアル ポートを指定します。このシリアル ポートがシリアル ポート 2 以外の場合は、_NT_DEBUG_PORT 環境変数を使用する必要があります。

    例 :
    ホスト コンピュータのヌル モデム ケーブルがシリアル ポート 1 に接続され、シンボルが C:\Debug\Symbols フォルダにコピーされているとします。コマンド プロンプトで次のコマンドを入力します。
    set _nt_debug_port=com1
    set _nt_symbol_path=c:\debug\symbols
    set _nt_debug_log_file_append=c:\temp\debug.log
  6. デバッグ ツールが正しくセットアップされていることを確認します。これを行うには、次の手順を実行します。
    1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。次に、[名前] ボックスに Cmd と入力し、[OK] をクリックします。
    2. 上記の手順 3. でファイルをコピーしたパスに、カレント ディレクトリを移動します。
    3. i386kd -v と入力し、Enter キーを押します。
    4. ターゲットに割り込むには、Ctrl キーを押しながら C キーを押します。kd プロンプトが表示され、デバッガが割り込んだため、ターゲットのシステムは応答を停止 (ハング) します。
    5. kd プロンプトで、!process と入力し、Enter キーを押します。プロセスの一覧がシステムから返されます。これにより、デバッガが正常に実行されていることがわかります。
    6. g と入力し、Enter キーを押して、ターゲットに対して実行を指示します。これにより、ターゲットは通常の動作に戻ることができます。
    7. exit と入力し、Enter キーを押して、コマンド ウィンドウを閉じます。
  7. デバッグ セッションを開始し、そのセッションにリモートから接続します。コマンド プロンプトで、次のように入力します。
    remote /s "i386kd -v" debug

その他の参考資料

  • Windows リソース キット
  • Driver Development Kit のオンライン ヘルプ
  • 「サポート技術情報」 (Microsoft Knowledge Base) でキーワードを「debugref」として検索すると、一連のカーネル デバッグの HOWTO 資料を見つけることができます。

プロパティ

文書番号: 151981 - 最終更新日: 2007年12月3日 - リビジョン: 10.2
この資料は以下の製品について記述したものです。
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 3.5
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
キーワード:?
KB151981
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com