今回はプチフリバスターのディスクキャッシュの働きを説明する。このディスクキャッシュはRAMディスク、仮想ディスクに良く似た働きをする。
これまであまりメモリ管理については触れてこなかったので今回は少々入り込んだ話をする。
プチフリバスターのキャッシュ管理は他社のものとは少々異なっている。
キャッシュ管理方式には固定キャッシュ方式と、ダイナミックキャッシュ方式があり、プチフリバスターは後者のダイナミックキャッシュ方式を採用している。
まずは以下の図を見ていただきたい。

[クリックして拡大]
この図はタスクマネージャーなどで見られるメモリの使用量を時間経過とともに表している図を簡略化したものだ。左が固定キャッシュ方式のもの、右がダイナミックキャッシュ方式のものだ。
見てお分かりの通り、固定キャッシュ方式のものはその名の通り、常に一定のメモリを確保し続けている。そのため常にメモリを圧迫し続ける。
一方プチフリバスターの方はキャッシュサイズが動的に変化している。上の図ではわかりやすく山を二つしか描いてないが、実際はもっと上下していてコブも多い。
なぜこのような動きをするのかというと、OSからの書き込み命令がきた際に他のプログラムが使っていない余ったメモリ領域を必要な分だけ確保しているためである。そのため他のプログラムを邪魔することのなく、他のプログラムよりも軽いのだ。
プチフリバスターのキャッシュ管理のプロセスは以下のような感じだ。

[クリックで拡大]
プチフリバスターはまずメモリ上にディスク(HDDやSSD)と同じ容量の仮想空間、仮想ディスク空間と呼べる物を確保する。これは枠や器のようなもので、実際にはメモリを消費しない。
OSからの書き込み命令が来ると、その仮想空間にデータが格納される。この時に初めて実際のメモリを割り当てられ、実体化する。このメモリがディスクキャッシュの働きをする。
RAMディスクは、ディスク容量分のメモリを割り当てる。プチフリバスターのディスクキャッシュは、アクセスが発生した時だけ、個別にRAM領域を余っているWindowsのメモリから確保し展開し、ここにRAMディスクのようにデータを格納する。この機構により、RAMディスクのようにディスクが高速かつ快適に動作する。
かなりざっくりとした説明になってしまったがおおよそこのようなものだ。
他社で多く使われる固定キャッシュ方式のものに比べて軽く、効率がいいということさえ伝わればそれでよしとしよう。

---> プチフリバスター製品紹介ページ