macOSの最も重要な要素の1つは、CPUによって実行される計算と、画面に表示される内容との関係です。 この関係は、Mac上のWindowServerによって管理されるもので、このプロセスはディスプレイ上にグラフィック要素を描画する役割を果たします。
基本的にこの事について考える必要性はほとんどありませんし、その存在を知らなくても問題ありません。ただし、CPUサイクルを大量に使うようであれば、Macの速度低下を引き起こす可能性があります。 その解決方法をご紹介します。
MacのWindowServerとは?
これは、アプリケーションウィンドウ、アイコン、Webサイトなどの要素を画面上に描画するmacOSのプロセスです。 一度に開いているウィンドウの数が増えるほど、WindowServerが必要とするCPUサイクルも増加します。 ほとんどのグラフィック要素は定期的に更新されるため、WindowServerはこれらのCPUサイクルを必要とします。 ウィンドウの移動や、Photoshopでの画像編集、そしてSafariで別のタブへの切り替えを行ったりする度に、WindowServerは画面を再描画する必要があります。
macOSのウィンドウには、透明度やドロップシャドウなどの多くの効果があることを考えると、画面上でのウィンドウの描画や再描画によってリソースが消費されるのも不思議ではありません。 しかしながら、ほとんどのMacにおいて、WindowServerが消費するCPUサイクルは、気が付かないほどに微々たるものです。
WindowServerのCPU使用率が高い理由
WindowServerが気が付く程にまで多くのCPUサイクルを使用したり、Macの速度が低下する理由として、いくつかの原因が考えられます。 それがこちらです:
アプリの誤作動 | 一部のアプリによるメモリの大量消費 |
複数ディスプレイ | 複数ディスプレイの使用によるコンピューターメモリの消費 |
乱雑なデスクトップ | 画面の内容が変わる度に各アイコンの再描画が必要 |
視覚効果 | 古いMacは最新のグラフィックスに苦戦 |
WindowsServerのCPUサイクル過剰消費の確認方法
- 「アプリケーション」>「ユーティリティ」と進み「アクティビティモニタ」を起動します。
- 「CPU」の列の最上部をクリックします。
- その列のプロセスの名前を確認します。
- WindowServerが最上部付近にあって、CPUリソースの60%以上を占有している場合には、必要以上に多くのCPUサイクルを使用していることがわかります。
- 「アクティビティモニタ」を終了します。
WindowServerはmds_storesと関係がありますか?
いいえ、直接の関係はありません。 WindowServerは画面上の要素の描画をコントロールしますが、Mac上のmds_stores (mdsはメタデータサーバーの略称) はSpotlightの一部です。 mds_ storesがCPUサイクルを消費している場合には、SpotlightがMacのインデックスを再構築していることが原因の可能性があります。
WindowServerのCPU使用率を減らす方法
1. 不要なウィンドウを閉じる
特に古いMacを使用している場合は、開いているウィンドウが増えるほど、WindowServerの動作が難しくなります。 使用していないブラウザのタブを閉じる事で、システム全体の負荷を軽減する事ができます。 また、現在使用していないアプリケーションが開いている場合は「Option-Command-Escape」を押して強制終了メニューを開き、それらを終了します。
2. 視覚効果の無効化
ウィンドウの透明度などの機能も、多くのCPUサイクルを使用するものです。 すべての視覚効果をオフにすることはできませんが、システム設定のアクセシビリティのパネルから透明度をオフにすることができます。 その手順はこちらです:
- Appleメニューから「システム設定」を選択します。
- 「アクセシビリティ」をクリックして「ディスプレイ」を選択します。
- 「透明度を下げる」をオンにします。
3. Mission Controlのデスクトップ数の削減
追加のデスクトップを閉じる事で、WindowServerのCPU使用率が低下する可能性があります。
- F3キーを押してMission Controlを起動するか、Apple以外のキーボードを使用している場合は、DockのLaunchpadアイコンをクリックしてMission Controlを選択します。
- 使っていないデスクトップの上にマウスのカーソルを合わせます。
- デスクトップの端にある「x」をクリックして閉じます。
4. アプリやmacOSが最新バージョンか確認
新しいバージョンのmacOSとアプリは、WindowServerのCPU使用率の削減に役立ちます。 その理由は、通常であればより最適化されているためです。
macOSに関しては、古いバージョンでは様々な問題が起こる可能性があるので、しっかりとアップデートを行うべきです。macOSのアップデートを行う方法はこちらです:
- Appleのメインメニューから「システム設定」>「一般」に進みます。
- 「ソフトウェアアップデート」をクリックします。
- アップデートが利用可能であれば、画面の指示に従います。 自動アップデートを有効にすることもできます。
macOSのアップデートが完了したら、アプリも最新バージョンになっている事を確認します。 これを行う方法はいくつかあります。 例えば、App Storeからダウンロードを行ったアプリの場合には、App Storeのアプリを開いて「アップデート」の欄を確認します。 そして、アプリの横にある「アップデート」や「すべてをアップデート」をクリックします。
開発者のWebサイトからアプリをダウンロードした場合は、アプリを開いてメニューバーに表示されるアプリ名をクリックします。 そして、「アップデートを確認」を選択します。あるいは、アプリの設定から自動アップデートのオプションを探してみます。 また、開発者のWebサイトにアクセスしてアップデートを確認することもできます。 Macにインストールされているアプリ毎にこのプロセスを繰り返す必要がある事にご注意ください。
5. デスクトップ上のファイルやフォルダの削減
前述したように、WindowServerプロセスは視覚的に表現することに重点を置いています。 そのためデスクトップに保存するファイルやフォルダの数を減らすと、CPU使用率を減らすのに役立つ場合があります。 これは、WindowServerプロセスが再描画を行う必要が少なくなるためです。
こちらにいくつかの解決策があります:
- ファイルをフォルダに整理。 可能な限り数を減らすのがポイントです。
- 必須ではないファイルやフォルダを書類フォルダに移動します。
- スタック機能 (デスクトップ上を右クリック) を利用します。
6. 複数ディスプレイのスペースの無効化
複数のディスプレイで作業を行う場合、それらのディスプレイのスペースをオフにすると解決する場合があります。 これは「システム設定」から簡単に実行可能です。
- 「システム設定」>「デスクトップとDock」に進みます。
- ウィンドウの最下部までスクロールダウンします。
- Mission Controlの下の「ディスプレイごとに個別の操作スペース」をオフにします。
- Macを再起動します。
7. Macの再起動
多くのユーザーはMacの再起動を頻繁には行いません。作業が終わったらパソコンを閉じて、また使用する必要があるタイミングで再び開きます。 しかしながら、RAMを解放して、キャッシュやその他の一時ファイルを削除するには、再起動が重要です。 また、これで特定のプロセスがCPUサイクルを過剰に使用するなどの問題の解決にも繋がります。
WindowServerは、Macのディスプレイ上のグラフィック要素とウィンドウの描画をコントロールするプロセスです。 通常は、消費するシステムリソースは非常に少ないので、実行していることに気づかないほどです。 ただし、たまに問題が起こる事もあり、必要以上に多くのCPUサイクルやRAMを消費することがあります。 この問題がMacで発生した場合には、上記の手順に従って、Macで使用されるリソースを削減しましょう。
よくある質問
WindowServerプロセスとは?
Macにおいて、WindowServerプロセスはディスプレイとアプリ間の通信を担うプロセスです。 簡潔に説明すると、ディスプレイ上にグラフィック要素を描画するために必要です。
WindowsServerプロセスのCPU使用率が非常に高いのは何故ですか?
最も一般的な原因として、一度に複数のディスプレイの使用や、視覚効果の多用、そしてアプリの不具合などがあります。
WindowsServerプロセスのCPU使用率を減らす方法はありますか?
この問題に対処する手段として、アプリやmacOSが最新バージョンであることの確認、Macの再起動、不要なウィンドウを閉じる等、複数の方法があります。