次の方法で共有


[ニュースレター アーカイブ ^] [< Vol. 4、No. 1] [Vol. 4、No. 3 >]

Systems Internals ニュースレター Vol. 4、No. 2

http://www.sysinternals.com
Copyright (C) 2002 Mark Russinovich


8 月 12 日 - 本号の内容:

  1. 論説

  2. SYSINTERNALS の新機能

    • TCPView v2.21
    • LiveKd v2.0
    • PsInfo v1.33|
    • PsList v1.21
    • BgInfo v3.0
    • PageDefrag v2.2
    • Win64/Itanium 用 Regmon v4.34
    • PC World Magazine の Sysinternals
    • Microsoft の Sysinternals
  3. INTERNALS INFORMATION

    • Mark と David Solomon によるロンドンでの内部構造の講義
    • Windows NT 開発内部
    • 変更がカウントされない場合
    • .NET Server RC1
    • WMI スクリプトの読み込み
    • BootVis を使用したブート プロセスのプロファイル
  4. 近日公開予定

    • クラッシュ ダンプ分析の概要

スポンサー: WINTERNALS SOFTWARE

Sysinternals ニュースレターは、http://www.winternals.com. の Web で Winternals Software によって後援されています Winternals Software は、Windows NT/2K/XP 用の高度なシステム ツールの主要な開発者およびプロバイダーです。 Winternals Software 製品には、Wdinows NT 4.0 用 FAT32、NTFSDOS Professional Edition (DOS 用の読み取り/書き込み NTFS ドライバー)、およびリモート回復が含まれます。 Winternals は、最も高速で最も完全なエンタープライズ デフラグ ツールである Defrag Manager バージョン 2.0 を発表したことを誇りに思っています。 NT または Windows 2000 システムにクライアント ソフトウェアをインストールしなくても、シンプルな MMC スナップインから Windows エンタープライズ全体のデフラグ スケジュールを管理できるようになりました。 詳細については、または 30 日間の試用版を要求するには、http://www.winternals.com/es を参照してください。

皆さん、こんにちは。

Sysinternals ニュースレターへようこそ。 現在、ニュースレターの購読者数は 35,000 人です。

AMD のもうすぐ発売される Hammer プロセッサ (現在正式に「Opteron」として発表) が今年後半にリリースされることをおそらくご存じでしょう。 Hammer により、AMD は Intel との競争を 32 ビット分野から 64 ビット分野に持ち込もうとしています。 Intel はきっと恐れていると思うし、その理由をご説明します。

Itanium は、Intel の 64 ビット分野への参入であり、移行を容易にする方法として x86 バイナリ互換性が含まれています。 Itanium は、ほぼ 2 年間マーケットプレースを経験していますが、HP-UX、Linux、Windows XP 64-bit Edition、Windows Advanced Server 64-bit Edition に対応しているにもかかわらず、参入に失敗しています。 業界では、Itaniums のプロジェクトはわずか数千台しか販売されていないと見積もられており、最近リリースされた Itanium II でも導入率は向上しないと個人的に推測しています。

ここまで、Itanium が落ち込んでいる理由は何でしょうか? 主な要因は、Itanium と Intel の 64 ビット戦略全体が新しい RISC タイプのアーキテクチャに基づいており、x86 バイナリ互換性を除いて、Itanium は Alpha、PA-RISC、Sparc64、PowerPC の間の単なるもう 1 つの 64 ビット プロセッサにすぎないことが挙げられます。 また、Itanium は既存の x86 32 ビット アプリケーションに対応していますが、ネイティブの 64 ビット アプリケーションと比較すると、これらのアプリケーションのパフォーマンスが大幅に低下します。 つまり、Itanium で適切なパフォーマンスで実行したい場合は、アプリケーションを必ず 64 ビットに移植する必要があります。

