2014.12.07: 手順の一部を修正。

コンピュータのメモリが不足しています。他のプログラムを終了してから、再試行してください。

どう考えてもメモリは余りまくっている筈なのに、Windows7が「メモリが不足しています」とメッセージを出す場合の原因の多くは、恐らく[Windows Search]がインデックス作成中・・・て事で間違いないと思います。

今回の症例

環境構築中のWindows7マシンで「コンピュータのメモリが不足しています。他のプログラムを終了してから、再試行してください。」のメッセージが頻繁に発生しかなり鬱陶しい状態になってしまった。

今使っているPCのメモリ搭載量は16GB。十分すぎるほどメモリを積んでいます。
以前使っていたメモリ9GBのPCでも、サブで使っているメモリ2GBの Windows 7 マシンでも、このエラーは滅多な事では発生しません。何が起きているんだろう・・・?

エラー発生時の状況

タスクマネージャー
▲タスクマネージャーを開いてみると、空きメモリは12GBもあります。
十分に余っているじゃないか・・・

メモリ不足の原因としてWindowsが挙げるアプリケーションは
 ・explorer
 ・internet explorer
この2点である場合が圧倒的に多い。
IEとExplorerとメモ帳程度しか起動していない状況でも、このエラーは発生します。
こんな状況で16GBのメモリを食い尽くすなんて考えられない・・・
何が起きているんだ・・・?

スポンサー リンク

イベントビューアーを確認してみる

Windows管理ツールの「イベントビューアー」でログを確認してみると、原因がアッサリ分かりました。
イベントビューアー
▲クリックで拡大
メッセージ内容
Windows は仮想メモリの不足状態を診断しました。仮想メモリを多く消費したのは次のプログラムです:SearchFilterHost.exe (4936) は 31605702656 バイトを消費し、avguard.exe (5312) は139640832 バイトを消費し、iexplore.exe (4372) は 124047360 バイトを消費しました。

SearchFilterHost.exeというプログラムが31GBもの仮想メモリを消費しています。

SearchFilterHost.exe・・・
Windowsデスクトップサーチで使用しているプロセス。ファイルにインデックスを作成して、ファイル検索を高速に行う為のプログラム。

そういえば、今までのPC環境ではインデックス作成サービスは無効にしていました。
今回の新PCは「SSDを積んだ事だし、MS標準のファイル検索でも高速に使えるかも?とりあえず試してみよう」てな考えでインデックス作成を有効なままにしていました。

こいつ・・・インデックス作成時にこんなにメモリを食うのですね('Α`)

対処方法1 インデックス作成を無効にする

MS Searchを完全に無効にする方法
Windowsサービスを起動し、無効設定する。

MS Searchを完全に無効にする方法
▲クリックで拡大
 1.手順は「スタート」>「管理ツール」>「サービス」などから実行。
  またはWin+Rキーから「services.msc」を実行。
 2. リストから[Windows Search]を探しダブルクリック。
 3. スタートアップの種類を[手動]に、
  サービスの状態を「停止」状態にする
 4. OKボタンをクリックし、設定を適用してからPC再起動

※上記方法を行うと、全てのインデックスサービスが中止されてしまう。

HDD、SSD別にインデックスの作成を有効/無効にしたい場合
HDDのインデックス作成中止
インデックス作成を中止したいHDD/SSDのプロパティ画面を開き、個別にインデックス作成のチェックを外してやる。

対処方法2 インデックス作成を有効なままで使う場合

CCleanerなどのWindowsお掃除ソフトを標準設定で使うと、Windowsが作成したインデックスは全て削除されてしまいます。
削除された後は、Windowsが再びインデックスを作成する為に [SearchFilterHost.exe]をガンガンに走らせますので、再びメモリ不足の警告が発生しやすい状況になります。

私の場合、これが原因でした(^_^;
メモリ不足のエラーが頻繁に発生するPC環境で Windows メンテナンスツールを使っている場合は、インデックス作成に関する項目をオフにしておきましょう。

CCleaner
▲クリックで拡大
画像はCCleaner でMS Searchのインデックスを削除しないようにする方法。

 

解説は以上です。

とりあえず今更ながらMS Searchを試していますが・・・SSDを利用してもやっぱりMS Searchはイマイチですなあ。。。やっぱファイル検索はEverythingが良いですわ。