• 締切済み

コミット済みメモリの内訳を知る方法

タスクマネージャに「コミット済み」という項目がありますが、この内訳を知りたいです。つまり、どのプロセスがどれだけメモリをコミットしているかを知りたいです。 タスクマネージャの詳細タブ表示での「コミットサイズ」や、リソースモニターのメモリでの「コミット」を合計してみてもそんなに大きな値にはならず、別の何かがメモリをコミットしたまま放置しているのでしょうか? ノートPCもデスクトップPCも、ほとんどシャットダウンせずにスリープor休止で使用しています。すると、タスクマネージャ上のコミット済みのサイズが少しずつ増えていきます。例えば、クリーンブート直後にタスクマネージャを見ると2.5/8.9GBとなっていますが、何日もシャットダウンせずに使っていると、すべてのアプリを閉じても6.xとか7.xGBになります。最悪8.7GBとかになって、アプリの起動に差支えが出る場合もあります。 ウィルスのせいという意見もあろうかと思いますが、2台別々のPCでも同様ですし、クリーンインストール直後でも同様でしたので、それ以外の可能性を知りたいです。 「コミット済み」の内訳を知る方法があれば、よろしくお願い致します。

みんなの回答

  • chie65535
  • ベストアンサー率43% (8514/19356)
回答No.2

因みに、ページファイル(仮想メモリ)が肥大化しないようにする唯一の方法は「コミット済みの左側の数値よりも、大きい容量の物理メモリを搭載する」だけです。 使用するメモリの瞬間最大風速が、物理メモリ容量よりも小さければ、仮想メモリは使われません(物理メモリ(実メモリ)で足りてる訳だから、当然) 仮想メモリが使われないと言う事は、ページファイルが肥大化しないと言う事です。 ページファイルが肥大化しなければ、ページファイルを最適化する事もありません。 ページファイルを最適化する事が無ければ、それが原因でアプリが起動出来ないほど重くなる事もありません。 因みに、ページファイルは「必要メモリ量が物理メモリ容量を超えた場合に、必ず増大」します。 あるプロセスがメモリを要求して、ページファイルが1ギガ増大した場合、そのプロセスが終了しても、ページファイルの大きさは変わりません。 数時間後に「同じこと」が繰り返されると、同じように「1ギガ増大」します。 なので、この状態が永続すると「ページファイルが定期的に1ギガづつ増大する」のです。 そのため「ずっと電源を入れっ放しにしている」と、実メモリの不足量が「ほんの少し」であっても、ページファイルがどんどん肥大化していくのです。 で、限界まで肥大化すると、ページファイルの最適化が入って、激重になるのです。 これが「質問者さんのPCの状態」です。 解消には「物理メモリの増設」が必要です。

  • chie65535
  • ベストアンサー率43% (8514/19356)
回答No.1

>何日もシャットダウンせずに使っていると、すべてのアプリを閉じても6.xとか7.xGBになります。最悪8.7GBとかになって コミット済みの数値の左側は「実際に必要としていたメモリの瞬間最大風速」です。 瞬間最大風速ですから、最も高い値を記録したら、下がる事はありません。 もちろん、現時点での個々のプロセスの使用メモリサイズを合計しても、その数字にはなりません。 当然、アプリをすべて終了しても、数値は下がりません。 因みに、右側の数値は「実メモリサイズ+仮想メモリサイズ」です。 >アプリの起動に差支えが出る場合もあります。 ページファイル(仮想メモリとしてHDDに作られたファイル)は、使用し終わっても最適化されないので、どんどん肥大化していきます。 最大まで肥大化すると「未使用になった残骸部分のお掃除」つまり「ページファイルの最適化」が始まります。 「ページファイルの最適化」は、数ギガあるファイルを作り直ししますから、これが始まると、アプリの起動に差し支える場合があります。 アプリの起動に支障をきたしているのは、コミット済みの左側の数値が大きくなったからではなく、ページファイルが最大まで肥大化して、最適化処理が入ってしまったからです。 Windowsを再起動すれば、ページファイルのサイズはゼロに戻りますから、次にページファイルが最大まで肥大化するまで余裕が出来るので、PCが重くならずに済むのです。 >つまり、どのプロセスがどれだけメモリをコミットしているかを知りたいです。 上記のように、どのプロセスがどれだけメモリをコミットしているか知っても、何の解決にもなりません。 >「コミット済み」の内訳を知る方法があれば、よろしくお願い致します。 内訳を知っても、何の解決にもなりません。

