難しい問題です‥‥

  • 2006年12月24日(日)

web拍手より、こんな質問をいただきました。
>Rainmeterのメモリー表示って、おかしくありません?
気づかれたかっっっ (^^;
えー‥‥ぶっちゃけおかしいです。

例えば私が作っているスキンでいいますと、メモリ表示には.iniファイル中で
「Measure=PhysicalMemory」という書式を使って物理メモリの使用量を表示し、
スワップの表示には「Measure=SwapMemory」という書式を使っていますが、
これは、物理メモリの使用量とスワップメモリの使用量の合計値が表示されます。
普通に考えると「SwapMemory=スワップメモリの使用量」になると思われますが、
実際には「SwapMemory=総メモリ使用量」となっています。

ここまでの話を聞くと、「じゃあRainmeterはそういう風に表示するものなんだな〜」
と思われるかもしれませんが、実は「Measure=Memory」という、(ヘルプを読むと)
"総メモリ使用量を取得する書式"がさらに別にあったりして、これを使ってみると、
PhysicalMemoryで取得した値とSwapMemoryで取得した値が合計されて表示されます。
つまり物理メモリが2重に加算されて表示されてしまうわけで、やっぱりおかしいんです。

で、ここまでの話を聞くと、Rainmeterに詳しい人なら、「じゃあスワップはMeasure=Calcで
SwapMemory-PhysicalMemoryと計算して表示すればいいんじゃない?」と思われるかも
しれませんが、話はそう単純ではありません。グラフ表示がされなくなってしまうのです。

私自身はずいぶん前、たしか「まきまき」の頃かな?このようなことに気がつきまして、
いろいろ試行錯誤した結果、Rainmeterの方式に慣れるしかないとあきらめました。
誰からも突っ込まれなかったしねw

ただねぇ‥‥そもそもWindowsやマイクロソフト自体が、スワップメモリとか仮想メモリとかの
用語の意味をきちんと定義できてないんですよね、確か。特にWindows黎明期の頃とか。
だから「Swapの表示は総メモリだ」と言い張ることも、ギリギリできるような気もします。
ま、それにしても「Measure=Memory」の値がおかしいことは明らかですけどね。
そんなわけですんで、みなさんも慣れてくださいw