一方、Hammer の変化は、x86 アーキテクチャと命令セットが 64 ビットに自然に拡張したというものです。 ほぼ同じパフォーマンス レベルで 32 ビット アプリケーションと 64 ビット アプリケーションを並行して実行できます。 さらに、完全な 32 ビット モードで Hammer を起動して、32 ビット OS を実行できる標準的な x86 システムのように機能させることもできます。 それだけでなく、Hammer は x86 16 ビット モードに対応し、64 ビット OS で起動した場合でも標準の 32 ビット x86 BIOS コードを使用できます。 つまり、32 ビット OS を 1 つの選択肢として、64 ビット OS を別の選択肢として使用するデュアル ブート システムを使用できます。

AMD のアプローチは、Intel が Itanium で取った方向性よりも大きな利点があると感じています。 AMD は、64 ビットに移行する準備ができていないお客様や、64 ビット マシンを利用できるアプリケーションが 1 つしかないお客様に対して、Hammer が利用できるようになったらすぐに販売を開始できます。 32 ビット アプリケーションは、AMD が Hammer に投入したパフォーマンスの革新を最大限に活用することができ、AMD の Hammer に対する価格設定が 32 ビット CPU の価格に近い場合、購入の決断が簡単に下される可能性があります。 これにより、AMD はローエンドから 64 ビット プロセッサでマーケットプレースに浸透させることができるようになります。 これは、Intel のハイエンド アプローチとは対照的で、はるかにリスクが高く、時間がかかる可能性が高い戦略です。 Hammer が AMD に潜入し、事実上の 64 ビット プラットフォームになる機会を与えていると考えています。

Intel が Itanium の "クリーンな" 明示的並列命令コンピューティング (EPIC) アーキテクチャが AMD の x86-64 に対して提供するパフォーマンスの強みについてはどうでしょうか? しばらく様子を見る必要がありますが、AMD はこれまで 32 ビットの分野で Intel に軍配を上げています。 また、Itanium II が最高の x86 プロセッサ (www.spec.org を参照) と比較すると、整数のパフォーマンスではほぼ互角で、浮動小数点では Itanium が 50 から 75% 優位に立っていることがわかります。 これは、Itanium が約 2 倍の価格であるという事実にもかかわらずです。 たとえば、Hewlett Packard のローエンド Itanium II システムの価格は 5865 ドル、同等の構成で 2 GHz で動作する Hewlett Packard の Pentium IV システムの価格はわずか 2385 ドルです。

AMD は、x86 互換性を持つ新しいアーキテクチャを機能として定義するのではなく、x86 アーキテクチャを拡張するというアイデアをどこから得たのでしょうか? Intel が 32 ビット環境に移行したときは、16 ビットの x86 アーキテクチャと命令セットを拡張して、16 ビット アプリケーションでも実行できる 32 ビット バージョンを作成することで、それを実現しました。 その結果、32 ビット x86 プロセッサは、16 ビットと 32 ビットのオペレーティング システムを実行できるようになりました。 ただし、Intel は 64 ビット戦略でこのアプローチを採用しませんでした。 これは、90 年代半ばに、設計の複雑さを考えると、パフォーマンスの面で x86 の限界がすぐに近づいているように見え、新しいデザインの方が将来性があると感じたからかもしれません。 今日、Intel と AMD の両方が、x86 の驚異的なクロック速度でこの仮説が間違っていたことを証明しました。Intel に至っては 4 GHz で動作する Pentium IV を実証しました。 Intel は、この誤算の代償を払うことになる可能性があります。

その内容に興味があると思われるお友だちにニュースレターをお渡しください。

ありがとうございます。

-Mark

SYSINTERNALS の新機能

TCPVIEW V2.21

TCPView は、数年前から Sysinternals のサイトに存在していたアプリケーションですが、最近の 2.0 更新プログラムまでは、Windows netstat コマンドライン ツールの GUI バージョンに過ぎませんでした。 この大きなリビジョンでは、強力な機能が多数導入されています。最も重要なのは、各 TCP および UDP エンドポイントを所有するプロセスを NT 4、Windows 2000、Windows XP で表示できるようになったことです。 また、プロセスのバージョン データと実行可能パスを表示したり、不正なプロセスを終了したりすることもできます。 アプリケーションで特定のポートの使用を停止する場合に便利な機能として、プロセスを終了することなく、その場で接続を閉じる機能があります。