haniriito
質問者

お礼

chie65535さん、ありがとうございます。 > コミット済みの数値の左側は「実際に必要としていたメモリの瞬間最大風速」です。 > 瞬間最大風速ですから、最も高い値を記録したら、下がる事はありません。 それは、Windows XPのタスクマネージャにある「コミットチャージ」の最大値のことではないでしょうか? > 当然、アプリをすべて終了しても、数値は下がりません。 本当ですか!? いくつかのアプリを終了したらコミット済みの左側の値は少しは下がりました。Visual StudioとCode Composer Studio(これも開発ツール系)、それからテキストエディタとかを終了すると、8.1/9.6GB→5.3/9.6GBになったんですが・・・。 私のPCが2台とも異常なんでしょうか。 ただし、元の状態(起動時の状態)にまでは戻りません。完全には戻らないのは承知していますが、全アプリを終了させた時のコミット済みの値は、シャットダウンさせずに使い続けているうちに少しずつ"底上げ"されているようです。今回は、その底上げの理由(or原因プロセス)が知りたいです。 > ページファイル(仮想メモリとしてHDDに作られたファイル)は、使用し終わっても最適化されないので、どんどん肥大化していきます。 ページファイルそのもののサイズが増える・増えないということは、今回は問題にしていないです。 > 最大まで肥大化すると「未使用になった残骸部分のお掃除」つまり「ページファイルの最適化」が始まります。 「ページファイルの最適化」と、私の質問の根底にある「コミット済みメモリの増減」との関係が読み取れなかったのですが、そこを教えていただけませんか?「未使用になった残骸部分のお掃除」と表現されていますが、それはつまり一時はコミット済みとなったページが解放される→コミット済みメモリが減る、ということでしょうか? 私がイメージする「最適化」は、断片化した状態(使用しているところとしていないところ、虫食い状態?)を整理して、使用している部分を一箇所に集める、というような意味合いとして理解しています。 それともガベージコレクションのような動作を意味しているのですか? メモリをコミットしてページファイルに移動させたものって、そのプロセスの終了とともに解放されるものと思っていたのですが、違うのでしょうか?ページファイル中の割り当て管理のアルゴリズムは知る由もないですが、マーク&スイープのようなアルゴリズムであれば遅れて解放されるということは有り得そうですね。 > アプリの起動に支障をきたしているのは、コミット済みの左側の数値が大きくなったからではなく、ページファイルが最大まで肥大化して、最適化処理が入ってしまったからです。 すみません、私の説明が不十分でした。 「アプリの起動に支障が出る」というのは、遅くなるとかそういうことではなくて、アプリが起動できなくなる、ウィンドウが正しく表示されなくなる、メニューの項目が減る、などの機能的なものを意味しています。 > >つまり、どのプロセスがどれだけメモリをコミットしているかを知りたいです。 > 上記のように、どのプロセスがどれだけメモリをコミットしているか知っても、何の解決にもなりません。 なぜそう言い切れるのでしょう?理由を教えて下さい。 私は、次のように考えています。 ○特定のプロセスが大量にメモリをコミットしているなら、そのプロセスを再起動してメモリを解放させる。 ○そのプロセスに不具合があって(例えばメモリリークのようなもの)それが既知の問題でアップデートが用意されれているなら、アップデートの適用で解決する可能性がある。 ○そのプロセスが本当に必要なものでなければ、はじめから起動させない方法を考える。あるいは、同等の別手段に切り替える方法を考える。 プロセス=単純なアプリもあれば、システムに根ざしたサービスの可能性もあるので、なんでもかんでもできるわけではありませんが、せめて特定すれば何らかの対抗措置をとれる可能性があると思います。 引き続き、ご意見をよろしくお願い致します。

