お世話になります。先日からフック処理について質問させて頂いているものです。先
日のメモリリークの際には大変お世話になりました。
今、以前からのフック処理(マウスフック)を使ってアプリを作成しており、タスク
マネージャでメモリリークのチェックなどをしていたところふと疑問ができました。
タスクマネージャの列項目を増やして 「ページフォルト」の項目を増やし再度チェッ
クをしているとページフォルトの値がどんどん増えています。ページフォルトを調べる
と、
「仮想記憶システムにおいて、物理メモリ上にないメモリにアクセスされるときに発生
する割り込み」
と記載されていました。ここで質問なのですが
i) 上記のように値が増加するのはやはり問題なのでしょうか?
ii) ページフォルトは具体的にどのような処理を行っているときに 頻繁に発生するの
でしょうか??
初心者ですいませんが、ご教授よろしくお願いします
> 上記のように値が増加するのはやはり問題なのでしょうか?
少ないに越したことはありません。
> ページフォルトは具体的にどのような処理を行っているときに
> 頻繁に発生するのでしょうか??
メモリ使いすぎてるときとか、メモリの断片化が激しいときとか。
シャノンさん。ありがとうございます。
>> 上記のように値が増加するのはやはり問題なのでしょうか?
>少ないに越したことはありません。
値が増加し続けることでPCやシステムにどのような影響を与えるのでしょうか??以
前メモリリークをし続けていると リークを起こしているアプリ自身が落ちてしまうと
いうことがあったのですが・・・
初心で申し訳ないのですが ご教授をお願いしたいと思います。
遅くなります。
仮想メモリ(使用メモリ)と 実装メモリの差が大きいとページフォルトが増加する
問題につながると思います。
メモリーを増設するか仮想メモリ(使用メモリ)を少なくするかどちらかを検討した
ほうがいいと思います。
他にも、使用メモリの局所化などでも軽減できますが、ゼロにはなりません。
メモリリーク(単なるバグ)とは違います。
支障を与えるようなら最適化を考える必要がありますが、
ドルドル さんが何が起きているか気付かなかった程度ですよね…。
システムフックをかけると、あまりに頻発するなら、かけ方が悪く必要以上に参照しているか、
他のバグの副作用という可能性はあります。
#基本情報処理にもでてくるような一般的な用語ですし、
#システム寄りの開発がしたいなら、いつまでも「初心者ですみません」などと言い訳せずに、
#本なり買って基礎から体系的に学ばれることを推奨します。
#場当たり対応は効率も悪いですし、危険でもあります。
επιστημηさん。ITOさん。Banさん。ありがとうございます。
みなさんのご親切なアドバイスのおかげで、少しイメージがつかめました。Banさんか
らのご指摘もありましたように 少し基礎から学んでいこうと思います。
>ドルドル さんが何が起きているか気付かなかった程度ですよね…。
その通りです。ごく微小です。
皆様にいつもご迷惑をおかけしておりまして申し訳ありません。また何かありました
らぜひよろしくお願いします。