[System Environment] | ||||||||||||||
カーネル・モードとユーザー・モードの負荷状況を簡単に見分ける方法
|
||||||||||||||
|
解説 |
Windowsを使っていると、コンピュータを何も操作していないのにディスクやネットワーク・アクセスが発生する場合があるが、それらはほとんどの場合、バックグラウンドで実行中のプロセスの処理に起因するものである。しかし、このような予想外のディスク/ネットワーク・アクセスが必要以上に発生して、アプリケーションなど本来の処理に支障をきたすようでは困りものだ。また場合によっては、ディスクやネットワークのアクセス・ランプは点灯していないのに、システム性能が異常に低下したり、一時的にアプリケーションがロックしたような状態になったり(そのように見えたり)する場合もある。
システムの負荷状況を確認するには、タスク・マネージャの[パフォーマンス]タブを利用する(タスク・マネージャは、タクス・バーの空き領域をマウスで右クリックして表示されるポップアップ・メニューの[タスク マネージャ]から起動できる)。このタブでは、CPU使用率(CPUに対する負荷の大きさ)やメモリ使用量などをモニタすることが可能だ。
Windowsタスク・マネージャの[パフォーマンス]タブ | |||
タスク・マネージャの[パフォーマンス]タブでは、CPUの使用率やメモリ使用量など、現在のシステムの負荷状況をモニタすることができる。 | |||
|
この画面の[CPU使用率の履歴]に注目すると、右半分でCPUの負荷が急激に増加しており、何カ所かでCPU使用率が100%に達していることが分かる。
タスク・マネージャは、デフォルトでは、CPUにかかった全体の負荷をこのようにグラフ表示するようになっている。ここで詳細は述べないが、Windows 2000/XPは、OSのシステム・コードやデバイス・ドライバなどのコードと、ワードプロセッサなどのユーザー・アプリケーションのコードを完全に分離し、まったく異なるシステム・モードでそれぞれを実行している。具体的には、前者はカーネル・モード、後者はユーザー・モードで実行されるようになっている。この際ユーザー・モードで実行されるアプリケーションは、カーネル・モードが管理するメモリ資源などには直接にはアクセスできない。このような制限を加えることで、万一ユーザー・モードで実行中のアプリケーションが暴走したとしても、システムには影響が及ばないようにしているわけだ。
ここで必要なら、デフォルトのグラフに加えて、カーネル・モード・プロセスによるCPU使用率のグラフを追加表示させることができる。これには、タスク・マネージャの[表示]−[カーネル時間を表示する]メニューを実行する。
タスク・マネージャの[表示]−[カーネル時間を表示する]を実行する | |||
CPU使用率のグラフにカーネル・モード・プロセスによる使用率グラフを追加表示させたければ、このメニュー項目を選択する。 | |||
|
すると次のように、カーネル・モード・プロセスによるCPU使用率が、別途赤線で表示されるようになる。
カーネル時間の占有率グラフを表示させたところ | |||
上のメニューを実行すると、このようにCPUの使用率に占めるカーネル・モード・プロセスの処理時間の割合が赤線にてグラフ表示されるようになる。 | |||
|
このように、カーネル・モード・プロセスによるCPU使用率を表示させると、システムの負荷を増加させている原因が、ユーザー・アプリケーションによるものなのか(ワードプロセッサなど)、システム・コードによるものなのか(OSコードやデバイス・ドライバなど)を簡単に判別できるようになる。上に示した例では、全体的なCPU使用率が高いときでも、カーネル・モード・プロセスによる使用率はそれほど高くない。従って、ユーザー・モードで実行されているアプリケーションによる負荷が大きいことが分かる。つまり負荷を軽減させたければ、原因となっているアプリケーションを見つけ出して、それを終了させればよいはずだ。一方、カーネル・モード・プロセスによる使用率が高いとき(赤い線が、緑の線に接近しているとき)には、カーネル内部のシステム・プロセスの処理や、ネットワーク・アクセス、ディスク・アクセス、グラフィック描画、デバイス・ドライバによる処理などが負荷の原因だと予測できる。この場合には、最近行ったデバイス構成やネットワーク構成の変化などから、原因を追求したり、ハードウェアのグレード・アップを検討したりすることになるだろう。
この記事と関連性の高い別の記事
- Windowsで負荷の大きいプロセスを特定する方法(TIPS)
- Windows OSでよく見かける重いプロセス、ベスト10(TIPS)
- タスク・マネージャのパフォーマンス・タブの見方(Windows 8/Windows Server 2012編)(TIPS)
- タスクマネージャーのパフォーマンスタブの見方(Windows Vista/Windows Server 2008編)(TIPS)
- Windowsでプログラムの実行に使用するCPUを限定させる(プロセッサアフィニティマスクを設定する)(TIPS)
このリストは、デジタルアドバンテージが開発した自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
更新履歴 | |
|
「Windows TIPS」 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|