表2-7は、Windowsオペレーティング・システムで使用可能なトラブルシューティング・ツールの一覧を示しています。
表2-7 Windowsのネイティブ・トラブルシューティング・ツール
ツール | 説明 |
---|---|
|
メモリー・ダンプ・ファイルが正常に作成されていることを確認するコマンド行ユーティリティ。このツールは、MicrosoftのWebサイトから入手可能なDebugging Tools for Windowsダウンロードに含まれています(「Windowsでのクラッシュ・ダンプの収集」を参照)。 |
|
Visual C++およびWin32デバッガの起動に使用可能なコマンド行ユーティリティ。 |
|
User Mode Process Dumperは、MicrosoftのWebサイトから入手可能なOEM Support Toolsダウンロードに含まれています(「Windowsでのクラッシュ・ダンプの収集」を参照)。 |
|
Windowsデバッガは、Windowsアプリケーションまたはクラッシュ・ダンプのデバッグに使用できます。このツールは、MicrosoftのWebサイトから入手可能なDebugging Tools for Windowsダウンロードに含まれています(「Windowsでのクラッシュ・ダンプの収集」を参照)。 |
|
メモリー割当てを追跡するための追加サポートを自動的に含めるコンパイラ・オプション。 |
表2-8では、Linuxオペレーティング・システム・バージョン10で導入または改善されたいくつかのトラブルシューティング・ツールについて説明しています。
表2-8 Linuxのネイティブ・トラブルシューティング・ツール
ツール | 説明 |
---|---|
|
C++分解シンボル名を分解解除します。このユーティリティは、Linux上の |
|
GNUデバッガ |
|
メモリー割当ての追跡 |
|
スレッド・スタックを出力します(Oracle Solarisオペレーティング・システムの すべてのディストリビューションがデフォルトでこのツールを提供しているわけではありません。したがって、オープン・ソース・ダウンロードからのダウンロードが必要になる場合があります。 |
|
ライブラリ呼出しトレーサ(Oracle Solarisオペレーティング・システムの すべてのディストリビューションがデフォルトでこのツールを提供しているわけではありません。したがって、オープン・ソース・ダウンロードからのダウンロードが必要になる場合があります。 |
|
GNU |
|
Oracle Solarisオペレーティング・システムの |
|
システム・コール・トレーサ(Oracle Solarisオペレーティング・システムの |
|
CPU負荷が非常に高いプロセスを表示します。 |
|
プロセス、メモリー、ページング、ブロックI/O、トラップ、およびCPUアクティビティに関する情報を報告します。 |
表2-9は、Oracle Solarisオペレーティング・システムで使用可能なトラブルシューティング・ツールの一覧を示しています。
表2-9 Oracle Solarisオペレーティング・システムのネイティブ・トラブルシューティング・ツール
ツール | 説明 |
---|---|
|
JVMによって生成されるコア・ファイルの名前と場所を指定します。 |
|
CPUパフォーマンス・カウンタを使ってシステム動作をモニターします。 |
|
CPUパフォーマンス・カウンタを使用してプロセスとLWPの動作をモニターします。 |
|
C++分解シンボル名を分解解除します。このユーティリティは、Oracle Solarisオペレーティング・システム上の |
|
DTraceは、Oracle Solaris 10オペレーティング・システムで導入された、動的トレース・コンパイラおよびトレース・ユーティリティです。これは、カーネル関数、システム・コール、およびユーザー関数の動的トレースを実行できます。このツールを使えば、入口、出口、およびその他のプローブ・ポイントで任意の安全なスクリプトを実行できます。スクリプトは、Dプログラミング言語と呼ばれる、Cに似ているが安全なポインタ・セマンティクス言語で記述されます。「DTraceツール」も参照してください。 |
|
プロセスのコア・ダンプを強制します。コア・ダンプの書込み後、プロセスは継続します。 |
|
割込みスレッドで消費されるCPUに関する統計を報告します。 |
|
I/O統計を報告します。 |
|
このライブラリは、Oracle Solaris 9オペレーティング・システムupdate 3で導入され、高速かつスケーラブルなオブジェクト・キャッシュ用メモリー割当ておよび拡張デバッグ・サポートを提供します。このツールを使用して、メモリー管理上のバグを発見して修正できます(「libumemツールによるリークの検出」を参照)。 |
|
カーネルおよびユーザー・アプリケーションとクラッシュ・ダンプ用のモジュラ・デバッガ |
|
各種ネットワーク関連データ構造体の内容を表示します。 |
|
プロセス引数、環境変数または補助ベクトルを出力します。ほかのコマンド( |
|
プロセス・ファイル記述子に関する情報を出力します。Oracle Solaris 10オペレーティング・システム以降、ファイル名も出力されるようになりました。 |
|
プロセスによってロードされた共有オブジェクトを出力します。 |
|
プロセスまたはコア・ファイルのメモリー・レイアウト(ヒープ、データおよびテキスト・セクションを含む)を出力します。Oracle Solaris 10以降は、スタック・セグメントがテキスト |
|
アクティブなOracle Solarisオペレーティング・システム・プロセスの統計を報告します。( |
|
プロセスを実行モードに設定します( |
|
すべてのプロセスを一覧表示します。 |
|
プロセスのシグナル・ハンドラを一覧表示します。 |
|
特定のプロセスまたはコア・ファイルのスレッドのスタックを出力します。Oracle Solaris 10オペレーティング・システム以降は、JavaフレームでJavaメソッド名を出力できます。「pstackツールの改善」も参照してください。 |
|
プロセスを停止(中断)します。 |
|
指定されたPIDを含むプロセス・ツリーを出力します。 |
|
システム・アクティビティ・レポータ |
|
CPU負荷が非常に高いプロセスを表示します。( |
|
システム・パフォーマンス(CPU、ディスク、ネットワークなど)を示すグラフを表示します。 |
|
CPU負荷が非常に高いプロセスを表示します。このツールは、Oracle Solarisオペレーティング・システムではフリーウェアとして利用可能ですが、デフォルトではインストールされません。 |
|
実行時トラップ統計を表示します。(SPARCのみ) |
|
システム・コール、ユーザー・モード関数、およびシグナルの入口および出口イベントをトレースし、オプションでこれらのイベントのいずれかでプロセスを停止します。このツールは、システム・コールやユーザー関数の引数も出力します。 |
|
システム仮想メモリーの統計を報告します。 |
|
メモリー割り当てを追跡します。 |