関連するQ&A

  • コミットチャージ

    こんにちは。 windows 2000のタスクマネージャにあるコミットチャージってなんですか? ”コミット済みの仮想メモリ”と”使用可能なメモリ空間、または現在使用中のメモリサイズ”という2つの文をみつけましたが、この2つがつながらないようなきがします。 制限値や最大値、物理メモリとの関係など理解できません。 アドバイスよろしくお願いします。 また詳しく説明しているHPはあるでしょうか?

  • コミットチャージ

    こんにちは パソコンの動きが重いのでタスクマネージャーをみてみるとコミットチャージが996MB/1118MBになっていました あわてて今まで起動させていたアプリや常駐ソフトをとじたのですが (PictBearSEとWMPです) それでもコミットチャージの値が下がらずに困っています それと仮想メモリ容量不足の噴出しもでました PictBearSEではやや大きめのサイズの写真を編集しており、 WMPでは5MBくらいの音楽ファイルを再生していました PCはNECのLavieで型番(?)はLL750/C でOSはウィンドウズXPです 解決するためにする事をどなたか教えていたでけないでしょうか よろしくおねがいします

  • メモリ使用量の測定(Win7)

    お世話になっております。 アプリケーション毎のメモリ使用量を知りたいのですが、 Win7のリソースモニターの値の意味について理解しきれず質問致します。 使用しているOSは Windows7(x64) で、4GBのメモリを搭載しています。 質問内容: Win7で「メモリ使用量は?」と問われたらどれを答えればいいのか? 「○○のアプリがメモリを食い過ぎている」的な話は、 日常的にPCを触れているとよく聞く話ではあります。 そして、どのアプリケーションが、どれだけのメモリを使用しているのかは Windowsならばタスクマネージャー>「パフォーマンス」タブ→リソースモニタ で、見ることが出来ます。 ですが、このリソースモニターに表示されるメモリの値と思われるものには、 コミット、ワーキングセット、共有可能、プライベート、と4っの項目があります。 「プロセスが今使っているメモリ量」は、どれを見れば良いのでしょうか? http://technet.microsoft.com/ja-jp/windows/ff467974 このような資料を見つけ、それぞれの言葉の意味を読むに、 ワーキングセットが、実際の使用量ではない、と推測してはいますが、 コミットの値を信用すればいいのか、 プライベートを見るべきか、正確な理解が出来ずにいます。 XPの時にはこんなに複数の項目はなく、 タスクマネージャーの「メモリ使用量」という項目だけしかありませんでしたが、 Win7のタスクマネージャーに表示される 「プライベートワーキングセット」というのは別物のようですし・・・ どうかご教示お願いします。

  • たまったコミットチャージの開放?

    メモリが足りなくなるとコミットチャージが 物理メモリ以上になってしまって重くなります その原因となるソフトを終了させてもコミットチャージの 数字がタスクマネージャで見てもなかなか減りません 動作は軽くなるのですが。 これってみかけだけ増えているだけで、実際はへっているのでしょうか? きにしなくてもいいですか?

  • メモリ増設の効果は?

    WindowsXP ProのノートPCにメモリを1GB搭載して使用しています。 タスクマネージャでメモリの状況を見ると、 利用可能物理メモリ約500MB、コミットチャージの合計約400MBです。 特にPCを使っていて遅いという感覚は無く、困っている訳ではないのですが、 メモリを1GBから1.5GBに増やすと、より快適に使えるようになるでしょうか。

  • コミットチャージの合計と物理メモリの合計について

    WindowsXPSP2、メモリ512MBのパソコンを使用しています。質問ですがメモリはタスクマネージャの画面でコミットチャージの合計が物理メモリの合計を超えなければOKということは知っているのですが、コミットチャージの合計の数値が物理メモリの合計の数値ギリギリよりは少し余裕を持たせておいたほうがいいのでしょうか?。あと自分のパソコンは物理メモリ合計が523504でコミットチャージ合計が347700くらい(アイドル状態)です。物理メモリの合計を超えることはありませんがこの状態でメモリを増設したとして早くなりますか?。

  • コミットチャージの値が下がらない

    以前、internetのつながりが悪いと、質問したら、コミットチャージの値を見て、メモリの増設をしたら、、と回答がきました。 そこで、メモリの増設をしましたが、いまいち良くありません。 そこで、コミットチャージを監視していたのですが、、 ここで質問です。 internetを次々に開いていくと、コミットチャージの値がだんだん上がっていきますよね、次に開いているinternetのページを閉じていくと、コミットチャージの値も下がるんですが、思ったほど下がりません。 たとえば、パソコンを開いた直後5分程度のコミットチャージの値は、300000くらいなんですが、これが、最近は40000程度から下がりません。すべてのソフト(タスクマネージャーのアプリケーションのところで立ち上がっているソフト)を閉じても、下がりません。常駐のソフトもすべてとめても下がりません。 internetの調子は、350000程度を超えると悪くなるので、コミットチャージの値をさげたいんです。 パソコンをログオフすると、300000程度に下がるんですが、毎回ログオフするのも、面倒で。 何か良い方法はありませんか? ためしに、メモリの開放ソフトや、internetオプションのファイルの削除・cookieの削除なんかもやってみたんですが、どうもうまくいきません。 何方か、詳しい方、いらしたら、よろしくお願いします。

  • 私のPCはメモリ不足でしょうか?

    最近フリーズ多いので困っています。 PCに関してまったくの初心者なのでよろしく お願いします。 タスクマネージャーで確認したところ コミットチャージが239036KB/559732KB と出ています。 これはメモリ不足とみていいのでしょうか? ちなみに CPUはセレロン2.30GHz HDDは120GB メインメモリは256MB OSはXPです。

  • メモリの整理の方法

    タスクマネージャというものでメモリを確認したら、物理メモリの合計よりコミットメモリの合計のほうがかなり多くなっていました。市販の整理ソフトを買いましょうと本に書かれていたのですが、それしか方法はないのでしょうか?この状態のせいで、最近、PCの動きが遅かったのでしょうか?写真や書類など、保存されているものでいらないものを消去したら、よいのでしょうか?PC初心者なので、書いていてもよくわかりません。質問の意図はわかっていただけますでしょうか?

  • アンチウイルスソフトの違いによるコミットチャージの最大値

    アンチウイルスソフトとして、Avira AntiVir Personal - Freeを導入しました。 非常に動作が軽く気に入っているのですが、 PCを起動させた直後、タスクマネージャー上で確認すると、 「コミットチャージの最大値」が1GB前後に表示されます。 起動安定すると450~500MB程度に落ち着いてはいるのですが、 ずいぶん高いような気がします。 以前、同じPCにてMcAfeeインターネットセキュリティを導入していた時、起動直後のコミットチャージの最大値はせいぜい500MB程度でした。 ただ、McAfeeの場合、通常使用する上でどうも重く感じてしまいAviraを導入してみたしだいです。 普段の動作がとても軽く、スパイ対策も施されていないAvira AntiVir Personal - Freeの起動直後のコミットチャージの最大値が、何故こんなに高いのかが不思議なのです。 ちなみにPCのスペックは、 CPU  ペンティアム-M  1.8GHz 実装メモリ        1024MBです。 これらの事を全く別なPC(実装メモリ640MB)で行った場合、 Avira AntiVir Personal - Freeの起動直後のコミットチャージの最大値は600MBくらいに表示されます。 McAfeeインターネットセキュリティの場合ですと350MB程度の表示です。 Avira AntiVir Personal - Freeは普段の動作は軽くとも、 こんなにもメモリを消費するものなのでしょうか? 説明の仕方が下手でわかり難いかもしれませんが、 良きアドバイスを頂けると幸いです。 宜しくお願い致します。