連載
» 2015年11月01日 05時00分 UPDATE

Tech TIPS:タスクマネージャーのパフォーマンスタブの見方(Windows Vista/Windows Server 2008編)

タスクマネージャーを見ると、システムの稼働状況を素早く知ることができる。ただ、その表示項目はOSごとに少しずつ変わっている。Windows Vista/Server 2008のSuperFetchが有効な環境では、システム起動後、キャッシュに先読みが行われる様子が、タスクマネージャーで確認できる。

[打越浩幸,デジタルアドバンテージ]
「Tech TIPS」のインデックス

連載目次

対象OS:Windows Vista/Windows Server 2008 (Windows 7/Server 2008 R2はこちら→



解説

 タスクマネージャーの表示項目は、OSのバージョンが上がるごとにいくらか変更されている。本TIPSではWindows VistaおよびWindows Server 2008におけるタスクマネージャーの[パフォーマンス]タブの見方について解説する。

 Windows 7およびWindows Server 2008 R2のタスクマネージャーについては、TIPS「タスク・マネージャのパフォーマンス・タブの見方(Windows 7/Windows Server 2008 R2編)」を参照していただきたい。

操作方法

 Windows VistaとWindows Server 2008は同じカーネルアーキテクチャを持つWindows OSであり、タスクマネージャーも同じように表示される。以下はWindows Vistaの例である。

Windows Vistaのタスクマネージャーの例 Windows Vistaのタスクマネージャーの例
これはメモリを4Gbytes搭載した、あるWindows Vista Ultimate Editionで稼働するPCのタスクマネージャーの例。ただし32bit版のWindows Vistaなので、メモリは最大でも3Gbytesまでしか利用できない。残りの1Gbytesは、32bit OSでは利用できない(利用できなくなるサイズはシステムによって異なる)。64bit版Windows OSならシステムに搭載されているメモリは全て利用できる。この画面はWindows Server 2008でも同じである。各項目の解説は本文参照。

 以下、この画面を元にそれぞれの項目を解説する。

●CPU使用率(1)

 このグラフは、現在のCPUの利用率をリアルタイムに表している([表示]−[カーネル時間を表示する]をオンにしているので、カーネル時間が赤く表示されている)。0%だとCPUはアイドル状態、100%だと最大負荷で稼働していることを表している。

 マルチコア/マルチスレッドのCPUの場合は、全てのCPUが100%で稼働している場合に、このグラフが100%となる。例えばデュアルコアで片方のCPUが50%、もう片方のCPUが0%ならば、このグラフは50%ではなく25%となる(全CPUパワーの25%しか使っていないということ)。

●CPU使用率の履歴(2)

 これはCPU使用率((1))のグラフの履歴を表したものである。CPUコアの数だけ、グラフが表示される。このシステムのCPUはデュアルコアなので2つグラフが表示されている。シングルコアの場合は一つしか表示されない。また[表示]−[CPUの履歴]−[すべてのCPUで1グラフ]を選択した場合も一つしか表示されない。

 緑色の線が全体のCPU使用率で、そのうちの赤い部分はカーネル時間(OSカーネルのコードを実行している時間)を表している。赤い線が緑の線に近付いていると、カーネルの処理が重いことを表す。一方、この図の例のように比較的離れている場合は、非カーネル(ユーザー側)での処理がメインであることを示している(TIPS「カーネルモードとユーザーモードの負荷状況を簡単に見分ける方法」参照)。

 グラフの更新頻度は[表示]−[更新の頻度]メニューで変更できる。

●メモリ(3)

 これは物理メモリの使用量を表すグラフである。例えばこの画面の「1.65 GB」は、全物理メモリ(3Gbytes)のうち、1.65Gbytes使っているということを表している。ユーザープロセスやOSカーネルなどで利用されているメモリのサイズがここに表示されている。一番上までバーが描画されていると、空き物理メモリがないということを表す。

 なおこの使用量の中には、スーパーフェッチなどのキャッシュに利用されている分は含まれない(スーパーフェッチについては連載Vistaの地平「第3回 カーネルの改良とフォント、セキュリティ機能の強化」参照)。

 これは、後述のページファイルサイズ((15))とは異なることに注意していただきたい。ページファイルの使用サイズとは関係なく、物理メモリの使用量にのみに基づいてグラフ化されている((19)がグラフ化されている)。

●物理メモリの使用率の履歴(4)

 これは物理メモリの使用量((3))の履歴を表すグラフである。グラフ領域の一番上が使用量100%(つまり空き物理メモリがない)という状態を示す。

●物理メモリ

 この欄には、物理メモリの使用状況に関する項目が表示されている。

■合計((5)

 これはWindows OSが認識している物理メモリサイズを表している。上の画面の説明でも書いたように、例えばシステムに4Gbytesのメモリを装着していても、32bit版のWindows OSでは3Gbytesとか3.2Gbytesしか認識できないことが多い(OSから認識できない領域を「管理外メモリ」という)。この「合計」欄にはそのメモリ量が表示される(TIPS「32bitクライアントOSで利用できる物理メモリは最大4Gbytesまで」、「RAMディスク導入ガイド」参照)。

 基本的には、この値はシステムの起動から終了時まで変わることはない(ホットアドオンメモリをサポートした物理サーバーや、仮想マシンの場合は変わることがある)。

■キャッシュ済み((6)

 これは、キャッシュ(SuperFetchの分も含む)として利用されているメモリ領域のサイズを表す。

 キャッシュは、パフォーマンス向上のためにファイルのデータを先読みしたり、書き込み済みのデータをそのまま保持しておいて、後で再利用したりできるようにするために利用される。また実行済みのプログラムやリソース領域をすぐにクリアせずに残しておいて、プログラムの再起動を高速に行ったり、SuperFetch用の領域などとしても利用される。

 キャッシュに保存されているデータやプログラムは、ディスクへのアクセスというペナルティなしに高速に利用できる。

■空きメモリ((7)

 使用済みでもキャッシュ済みでもない、本当に何の用途にも使われていないメモリ領域のサイズ。システム起動時には最大サイズだが、サービスやユーザープログラム、SuperFetchなどの実行に伴い、だんだん少なくなってくる。

 Windows VistaではSuperFetchサービスが有効になっているため(Windows Server 2008ではデフォルトでは無効)、システム起動後、しばらくするとこの空きメモリのサイズが減り始め(ほとんど0まで減り続ける)、代わりにキャッシュ済み領域のサイズが増え始めるのが観測できる。

 プログラムやサービスなどでメモリが必要になると、まずこの空きメモリ領域が使用され、それでも不足するなら、キャッシュ済み領域を解放しながら(もしくはページファイルにスワップアウトするなどして)、要求したプログラムにメモリが与えられる。

●カーネルメモリ

 この部分には、Windows OSのカーネルで使用しているメモリのサイズが表示されている。

■合計((8)

 これはOSカーネル(サービスやサブシステムも含む)のサイズを表す。次の2つの項目の合計である。

■ページ((9)

 スワップアウト可能なカーネルメモリ領域のサイズ。メモリ不足時にはこの部分がページファイルへスワップアウトされることがある。

■非ページ((10)

 スワップアウト不可能なカーネルメモリ領域のサイズ。割り込み処理やプロセス/メモリ管理など、非常に基本的で、常にメモリ上に存在している必要があるコードやデータがここに置かれている。

●システム

 この欄には、プロセスやハンドルなどの情報が表示されている。

■ハンドル((11)

 オブジェクトハンドルの総数。Windows OSでは、全てのオブジェクトはハンドルと呼ばれる小さなデータをキーとしてアクセスされる。

■スレッド((12)

 システム上のスレッドの総数。スレッドはプログラムの最小実行単位で(プロセスはスレッドの集まり)、スレッドごとにCPUが一つ割り当てられる。

■プロセス((13)

 システム上のプロセスの総数。実行中のプロセスは、[プロセス]タブで確認できる。

■起動時間((14)

 システムが起動してからの実行時間。「時:分:秒」で表される。

■ページファイル((15)

 ページファイルと書かれているが、実際にはいわゆる「コミット」サイズを表している(Windows 7やWindows Server 2008 R2のタスクマネージャーでは「コミット」となっている)。

 コミットとは、実行中のプログラムやデータなどで使用しているメモリの総サイズ(確定済みのサイズ)のことで、使用中の物理メモリサイズ+使用中のページファイルサイズのことである。Windows OSの仮想記憶システム環境では、最大コミットサイズは物理メモリサイズ+最大ページファイルサイズまで拡大できる。

 この例にある「2036M / 6342M」とは、最大コミットサイズが6342Mbytesで、現在のコミットサイズが2036Mbytesということを表している。この値が大きいほど、多くの(大きな)プログラムを実行できる。だが、コミットサイズが物理メモリサイズを大きく超えると、ページスワップのためにパフォーマンスが低下するので、必要ならばメモリを増設することが望ましい。

●リソースモニタの起動((16)

 これは各プロセスやメモリ、ネットワークの状態などを細かく調査するリソースモニタを起動するためのボタンである。このツールについてはTIPS「リソースモニタでオープン中のファイルをモニタする」「リソース・モニタでメモリの利用状況をモニタする」を参照していただきたい。

●ステータスバー

 ここには、今まで述べてきた値のうち、重要そうなものを抜き出して表示している。

■プロセス((17)

 これは(13)のプロセス数と同じ。

■CPU使用率((18)

 これは(1)のCPU使用率と同じ。

■物理メモリ((19)

 これは使用中の物理メモリの割合((3)÷(5)×100%)を表している。

■更新履歴

【2015/11/01】最新情報を反映しました。

【2009/09/04】初版公開。


「Tech TIPS」のインデックス

Tech TIPS

Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。