アプリケーションを開発する際、アプリケーションのデバッグはアプリケーション開発における重要な部分になります。複雑なソフトウェアシステムを簡単にデバッグできるようにするデバッグツールを使用できます。一般的に使用されるデバッグ用ツールは次のとおりです。
mdb - Oracle Solaris オペレーティングシステムのための拡張可能な汎用デバッグツールです。mdb では、アセンブリ言語レベルでデバッグできます。mdb を使用すると、Oracle Solaris カーネルおよび関連するデバイスドライバとモジュールをデバッグできます。ユーザーは mdb と一緒に libumem を使用することによって、アプリケーションでのメモリーリークやバグを見つけることができます。詳細は、次を参照してください。
gdb - GNU デバッガ (通常、gdb と呼ばれます) を使用すると、アプリケーションをデバッグできます。gdb では、実行時にプログラムを分析およびデバッグできます。また、プログラムを調べるために、特定のブレークポイントを追加することもできます。詳細は、GNU Debugger を参照してください。
dtrace – Oracle Solaris OS 用の総合的な動的トレースフレームワークです。Dtrace 機能によって、オペレーティングシステムやユーザープログラムの動作に関する疑問について明確な答えを得ることができます。Dtrace は、パフォーマンスの問題とアプリケーションのバグを特定するのに役立ちます。詳細は、Oracle Solaris 11.3 DTrace (Dynamic Tracing) Guideを参照してください。
Oracle Solaris Studio では、アプリケーションのデバッグ用に次のツールが提供されます。
dbx - ソースレベルの対話型デバッグ用ツールです。制御された方法でプログラムを実行するために使用されます。パフォーマンスやメモリー使用率のデータ収集、メモリーアクセスのモニタリング、メモリーリークの検出などのプログラムの動的な実行を完全に制御できます。また dbxtool コマンドを実行することによって、dbx の GUI バージョンを使用することもできます。詳細は、『Oracle Solaris Studio 12.4: dbx コマンドによるデバッグ』および『Oracle Solaris Studio 12.4: dbxtool チュートリアル』を参照してください。
discover – コード内のメモリーアクセスエラーを検出するのに役立つコマンド行ユーティリティーです。詳細は、Sun メモリーエラー探索ツールを使用したメモリーアクセスエラーの検索に関するページおよび「メモリーエラー探索ツール (discover)」を参照してください。
コードアナライザ - アプリケーションの脆弱性 (メモリーリークやメモリーアクセス違反など) を検出することによって、アプリケーションの信頼性とセキュリティーを確保するのに役立つツールの統合されたセットです。詳細は、『Oracle Solaris Studio 12.4: コードアナライザユーザーズガイド』および『Oracle Solaris Studio 12.4: コードアナライザチュートリアル』を参照してください。
コレクタおよびパフォーマンスアナライザ - これらのツールは、広範囲のパフォーマンスデータの統計的プロファイリングと多数のシステムコールのトレースを行い、それらのデータを関数、ソースレベル、および命令レベルでプログラム構造に関連付けます。詳細は、『Oracle Solaris Studio 12.4: パフォーマンスアナライザ』および『Oracle Solaris Studio 12.4: パフォーマンスアナライザチュートリアル』を参照してください。
スレッドアナライザ - 検出することが難しい複雑な並列プログラミングエラーを検出できます。スレッドアナライザは POSIX、OpenMP、および Oracle Solaris スレッドをサポートしています。詳細は、『Oracle Solaris Studio 12.4: スレッドアナライザユーザーズガイド』を参照してください。