メモリが解放されない?

Anonymous
2013-10-15T16:34:20+00:00

Windows 8に固有の問題かどうかは分かりませんが、教えてください。

基本的にスリープや休止状態を使いシャットダウンはなるべくしないようにして使っているのですが、そうやって何日も使っているとアプリケーションが起動できなくなったり、起動してもダイアログやメニュが正しく表示されなくなったりして困っています。

そういうときにタスクマネージャで見てみると、メモリタブのメモリのコミット済みが異常に大きい値になっています。メモリが足りなくなっているのが、アプリケーションが起動できなくなっている理由ではないかと考えています。Windowsを再起動した直後は、こんなにコミット済みメモリは多くないです。せいぜい2.xGBか3.xGB程度なのですが、数日経過するとウィンドウアプリをすべて閉じてもコミット済みは7.4/8.6GBとかになっています。

もう少し調べてみると、どうも taskhostex.exe と explorer.exeの2つのプロセスがかなりのメモリを「コミット済み」にしていることが分かりました。試しにtaskhostex.exeをタスクマネージャから強制終了するとコミット済みメモリが2~3GBほど、explorerを強制終了すると1~1.5GBほど減ります。これらのプロセスが、メモリを大量に消費しているか、もしかしてメモリを解放しないままになっているのでしょうか?強制終了ではなく、これらのプロセスが使用するメモリ量を制限するか、安全に解放させる方法はありませんか?

また、ProcessExplorerを使用してtaskhostex.exeが提供しているタスクを調べてみると、Microsoft PlaySoundService Class/MsCtfMonitor Task handler/Wininet Cache task objectの3つの機能を提供しているようですが、このいずれかに問題があるのでしょうか?

ちなみにWindows ストアアプリは、まったく使用していません。使っているのは普通のデスクトップアプリばかりです。

この現象はメーカの違う2つのPCで確認しているので、固有の問題というわけではないと考えています。何か原因をご存知でしたら、教えていただきたいと思います。

よろしくお願いします。

(追記)

2台のPCで確認していますが、一方はWindows 8 64bitで、もう一方はWindows 8 Pro 64bitです。

搭載メモリはどちらも8GBです。

よろしくお願いします。

家庭向け Windows | 以前の Windows バージョン | パフォーマンスとシステムの失敗

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

61 件の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2014-12-16T15:35:34+00:00

    taskhostex.exeを強制終了するとコミット済みが凄まじい勢いで消え(5日ほど起動していたら10GB)、思わず笑顔になりました。

    復活方わからないのでメモリ不足時の応急処置止まりになりそうですが、私にはとても役に立つ情報でした。

    このプロセスを親にしている子アプリケーションのメモリが、子の終了後も親に予約されたままになっている、ということなのでしょうかね。

    この回答は役に立ちましたか?

    2 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  2. Anonymous
    2014-09-02T03:46:33+00:00

    質問者です。

    もうこのスレッドにコメントが付くこともなくなり、私自身ももう諦め半分ですが、同じような症状に悩まされている人のためや、(可能性は小さいが)Microsoftのエンジニアがこれを読んで「よし、調べてやろう!」と思ってくれることを期待しつつ、新しい情報を書き込みます。

    新しいPCを買ったのですが、やはり同じ症状が出ます。タスクマネージャ上で、「使用中」と「コミット済み」の量に大きな乖離が見られ、メモリの一部が開放されていないようです。explorerやtaskhostexを強制終了すると、コミット済みが大幅に減る点も同じです。

    これまでは、どうもブラウザ、特にChromeをインストールしている影響があるような気がしていたので、この新しいPCでは敢えてChromeを入れずに標準のIEだけで使ってきましたが、問題は出ます。Chromeはシロだったということになります。

    休止状態を使わず、再起動をすればよいだけのことなので、****り誰も気にかけないのでしょうね。

    ちなみに、新しいPCはWindows 8.1 Update(64bit)です。

    この回答は役に立ちましたか?

    2 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  3. Anonymous
    2015-01-23T02:43:30+00:00

    スレ主です。

    マイクロソフトは直してくれそうもないし、このフォーラムのモデレータの方も出て来られないので、この件はもうどうでもよくなっているのですが、一つ気づいたことがあります。

    再起動しなくても、サインアウト/再サインインするだけで、コミット済みメモリは解放されます。

    (一人1台で使っているので、いちいちサインイン/サインアウトとかしないから気づかなかったんですね)

    タスクマネージャをよく見てみれば、問題のexplorer.exeもtaskhostex.exeも一般ユーザー権限で動作しているので、サインアウトした段階で終了するのでしょう。実際、再度サインインするとPIDが変わっています。

    このことから推測されることは、問題の原因はWindowsのカーネルモードでなく、また管理者権限の必要なサービス内でもないだろうということです。ユーザーモードの一般ユーザーで起動されるどれかのプロセスが悪さをしているのだろうと思います。

    マイクロソフトさん、調べて直してくれないかな~。

    検索すると他でもちょくちょく起こっているようです。それに、私は使ってませんがSurfaceなんかでも起きてるみたいですが、Surfaceのようなタブレット型だったらいちいちシャットダウンしないのではないでしょうか?そうすると、この問題はもっと露見しても良さそうなのですがね・・・。

    この回答は役に立ちましたか?

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  4. Anonymous
    2014-11-21T05:02:52+00:00

    Bblue_shadowさんへ

    情報ありがとうございます。

    SNPのことについては知りませんでした。ありがとうございました。

    RSSはデフォルトで有効になっているようですね。手元のWin8は2台とも有効になっていました(そして、2台ともコミット済みメモリが増える現象が出ています)。

    ネットで調べる限りでは、SNPの不具合(?)が原因でメモリリークのような問題が出るという情報が散見されますが、どうもその一次情報というか、技術的な裏付けが見つけられず、単にそういう情報だけがひとり歩きしているように感じられました(別にMicrosoftを庇っているわけではありません)。

    とはいえ、ダメ元でRSSを無効にした状態で、しばらく様子を見てみました。結果は変わらず、やはりコミット済みメモリが次第に増えていきます。

    この迷宮はかなり深そうです。

    この回答は役に立ちましたか?

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  5. Anonymous
    2014-05-14T04:19:10+00:00

    最近のWindows Updateを見ていて、関連しそうなfixを見つけました。

    http://support.microsoft.com/kb/2935389/ja

    機械翻訳は要領を得ていませんが、非ページドプールのメモリリークを発生させるという点と、問題のモジュールがWinsock2関係のドライバであることから、今回の現象と関連している可能性が考えられます(傾向として、WEBブラウザを多用しているとコミット済みメモリが増えていたので、ネットワーク関係ではないかと疑っていました)。

    上のページを読むとWindows Serverだけに影響があるようなことを書いていますが、このfixをインストールするために更新プログラム 2955164 をインストールしてみると、問題のafd.sysのバージョンが6.3.9600.16384から6.3.9600.17088にアップデートされましたので、何らかの変化は期待できます。

    とはいえ、explorer.exeやtaskhostex.exeをkillするとメモリが解放されるという事実との因果関係を説明できない状況ではありますが、これで現象が解決するかどうかしばらく使ってみて、後日結果を報告したいと思います。

    この回答は役に立ちましたか?

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません