MacのWindowServerのCPU使用率・メモリ使用量が高い原因は?根本的な解決策を解説
MacのWindowServerプロセスが多くのCPUとメモリを使用している原因をご存じでしょうか。その理由と解決策をこちらの記事で探りましょう。
Macが重い、クラッシュされるとき、アクティビティモニタを見ると、WindowServerという名前のプロセスがCPUとメモリのリソースを大量に占めていることに気が付いて、不安に感じたことはありませんか?
WindowServerとは具体的にどのようなものなのか、なぜCPUやメモリを大量に消費するのか、また、その原因と対策はなんでしょうか。本記事では、MacBook Pro M1 Pro・macOS 26.4で確認した実際の使用状況をもとに、WindowServerの負荷が高くなる原因と、根本的な解決方法を解説します。
WindowServerとは?強制終了してもいい?
WindowServerはMacの画面表示を管理するmacOSのシステムプロセスです。アプリケーションを起動したり、新しいウインドウを開いたり、新しいページをブラウズする度に、WindowServerは常に動作することになります。このプロセスは以下の処理に関係します。
- アプリのウインドウを画面に表示する
- ウインドウの移動やサイズ変更を反映する
- Dockやメニューバーを描画する
- デスクトップや壁紙を表示する
- 透明効果やアニメーションを処理する
- 内蔵ディスプレイや外部ディスプレイに映像を出力する
WindowServerは強制終了しないほうがよい
アクティビティモニタでは、WindowServerを選択して終了または強制終了すること自体は可能です。Appleも、アクティビティモニタでは応答しないプロセスを終了または強制終了できると説明しています。
しかし、WindowServerを終了すると、現在のユーザーセッションも終了し、Macから今のアカウントからログアウトした状態になります。開いているアプリや作業中のファイルも閉じられるため、保存していないデータが失われる可能性があります。
そのため、WindowServerの負荷が高い場合は、WindowServer自体を終了するのではなく、負荷をかけているアプリや設定を特定して、問題を解決することは重要です。
MacのWindowServerのCPU使用率・メモリ使用量が高いのは異常?
WindowServerのCPU使用率やメモリ使用量には、すべてのMacに共通する明確な正常値はありません。
使用しているMacの機種、画面の解像度、外部ディスプレイの有無、開いているウインドウ数、使用しているアプリなどによって数値が大きく変わるからです。
筆者のMacBook Pro M1 Proでは、WindowServerのCPU使用率が一時的に70%前後になっても、しばらくすると自然に下がることがあります。一方、70%以上の状態が続くと、ウインドウの切り替えや文字入力、アプリの利用などに若干の遅れを感じることがありました。
ただし、「70%を超えたら異常」という意味ではありません。操作中に一時的に上昇しただけであれば、通常の描画処理による可能性があります。
異常とは判断する場合は?
macOSは、使用可能なメモリをアプリやキャッシュに積極的に割り当てます。そのため、WindowServerのメモリ使用量が数百MB、場合によっては数GBになっていても、それだけで異常とは判断できません。
Appleも、メモリの状態を確認するときは、単純な空き容量ではなく「メモリプレッシャー」を確認するよう案内していますが、でももし次のような症状があれば、WindowServerの数値と合わせて異常と判断することもあります。
- Macを操作していない状態でもCPU使用率が下がらない
- メモリプレッシャーが長時間黄色または赤色になっている
- スワップ使用領域が継続的に増えている
- ウインドウの切り替えや文字入力が遅れる
- Macが異常に発熱する
- ファンが長時間高速回転する
- バッテリーの消費が急に速くなる
- WindowServerのメモリ使用量が時間とともに増え続ける
役に立つ情報:MacBookのメモリ選び完全ガイド|8GB・16GB・32GBどれが最適?
MacのWindowServerのCPU使用率・メモリ使用量が高い原因を特定
今回の確認環境は次のとおりです。
| 項目 | 使用環境 |
|---|---|
| Mac | MacBook Pro M1 Pro |
| macOS | macOS 26.4 |
| 主なアプリ | CapCut、Google Chrome、Visual Studio Code、ターミナル、ChatGPT、Claude、Figmaなど |
| 周辺機器 | 外部ディスプレイ |
WindowServerの数値が高いと、「WindowServerがMacを重くしている」と考えがちですよね。しかし、実際には特定のアプリが大量の描画処理を要求し、その結果としてWindowServerのCPU使用率が上がっているケースが少なくありません。つまり、WindowServerは原因ではなく、別のアプリや表示環境から発生した負荷が表面化している可能性があります。次では、筆者のMacBookでよく出てくる現状と特定される原因です。
動画編集ソフトや複数のChromeプロファイルを使用している場合
筆者の環境では、CapCutなどの動画編集ソフトを使用したときや、複数のGoogle Chromeプロファイルで多数のタブを開いたときに、WindowServerのCPU使用率が高くなりました。
動画編集ソフトでは、プレビュー映像、タイムライン、エフェクト、サムネイルなど、画面上の多くの要素が継続的に更新されます。
Chromeでも、次のようなページを同時に開いていると描画処理が増えます。
- 動画再生ページ
- Web会議
- 動きの多いWebアプリ
- AIチャット
- 広告やアニメーションの多いページ
- 複数のChromeウインドウ
このような状態では、CapCutやChrome自体のCPU・メモリ使用量が増えるだけでなく、画面を合成するWindowServerの負荷も高くなります。
そのため、WindowServerだけを見るのではなく、同じタイミングでCPU使用率が上がっているアプリを確認する必要があります。
Visual Studio CodeやAIチャットを同時に使用している場合
ターミナル、Visual Studio Code、ChatGPT、Claudeなどを同時に使用している場合も、WindowServerのCPU使用率が上がることがあります。
ターミナル自体は通常、それほど大きな描画負荷を発生させません。しかし、コマンドの実行結果やログが高速で流れ続けていると、画面の再描画回数が増えます。
Visual Studio Codeでも、次のような使い方では負荷が高くなりやすくなります。
- 複数のウインドウを開いている
- ターミナルを複数起動している
- 大量のログを表示している
- プレビュー画面を開いている
- 多数の拡張機能を有効にしている
ChatGPTやClaudeなどのAIチャットでは、回答の生成中にテキストが継続的に追加され、画面が更新されます。長い会話を複数開いている場合は、AIアプリやブラウザ側のCPU使用率と一緒にWindowServerが上昇することがあります。
この場合も、WindowServerそのものより、同じタイミングで負荷が高くなっているAIアプリ、ブラウザ、Visual Studio Codeなどを先に確認してください。
合わせて読みたい:Macターミナルの使い方:初心者から上級者まで活用できる基本とAI活用法
コントロールセンターのCPU使用率が高くなる
アクティビティモニタを確認すると、ControlCenterのCPU使用率が一時的に高くなることがあります。
コントロールセンターは、Wi-Fi、Bluetooth、AirDrop、集中モード、音量、ディスプレイなど、macOSの主要な設定を管理しています。
Wi-FiやBluetoothの接続状態が変化したとき、メニューバーの表示が更新されたとき、マイクやカメラの使用状況が変わったときなどに、ControlCenterのCPU使用率が一時的に上がることはあります。 ただし、長時間高い状態が続く場合は、次の点を確認してください。
- メニューバー常駐アプリが多すぎないか
- Bluetooth機器が接続と切断を繰り返していないか
- Wi-Fiが不安定になっていないか
- マイクやカメラを使用するアプリが動作していないか
- メニューバーアプリやシステムプロセスに不具合がないか
その時、不要な項目を減らして負荷が下がるかを比較し、原因を切り分けることが重要です。
それ以外に、次のような理由も考えられます。
- 最新のmacOSを搭載した古いMacを使用している
- 不要な視覚効果
- 他の外部アクセサリの問題
Activity Monitorで原因を確認する方法
まず、アクティビティモニタでWindowServerと周辺プロセスの状態を確認します。
- 「command」+「スペース」キーを押す
- 「アクティビティモニタ」と入力する
- アクティビティモニタを開く
- 「% CPU」は、使用率の高い順に並べる
- WindowServerと同時に高くなっているアプリを確認する
- 「メモリ」タブを開く
- メモリプレッシャーとスワップ使用領域を確認する
WindowServerだけでなく、次のプロセスも確認しましょう。
- 使用中の動画編集ソフト
- Google Chrome
- Visual Studio Code
- ChatGPTやClaude
- ControlCenter
- kernel_task
- メニューバー常駐アプリ
WindowServerの数値が上がった時間帯に、どのアプリのCPU使用率も上がっているかを見るのがポイントです。
ターミナルのtopコマンドで原因を確認する方法
ターミナルでも、CPU使用率の高いプロセスを確認できます。
「ターミナル」を開き、次のコマンドを実行します。 top -o cpu CPU使用率の高い順にプロセスが表示されます。
メモリ使用量を中心に確認したい場合は、次のコマンドを使用します。 top -o mem
WindowServerだけでなく、Chrome、CapCut、Visual Studio Code、AIアプリなどの数値も確認してください。
topコマンドの表示はリアルタイムで変動します。一瞬だけ高くなった数値ではなく、数分間継続して高いプロセスがないかを確認します。
終了するときは「Q」キーを押します。
外部ディスプレイを接続している場合
筆者の環境では、外部ディスプレイを接続するとWindowServerのCPU使用率が上がり、Macの動作が重くなることがありました。
外部ディスプレイを接続すると、WindowServerが管理する表示領域が増えます。特に、次の条件では描画処理が増えやすくなります。
- 高解像度ディスプレイを使用している
- 「スペースを拡大」などの拡大縮小解像度を選択している
- 高いリフレッシュレートを使用している
- HDRを有効にしている
- 複数台のディスプレイを接続している
- 外部ディスプレイで動画やアニメーションを表示している
Apple製ディスプレイや一部のMacBook Proでは、60Hzや120Hzなど複数のリフレッシュレートを選択できます。
外部ディスプレイ接続時だけWindowServerが高くなる場合は、アプリだけでなく、解像度やリフレッシュレート、HDR、接続しているディスプレイ数も切り分けて確認する必要があります。
MacのWindowServerのCPU使用率・メモリ使用量が高いときの解決策
WindowServerの負荷を下げるには、WindowServer自体を終了するのではなく、負荷の発生源を順番に取り除きます。
負荷の高いアプリを一つずつ終了する
アクティビティモニタで、WindowServerと同時にCPU使用率が高くなっているアプリを確認します。
次のようなアプリから優先的に確認してください。
- 動画編集ソフト
- ブラウザ
- AIチャットアプリ
- Visual Studio Code
- Web会議アプリ
- メニューバー常駐アプリ
- 画面録画アプリ
- 仮想マシン
すべてを一度に終了すると、どのアプリが原因だったのか分からなくなります。
1つのアプリを終了したら、30秒から1分ほど待ち、WindowServerのCPU使用率が明確に下がるかを確認してください。
特定のアプリを終了した直後にWindowServerが下がった場合、そのアプリやアプリ内で開いていたコンテンツが負荷の発生源だった可能性があります。
外部ディスプレイを一度取り外す
外部ディスプレイを使用している場合は、一度Macから取り外し、WindowServerのCPU使用率を確認します。
数値が大きく下がった場合は、外部ディスプレイの設定を見直してください。
- 拡大縮小解像度から標準解像度に戻す
- リフレッシュレートを下げる
- HDRを一時的にオフにする
- 使用していないディスプレイを取り外す
- 接続ケーブルや変換アダプタを交換する
- ディスプレイを1台ずつ接続して確認する
外部ディスプレイを完全に使用しないことが解決策ではありません。どの設定や接続機器によって負荷が増えているのかを切り分けることが根本的な対処につながります。
不要なメニューバーアプリを減らす
メニューバーに常駐するアプリが多い場合は、使用していないものを終了します。
Apple純正のメニューバー項目は、「システム設定」から表示内容を変更できます。Appleも、メニューバー設定から表示する項目を選択できると案内しています。
サードパーティー製のメニューバーアプリについては、各アプリの設定から自動起動をオフにします。
ログイン時に自動起動するアプリは、次の手順で確認できます。
- Appleメニューを開く
- 「システム設定」をクリックする
- 「一般」をクリックする
- 「ログイン項目と機能拡張」を開く
- 不要なログイン項目やバックグラウンド項目を無効にする
Appleの案内でも、「ログイン項目と機能拡張」からログイン時に自動的に開く項目を追加または削除できます。
ただし、同期、バックアップ、セキュリティソフトなどを無効にすると、関連機能が停止する場合があります。アプリの用途を確認してから変更してください。
Macを再起動する
Macを長時間使用すると、キャッシュが積み重なり、WindowServerがメモリを過剰に消費することがあります。この場合、Macの電源を一度切って再起動することで、不要なキャッシュを大量にクリアし、WindowServerがMacで多くのCPUやメモリを使用する問題を緩和できます。
再起動後、Macは使用していないキャッシュファイルを解放し、必要なシステムリソースを再読み込みします。これにより、システムの負荷が軽減され、パフォーマンスが改善されることがあります。このシンプルな操作で、キャッシュの蓄積によるパフォーマンス低下を防ぐことができます。
Appleメニューから「システム終了」を選択して、電源を切ります。その後、電源ボタンを押して再起動してください。macOSとアプリをアップデートする
WindowServerやControlCenterの異常がmacOSの不具合によって発生している場合は、macOSのアップデートで改善される可能性があります。
次の手順で確認します。
- Appleメニューを開く
- 「システム設定」をクリックする
- 「一般」をクリックする
- 「ソフトウェアアップデート」を開く
- 利用可能なアップデートをインストールする
Appleによると、「ソフトウェアアップデート」には、使用中のMacモデルに対応したアップデートが表示されます。アップデート前にはバックアップを作成することが推奨されています。
macOSだけでなく、Chrome、CapCut、Visual Studio Code、AIアプリ、ディスプレイドライバなども最新版に更新してください。
セーフモードで再現するか確認する
通常起動時だけWindowServerの負荷が高くなる場合は、セーフモードで起動して確認します。
セーフモードでは、一部のログイン項目や機能拡張などが読み込まれないため、サードパーティー製ソフトウェアが原因かどうかを切り分けられます。
Appleシリコン搭載Macでは、次の手順でセーフモードを起動します。
- Macをシステム終了する
- 電源ボタンを長押しする
- 「起動オプションを読み込み中」と表示されるまで待つ
- 起動ディスクを選択する
- Shiftキーを押しながら「セーフモードで続ける」をクリックする
Appleも、Appleシリコン搭載Macでは起動オプションからセーフモードを選択するよう案内しています。
セーフモードでは問題が発生しない場合、ログイン項目、機能拡張、常駐アプリなどが関係している可能性があります。
他には、次の方法も利用してみてください。
- ディスプレイ設定の変更
- 不要なログイン項目を無効にする
- デスクトップを整理する
- Macを最適化する
Macから不要なログイン項目を一括に無効したり、自動的にMacを最適化したりする時、Macクリーナーを利用してみてください。 BuhoCleanerは、Mac専用の最高のクリーニングと最適化ソフトウェアの1つです。「不要なファイルの削除」、「不要なアプリケーションのアンインストール」、「メモリの解放」、「CPU負荷や温度の監視」などを簡単に行うことができます。誰でも手軽に扱うことができます。
MacのWindowServerに関するよくある質問
WindowServerをMacで強制終了するには?
アクティビティモニタを開き、WindowServerを選択して、画面上部の停止ボタンから「強制終了」を選択すると終了できます。
ただし、WindowServerを強制終了すると、現在のユーザーセッションも終了し、Macからログアウトします。保存していないデータを失う可能性があるため、通常の対処方法としてはおすすめできません。
先に負荷の高いアプリを終了するか、Macを通常の方法で再起動してください。
MacのWindowServerのCPU使用率を下げるには?
まず、WindowServerと同時にCPU使用率が高くなっているアプリを特定します。
動画編集ソフト、Chrome、AIチャット、Visual Studio Code、Web会議アプリなどを一つずつ終了し、WindowServerの数値が下がるかを確認してください。
外部ディスプレイを使用している場合は、一度取り外し、解像度、リフレッシュレート、HDRなどの設定も見直します。
WindowServerを直接終了するのではなく、画面描画を増やしているアプリや表示環境を調整することが重要です。
WindowServerがたまにクラッシュするときはどうすればいい?
WindowServerが一度だけクラッシュした場合は、まずMacを再起動し、macOSと使用中のアプリをアップデートします。
繰り返しクラッシュする場合は、次の点を確認してください。
- 外部ディスプレイやUSB-Cハブを取り外す
- 最近インストールしたアプリを終了する
- ディスプレイドライバを更新する
- セーフモードで再発するか確認する
- アクティビティモニタからシステム診断を実行する
- コンソールでクラッシュレポートを確認する
Appleのアクティビティモニタには、Spindumpやシステム診断など、問題のあるプロセスを調査するための機能が用意されています。
外部機器を外してもクラッシュが続く場合は、Appleサポートへの相談を検討してください。
kernel_taskとは?WindowServerとどのような関係がある?
kernel_taskは、macOSのカーネルに関連するシステムプロセスです。ハードウェアやシステム資源の管理に関係しており、CPUの温度管理を助ける役割もあります。
WindowServerは画面表示を管理するプロセスであり、kernel_taskとは役割が異なります。
ただし、動画編集や多数のブラウザタブなどによってMacの負荷が高くなると、画面描画を担当するWindowServerと、温度管理に関係するkernel_taskの両方が同時に高くなることがあります。
両者のどちらかを直接終了するのではなく、最初に負荷を発生させているアプリや作業内容を確認してください。
関連記事:MacでKernel_taskのCPU使用率が高い – 解決法6選
MacのWindowServerが暴走したときはどうすればいい?
WindowServerのCPU使用率やメモリ使用量が継続的に増え、Macが操作できないほど重くなった場合は、次の順番で対処します。
- 作業中のファイルを保存する
- CPU使用率の高いアプリを一つずつ終了する
- 外部ディスプレイやUSB-Cハブを取り外す
- 不要なメニューバーアプリを終了する
- Macを再起動する
- macOSとアプリをアップデートする
- セーフモードで問題が再発するか確認する
WindowServerの強制終了は、一時的にプロセスをリセットできても、原因となるアプリや表示環境が変わらなければ再発します。
根本的に解決するには、WindowServerの数値が上がる直前に使用していたアプリ、接続していたディスプレイ、表示していたコンテンツを一つずつ切り分けることが重要です。
まとめ
WindowServerは、Macのウインドウ、Dock、メニューバー、アニメーション、外部ディスプレイなどを管理する重要なシステムプロセスです。
CPU使用率やメモリ使用量が高く表示されても、Macが正常に動作し、メモリプレッシャーが緑色であれば、必ずしも異常ではありません。
注意が必要なのは、次のような状態です。
- CPU使用率がアイドル時にも下がらない
- メモリプレッシャーが黄色または赤色のまま続く
- スワップ使用領域が増え続ける
- Macが重い、熱い、ファンが高速回転する
- WindowServerのメモリ使用量が継続的に増える
- WindowServerが繰り返しクラッシュする
WindowServerの負荷が高い場合は、WindowServer自体を原因と決めつけず、動画編集ソフト、Chrome、AIアプリ、外部ディスプレイ、メニューバーアプリなどを確認してください。
負荷の高いアプリを一つずつ終了し、そのたびにWindowServerの数値が下がるかを確認することで、根本的な原因を特定しやすくなります。
10年以上に渡ってWebサイト制作やMac / iOS向けのアプリケーションを開発してきた経験を持ち、その経験を活かしてiPhoneおよびMacに関する設定方法やトラブルシューティング、活用事例などの様々な記事を執筆。一般ユーザーにも分かりやすい言葉で書かれたそれらの記事は、多くの読者から好評を得ており、その読者数は現在では数百万人に達する。
