ホーム
製品リスト
ダウンロード
ショップ
お問い合わせ
会社概要
ブログ
ホーム
製品リスト
ダウンロード
ショップ
お問い合わせ
会社概要
ブログ
Jungo
製品ホーム
製品
PCI / PCI Express 開発
WinDriver PCI for Windows
WinDriver PCI for Linux
WinDriver PCI for Linux ARM
USB 開発
WinDriver USB for Windows
WinDriver USB for Linux
WinDriver USB for Linux ARM
サーバー & 署名サービス
WinDriver for Servers
デジタル署名代行サービス
WHQL プレテスト代行
ダウンロード
WinDriver PCI 評価版
WinDriver USB 評価版
ライセンス
価格・ライセンス
価格・ライセンス体系
ライセンス オプション詳細
保守・アップグレード
SSP 保守サポート内容
アップグレード手順
技術情報
ドキュメント・FAQ
テクニカル情報トップ
マニュアル ダウンロード
よくある質問 (FAQ)
技術ドキュメント (KB)
セットアップ
インストール手順
アンインストール手順
技術記事・更新情報
FPGA DMA 転送実装ガイド
リリースノート
バージョン変更履歴
ブログ
お問い合わせ
テクニカル ドキュメント #19
Doc ID:
19
製品:
WinDriver
Version:
--
WinDriver を使用した、ドライバ コードのデバッグ
WinDriver ツールキットを使用する際に、ユーザー モードで開発し、そして、コンパイラのデバッガのように一般的なユーザー モードのデバッグ ツールを使用できます。
WinDriver ツールキットには、デバッグ ツールとして、Debug Monitor ユーティリティ ("Monitor Debug Messages" または "KernelTracer") があります。このユーティリティには、GUI ベースの WinDriver/util/wddebug_gui と コンソール ベースの WinDriver/util/wddebug があります。 このユーティリティの詳細に関しては、WinDriver のユーザー マニュアルおよびテクニカル ドキュメント
#12
、
#13
(GUI 以外の使用方法) および
#14
(VxWorks の場合) を参照してください。
WinDriver には、WD_DebugAdd() API (v5.03 以降) があります。WD_DebugAdd() API で、コードからのデバッグ メッセージを Debug Monitor ログへ送信します。この API の詳細は、WinDriver のユーザー マニュアルの「関数リファレンス」を参照してください。
注意: ユーザーおよびカーネル モード コード (WinDriver の Kernel PlugIn 機能のいずれかを使用して記述) からこの関数を呼ぶことができ、Kernel PlugIn KP_IntAtIrql() 関数などの HIGH IRQL で起動する関数内からこの関数を呼ぶことができます。
テクニカル ドキュメント #44
の説明のとおり、Debug Monitor ウィンドウの代わりに、カーネル デバッガへデバッグ メッセージを送ることもできます。たとえば、開発環境の PC でシステムがクラッシュまたはハングした場合に、他の PC へデバッグ メッセージのログを取ることができます。
v6.0 以降、WinDriver の多くの関数は、成功か関連するエラー コードを示す値を返し、デバッグ時に役立ちます。USB の場合、WinDriver の v5.20 以降、USB API は、更にステータス情報を返し、エラーの原因を判明します。この情報は、USB 構造体へ追加された dwStatus フィールドに返されます。この戻りのステータス コードは、WinDriver の WD_USB_ERROR_CODES enum で定義されます /include/windrvr.h)。
ernel でコードを開発する際には (Kernel PlugIn を使用)、デバッグ中にカーネル デバッガ (WinDbg - Microsoft 社から無料で提供されている
デバッグツール
) を使用できます。上記でも述べましたが、ご使用のカーネル デバッガへ Debug Monitor から直接デバッグ メッセージを送信します。
WinDriver のデバッグ処理の詳細に関しましては、WinDriver のユーザー マニュアルの「デバッグ」の章を参照してください。
このサイトでは、サイトや広告を改善するために Cookie を使用します。サイトを利用することで、Cookie の使用に同意するものといたします。詳細は
プライバシーについて
をご覧ください。
同意する