UI 領域では、最新バージョンでは、選択可能な間隔で自動更新が導入され、相違点が強調表示されます。 相違点の強調表示は、アクティビティの発生に応じて拡大するのに役立ち、新規および削除アイテムの色の強調表示は、Process Explorer から流用されたものです。

TCPView v2.21 のダウンロード:
http://www.sysinternals.com/ntw2k/source/tcpview.shtml

LIVEKD V2.0

David Solomon と私が書籍「Inside Windows 2000」(http://www.sysinternals.com/insidew2k.shtml を参照) の CD に収録したツールの 1 つに LiveKd があります。 LiveKd は、Microsoft カーネル デバッガーのフロントエンドであり、デバッガーを実行してライブ システムと対話できるようにします。 デバッガーを使用すると、2 台目のコンピューターとシリアル デバッグ接続を使用せずにシステムを確認し、内部の調査が簡単になるため、トラブルシューティングの支援としても役立ちます。 LiveKd の最初のリリースでは、NT 4 と Windows 2000-LiveKd バージョン 2.0 のみが Windows XP で動作します。

Microsoft は私の指導に従い、Windows XP にライブ カーネル デバッグ機能を追加しましたが、ライブ システムで実行するといくつかのデバッグ コマンドが機能しないため、LiveKd を Windows XP で動作するようにわざわざ更新しました。

1 つの例として、!process コマンドまたは !thread コマンドからのスタック出力があります。 LiveKd は完全なカーネル スタックを示しますが、組み込みの XP ライブ デバッグ機能を使用しても表示されません。 別の例として、!stacks コマンドがあります。これを使用して、スレッドが現在実行中の場所と実行を開始した場所を確認できます。 !stacks コマンドは、システム スレッドを含む問題をデバッグしていて、その目的を特定する必要がある場合に便利です。スレッドが実行されているドライバーを把握することが、問題を解決するために必要な手掛かりになる可能性があります。

LiveKd v2.0 パッチのダウンロード:
http://www.sysinternals.com/insidew2k.shtml
パッチを適用するには、書籍 CD に含まれる LiveKd のコピーが必要であることに注意してください。

PSINFO V1.33

PsInfo は、コマンドライン、リモート対応、Windows NT/2000/XP 管理ツールの PsTools スイートを構成する 10 種類あまりのツールの 1 つであり、ユーザーのフィードバックに基づいて進化し続けています。 バージョン 1.33 では、インストールされている修正プログラムとアプリケーションを一覧表示する機能や、コンピューターのディスク ボリュームのラベル、サイズ、使用状況データを報告する機能が追加されました。

PsInfo v1.33 のダウンロード:
http://www.sysinternals.com/ntw2k/freeware/psinfo.shtml
PsTools パッケージ全体のダウンロード:
http://www.sysinternals.com/ntw2k/freeware/pstools.shtml

PSLIST V1.21

コマンドラインを使用する場合、または CPU 使用率データを含むコンピューター (ローカルまたはリモート) のプロセス リストを取得したい場合は、PsTools スイートの別のメンバーである PsList の最新バージョンに興味を持つことと思います。 PsList v1.2 には、コマンド ウィンドウでタスク マネージャー モードで実行するコマンド ライン スイッチが導入され、構成可能な間隔で更新され、CPU 使用率が表示されます。 別の新しいスイッチでは、PsList でインデントを使用することでプロセスの親子関係を表示します。これは、特定に苦労しているプロセスの目的を理解するのに役立つ場合があります。

PsList v1.21 のダウンロード:
http://www.sysinternals.com/ntw2k/freeware/pslist.shtml
PsTools パッケージ全体のダウンロード:
http://www.sysinternals.com/ntw2k/freeware/pstools.shtml

BGINFO V3.0

通常、複数のシステムを管理するということは、付箋を使用したり、システム情報ユーティリティを開いたりしてシステムの仕様や構成を決定する煩わしさに対処する必要があります。 BgInfo は、デスクトップ上で指定した標準およびカスタム システム情報を表示するユーティリティであり、重要と思われるすべてのデータをひとめで確認できます。

BgInfo は既に汎用性が高く、レジストリまたはファイルから値を取得するために、定義済みの値のセットを指定したり、BgInfo に指示したりできます。 BgInfo v3.0 では、Visual Basic スクリプトのサポートが導入され、カスタマイズ機能がさらに追加されました。これにより、カスタム構成設定をキャプチャして BgInfo に報告し、表示するスクリプトを作成できます。

BgInfo v3.0 のダウンロード:
http://www.sysinternals.com/ntw2k/freeware/bginfo.shtml

PAGEDEFRAG V2.2

ページング ファイル、レジストリ ファイル、イベント ログ ファイルがますます断片化されていることに気づきましたか? 組み込みの最適化ツールは、オペレーティング システムを実行する前の起動時に最適化する必要があるため、これらのファイルは処理できません。 PageDefrag は、これらの重要なシステム ファイルを最適化することのみを目的とした軽量最適化ツールです。

PageDefrag バージョン 2.2 には Windows XP のサポートが含まれており、最適化する前に PageDefrag で表示されるカウントダウン タイマーを指定できます。 タイマーは、カウントダウン中に任意のキーを押すと最適化が中止される、chkdsk 実装のものと同じように動作します。

PageDefrag v2.2 のダウンロード:
http://www.sysinternals.com/ntw2k/freeware/pagedefrag.shtml

Win64/Itanium 用 Regmon v4.34

昨年、Microsoft から Itanium システムを貸し出してもらい、Sysinternals ツールを Win64 に移植できました。 ほとんどの 32 ビット アプリケーションは、Itanium の 32 ビット バイナリ互換性サポートを使用して Windows XP 64-bit Edition を実行している Itanium で変更なく動作するため、すべてのツールを移植する必要があるわけではありません。 ただし、Windows XP 64-bit Edition では 32 ビット ドライバーを読み込まないため、ドライバー コンポーネントを持つ Sysinternals ツールでは、少なくともドライバーを 64 ビットに移植する必要があります。

最初に移植したユーティリティは Filemon でした。 Filemon の移植は比較的簡単で、64 ビットデータ型の規則に準拠するようにドライバーと GUI ソースを変更し、再コンパイルするだけでした。 移植プロセスの詳細は、前回のニュースレターで説明したとおりです。 Regmon の移植には、同じデータ型の問題が含まれていましたが、移植をはるかに困難にするその他の問題も含まれていました。

Regmon は、レジストリ アクティビティを監視できるように、Regmon インターセプト ルーチンを使用してカーネル内のシステム呼び出しテーブルにパッチを適用するドライバーに依存しています。 要約すると、Itanium のシステム呼び出しインターフェイスには、32 ビット ドライバーで使用したアプローチを使用できないプロセッサに依存する特性があります。 したがって、64 ビット XP でシステム呼び出しインターセプトを動作させるために、いくつか難しいコーディングを使用する必要がありました。

幸いなことに、Microsoft は、レジストリ アクティビティを監視するために Regmon が使用する手法を不要にするレジストリ アクティビティ コールバック インターフェイスを Windows .NET Server カーネルに実装しました。 近い将来、新しい Windows .NET Server API を実演する Regmon の更新とニュースレターでの API の説明を提供いたします。

Regmon v4.34 のダウンロード:
http://www.sysinternals.com/ntw2k/source/regmon.shtml

PC World Magazine の Sysinternals

Regmon と Filemon はどちらも、発行部数の多いコンピューター関連雑誌の「PC World」8 月号で、推奨されるトラブルシューティング ツールとして紹介されています。 詳細については、http://www.pcworld.com/features/article/0,aid,101750,00.asp を参照してください。

SYSINTERNALS AT WWW.MICROSOFT.COM

前回のニュースレター以降にリリースされた Microsoft サポート技術情報 (KB) 記事の Sysinternals リファレンスの最新の記事を次に示します。 これにより、Sysinternals への KB 参照の合計数が 38 になります。

  • 方法: Windows 2000 でカスタム管理用テンプレートを作成する
    http://support.microsoft.com/default.aspx?scid=kb;EN-US;q323639

  • ポリシー ファイルに Oplock が付与されていない場合の低速リンクに対するログオン遅延
    http://support.microsoft.com/default.aspx?scid=kb;EN-US;q319440

  • XCON: MTA プロセスが高いハンドル数でメモリをリークしている http://support.microsoft.com/default.aspx?scid=kb;EN-US;q313735

さらに、Microsoft は、現在注目の Windows XP Embedded コミュニティ サイトとして Sysinternals を表彰しました。 http://www.microsoft.com/windows/embedded/community/default.asp をご覧ください

INTERNALS INFORMATION

Mark と David Solomon によるロンドンでの内部構造の講義

David Solomon と私が 9 月 23 日から 25 日にロンドンで開催する 3 日間の Windows 2000/XP/.NET Server internals クラスにご参加ください (次のクラスはテキサス州オースティンで 12 月 9 日から 11 日です)。 このクラスでは、「Inside Windows 2000, 3rd Edition」に基づき、カーネル アーキテクチャと主要なシステム コンポーネントの相互関係とメカニズム (システム スレッド、システム呼び出しディスパッチ、割り込み処理、起動とシャットダウンなど) について説明します。 説明されている主要なサブシステムの内部構造には、プロセスとスレッド、スレッド スケジュール、メモリ管理、セキュリティ、I/O システム、NTFS、キャッシュ マネージャーが含まれます。 OS 内部の動作を理解することで、プラットフォームをより効果的に利用し、問題のデバッグやトラブルシューティングをより効果的に行うことができます。

詳しくは、http://www.sysinternals.com/seminar.shtml をご覧ください。

WINDOWS NT 開発内部

このプレゼンテーションは 2 年前のものですが、Windows NT 3.1 から Windows 2000 までの開発履歴の内側を覗く興味深い内容となっています。 元の NT ソフトウェア エンジニアの 1 人である Mark Lucovsky が、2000 年の USENIX 年次技術会議で行ったプレゼンテーションです。 開発チームの規模、欠陥率 (メンバーではなく、記述したコード)、ソース管理システム、チーム開発の課題について説明しています。

NT の開発履歴に関する Mark Lucovsky の講演は、http://www.usenix.org/events/usenix-win2000/invitedtalks/lucovsky_html/ を参照してください

関連ノートとして、Windows 1.0 から Windows .NET Server までの Microsoft 独自の Windows の歴史を http://www.microsoft.com/windows/WinHistoryIntro.asp でご確認いただけます。

変更がカウントされない場合

Windows では、ファイルとディレクトリのいくつかのタイムスタンプをトラックしています。 これには、作成日時、最終アクセス日時、最終更新日時が含まれます。 最終更新日時のタイムスタンプは、ファイルが最後に書き込まれた時刻を記録するものとして文書化されています。 残念ながら、これの正確性に依存しているアプリケーションは、ひどい驚きを体験することになります。

アプリケーションが CreateFile API を使用してファイルを開き、WriteFile またはそのバリアントを使用してファイルに書き込む場合、最終更新日時には、ファイルの最新の更新時刻が反映されます。 アプリケーションが CreateFileMappingMapViewOfFile を使用してメモリ マップされた I/O 用にファイルを開き、マップされた内容を変更してファイルを変更した場合、データは最終的にメモリ マネージャーによってファイルに書き戻され、ディスク上のバージョンが変更されます。 問題は、メモリ マップされた書き込みの結果として変更が発生しても、ファイル システム ドライバーがファイルの最終更新日時を更新しないことです。

なぜでしょうか? 開発者がパフォーマンスを優先して手を抜いたのではと思いますが、動作は文書化されていないため、推測することしかできません。 すべての書き込みが等しく作成されているわけではないと思います。

.NET SERVER RC 1

Windows .NET Server RC 1 が出荷され、Microsoft が年内に新しいサーバー OS の RTM (製造へのリリース) ビルドを削減する可能性があります (同じ年に蛇とサメの両方に噛まれるのと同じくらいの確立です)。 カーネルの観点からは、Windows XP からの大きな目に見える変更はありません。 主要なカーネル サブシステム、Win32 またはカーネル API の新規追加はありません。大規模システムのパフォーマンスを向上させる微調整と、既存の API セットを仕上げるわずかな API の調整のみです。

ただし、ユーザー空間には大きな変更があります。 最も大きなのはもちろん.NET フレームワークですが、新しいサーバー指向サービスもあります。 バックアップ用に Windows XP で導入されたボリューム シャドウ コピー サービスは、クライアント ユーザーがサーバー共有上のファイルを以前のバージョンにロールバックする機能を提供するために使用されます。 ユーザーは、新しい [Explorer file property](エクスプローラー ファイル プロパティ) タブに表示されるファイル履歴リストで目的のエントリを選択するだけで済むため、管理者の操作は必要ありません。

サーバー ネットワークの強化は Winsock Direct です。これは、特殊なネットワーク相互接続を備えた多層構成のサーバー上のアプリケーション (記憶域ネットワーク (SAN) と呼ばれる構成) で、ネットワーク ハードウェアと直接通信し、TCP/IP スタックとカーネルをバイパスできるようにするインフラストラクチャです。

.NET Server のシステム レベルの変更については、David Solomon と私による近日公開される記事をお待ちください。 また、次の改訂版の「Inside Windows 2000」では、次の春に公開される予定の「Windows Internals」と呼ばれる .NET Server についても取り上げる予定です。

WMI スクリプトの読み込み

Sysinternals の PsTools スイートが気に入っている場合、おそらくスクリプト ジャンキーであり、システムで Windows 2000 または XP を実行している場合、または NT 4 WMI コア コンポーネントがインストールされている場合は、Microsoft の TechNet サイトに移動し、そこに投稿されている無料の WMI サンプル スクリプトを取得することをおすすめします。 大きなコレクションがあり、コンピューター管理やネットワークなどのカテゴリに分かれていて、個別または一括でダウンロードできます。

http://www.microsoft.com/technet/treeview/default.asp?url=/technet/scrip tcenter/sampscr.asp で無料のサンプル WMI スクリプトを入手してください

Microsoft の無料版と言えば、ダウンロード版の Windows 2000 Resource Kit ツールのサブセットも入手可能です。 http://www.microsoft.com/windows2000/techinfo/reskit/en-us/default.asp にアクセスします。

BootVis を使用したブート プロセスのプロファイル

起動プロセスを監視する Sysinternals 用のツールを開発するリクエストを定期的に受け取り、ユーザーが経験する可能性のある遅延の原因を特定できるようにしています。 幸いなことに、私は Microsoft が解決するまで十分に待つことができました。 開発したツールは BootVis と呼ばれ、Windows XP 用に実装した起動パフォーマンスの最適化において重要な役割を果たしました。 http://www.microsoft.com/HWDEV/PLATFORM/performance/fastboot/BootVis.asp からダウンロードできます。 Windows XP でのみ実行される BootVis は、XP の WMI カーネル トレース機能を使用して、CPU 使用率、ディスク I/O、プロセス起動、ドライバー I/O など、起動プロセスの詳細なトレースを収集します。 BootVis terse に付属のヘルプ ファイルを呼び出して、ツールの使用方法について説明します。

ドライバーとモジュールのどの機能が CPU 時間を占めているかを正確に確認できるようにする場合は、[Tools|Options](ツール|オプション) ダイアログボックスを開き、インストールされている Windows XP シンボルに BootVis を向けます。 次に、[Trace|Next Boot+Driver Delays](トレース|次の起動+ドライバー遅延) を選択して BootVis にドライバーの遅延を含む次の起動のトレースをキャプチャさせます。 BootVis がカウントダウンし、システムを再起動します。

システムが起動したらログインして、BootVis をもう一度実行します。 [Trace|Stop Trace](トレース|トレースの停止) を選択すると、カーネルから収集されているトレースが抽出され、ファイルに保存され、表示用に読み込まれます。 4 つのチャートが表示されます。 [Cpu Usage](Cpu 使用率) には、起動時に消費された CPU 処理の量のトレースが表示されます。 [Disk I/O](ディスク I/O) 横棒グラフには、1 秒ごとに発生したディスク読み取り (赤) と書き込み (青) の数が表示されます。 [Driver Delay](ドライバーの遅延) グラフには、既定の BootVis のカットオフである 100 ミリ秒よりも長い期間を持つドライバー I/O を表す四角形が表示されます。このような遅延は重要と見なされます。 最後に、[Process Creates](プロセスの作成) グラフには、プロセスが開始された場所にラベル付き四角形が表示されます。

BootVis では、起動時に収集されたすべてのトレース データが必ずしも表示されるとは限らないので、グラフ化されたデータの右端を表示し始めるまでズーム アウト ボタンを使用します。 次に、各グラフを見てみましょう。 CPU やディスクのスパイクが表示される場合、またはプロセスの起動アクティビティを拡大する場合は、ツール バーの拡大ボタンを使用します。 表示される開始時刻は拡大しても 0 のままになるため、拡大後に [Display Time](表示時間) 編集ボックスに関心のあるアクティビティの近くの時間を手動で入力します。

CPU 使用率、ディスク I/O、ドライバー遅延グラフを使用すると、すぐに表示できる以上の情報を表示できます。 カーソルを移動し、マウスの左ボタンを押したままドラッグして、グラフ内の目的の領域を選択します。 次に、右クリックしてメニューを取得します。 [CPU Usage](CPU 使用率) グラフの興味深いメニュー オプションは [サマリーの表示] で、選択した時間間隔の CPU 使用率のプロセス別の内訳を一覧表示するダイアログが開きます。 いずれかのプロセスをダブルクリックすると、別のダイアログが開き、モジュール別の CPU 使用率の内訳 (プロセス内の DLL など) が表示されます。 シンボルが設定されている場合は、モジュールをダブルクリックして、そのモジュールの CPU 使用率の内訳を機能別に示すダイアログを取得することもできます。

ディスク I/O グラフで選択した領域を右クリックすると、[Show Summary Table](サマリー テーブルの表示) と [Show Detail Graph](詳細グラフの表示) の 2 つのメニュー項目が表示されます。 [Show Summary Table](サマリー テーブルの表示) を選択すると、間隔中に発生したすべての I/O のアカウンティングがモジュール別に表示されます。 [Show Detail Graph](詳細グラフの表示) を選択すると、その間隔でアクセスされたディスク内の実際のセクターを表す折れ線グラフが表示されます。 詳細グラフでは、I/O とそれを実行したプロセスに関連付けられ、左側のリストでプロセスの選択を解除してプロセスをフィルター処理することもできます。 詳細グラフ内の領域を選択し、結果のメニュー項目を右クリックして選択することで、そのサブ間隔の別のサマリー チャートにアクセスできます。

[Driver Delay](ドライバー遅延) グラフのコンテキスト メニューから [Show Summary Table](サマリー テーブルの表示) を選択すると、選択した領域に I/O のリストが表示され、そこには、I/O を実行したドライバーの名前、各 I/O の開始、終了、合計時間、実行された I/O 関数が含まれます。

これで BootVis のチュートリアルは終わりです。 BootVis は最も洗練されたツールではありませんが、しばらく使用すれば、間違いなく、そのグラフで表示できる詳細レベルが素晴らしいことに納得いただけることでしょう。 次回、起動が長い原因を知りたくなった場合に、答えを見つけ出せる場所を知ることができます。

近日公開予定

クラッシュ ダンプ分析の概要

Microsoft のカーネル デバッグ ツールの最近の機能強化により、クラッシュ ダンプ分析が容易になりました。 次回は、1 時間でダンプ分析のプロになる方法をご紹介します。


Sysinternals ニュースレターをお読みいただき、ありがとうございました。

公開日: 2002 年 8 月 12 日 (月) 午後 7:00 by ottoh

[ニュースレター アーカイブ ^] [< Vol. 4、No. 1] [Vol. 4、No. 3 >]