どうもお久しぶりです。わいどです。
現在、苦労して製作した自作AT機(Pen2:350Mhz,メモリ64メガ,マザーAx6B)を使用しております。今回は、
WIN98のスワップファイルについてご教授いただきたく、書きこませていただいた次第です。
上記のような環境のマシンを起動し、起動後すぐにHdbenchを立ち上げ、「システム」をクリックしますと、約22メガ
バイトがFreeと表示されます。同様の状態でMS−DOSプロンプトを出して、MEMコマンドを実行しますと、63メガ
程度の十分な空き容量があります。
しかしながら、この状態でWIN98のスワップファイルである”WIN386.swp”ファイルの大きさは、小さいときでも28
メガバイト、大きいときでは32メガバイトもあります。
私はこれまで、スワップファイルはメモリが足りなくなったときに使用されるはずで、それ以外の(つまりメモリの空きが
十分にある)ときは、スワップファイルの大きさは0なのだと解釈していました。しかし、上記のような状態が起こって
いるということは、私の認識が誤っているか、もしくはマシンが異常であるといういずれかを示すものだと思います。
どなたかこれらの点についてご存知の方がおられましたら、ご教授をお願いしたいと思います。
- re: NC35 さん
投稿日:1998年10月28日 17時10分
Win98はどんなに空きメモリがあっても勝手にスワップしてしまいます。
某雑誌記事から簡単に引用すると
1.システムは暇なときに将来的にスワップされそうなメモリ上のデータをあらかじめスワップさ
せる。ただし、この時点ではまだメモリ上のデータはクリアされない。
2.アプリケーションを実行するなどして空きメモリが不足してくると、あらかじめスワップして
おいたメモリ領域をクリアして空きメモリを確保する。既に該当メモリ領域はスワップされて
いるのでスワップファイルへのアクセスは発生せず、メモリをクリアするだけで済むので
アプリケーション実行時のパフォーマンス低下がない。
3.2.のアプリケーションを実行する前にスワップ予定のメモリ領域のデータにアクセスする
必要があっても、データはメモリ上にもあるためスワップファイルにアクセスする必要はない。
よってこの場合も速度低下は無い。
とゆーことらしいです。合理的なんだか非合理的なんだか。
大量にメモリを載せているPCには余計なお世話だと思うんだけど・・・。
私のPCもメモリを160MB載せてますが常に20MB〜30MBくらいのスワップファイルができてます。
- re: 不惑 さん
投稿日:1998年10月28日 17時11分
Windows98ではメモリの空きに関係なくスワップをとるように変更されているようです。おそらくレスポンスの向上が目的だとは思いますが。
システムモニターでスワップの使用量を見られるとおそらく「0」なのではないでしょうか。
- re: わいど さん
投稿日:1998年10月30日 17時27分
NC35様、不惑様、レスありがとうございます。
WIN98はスワップファイルの使い方が変わったのですね。ただ、これによってパフォーマンスの向上が果たされているのか
という点については疑問が残りますが…
それにしても、WIN98は大量のメモリを必要としますよね。今ここにアクセスしている状態でシステムモニターを開いてみま
すと、「アロケート済みメモリ」の値が120メガ近くになっています。でか過ぎ…
しばらくはメモリの増設はしなくていいかな、と思っていたのですが、早々にメモリの増設をしなければならないようです。
また金が飛ぶ(泣)
- re: TX-Project さん
投稿日:1998年10月30日 18時36分
SYSTEM.INIで[vcache]MaxFileCache=,MinFileCache=を指定して、アロケートメモリーを
減らす方法もありますが。
- re: わいど さん
投稿日:1998年11月01日 23時30分
貴重なご意見ありがとうございます。早速試してみます。