講座3 RAM-DISKを使ってみる



 この講座ではメモリをハードディスクに見立てて使用することが出来るRAM-DISK(RAM-DRIVE)と呼ばれるドライバを使用する。何が良いのかというと、メモリは知っての通りハードディスクよりメチャメチャ速い。だから、それがハードディスクのように扱えればそこに置いたアプリケーションからのディスクアクセスが速くなる。そのかわり大量のメモリを必要とするので、逆に全体としては遅くなることもある。しかし、128MBや256MBものメモリを積んでいるマシンなら、その内の20MBくらい減ってもなんてことない。それに遅くなってもまた設定を元に戻せば良いので、一度は試してみよう。RAM-DISKはWindowsやMS-DOSに標準付属のはずだ。
 このドライバは、講座1の最後で少しだけ紹介したCONFIG.SYSという設定ファイル中に書き込んでメモリ上に常駐させる必要がある。難しいことではないが、講座1、2を十分に読んだ上で行ってほしい。そして、この講座の最後にはRAM-DISKを使ったWindowsアプリケーションの高速化についても教える。興味のある方はこちらも読んでほしい。

 まず、メモ帳などのテキストエディタ(講座2で紹介したEDIT.COMでも良い)を開き、Windowsがインストールされているドライブのルートディレクトリ(一番上のディレクトリ。講座1参照。DOS/V機なら通常C:\、NEC PC-9800シリーズならA:\)にあるCONFIG.SYSという名称のファイルを開く(講座2の手順で事前にCONFIG.SYSのバックアップを取っておくこと)。そして、その最後に次の1行を追加する。

DEVICE=C:\WINDOWS\COMMAND\RAMDRIVE.SYS
注:C:\の部分はWindowsがインストールされているドライブのルートディレクトリ

 そしてこの行の最後にスペースを入れ、次に挙げるパラメータを追加する。
第1パラメータRAMDISKとして確保する容量。例えばコンピュータが128MBのRAMを実装していれば、Windowsやアプリケーション等の使用を考えると、100MBくらいは残しておきたい、せいぜい2〜20MB程度の指定にしておこう(最大は32MBという報告もある)。KByte単位での指定なので、1MBをRAMDISKにしたい場合は1024と指定する。このパラメータの指定が一番パフォーマンスに影響する。何度も試してベストな設定をしてほしい。
第2パラメータ論理セクタ長。512または1024を指定する。もちろん512の方がよい。
第3パラメータファイル&ディレクトリ数(ディレクトリエントリ)。電源を切ればRAMDISKの内容は消えてしまうのでそう大したファイルやディレクトリを作ることはないだろう。2〜1024の指定をする必要があるので、256程度で良いと思う。
その他/Eを追加するとRAMDISKはXMSメモリ上に、/Aを指定するとRAMDISKはEMSメモリ上に確保される。省略するとメインメモリ上に確保されるので、大量のメモリを確保したい場合はどちらか指定しなければならない。/Eでやってみて、うまく行かなければ/Aを試してみよう。

よって20MBのRAMDISKを作りたい場合、最終的には次のように指定する。
DEVICE=C:\WINDOWS\COMMAND\RAMDRIVE.SYS 20480 512 128 /E

注:C:\の部分はWindowsがインストールされているドライブのルートディレクトリ


 これで保存してコンピュータを再起動させればRAM-DISKが出来るはずだ。うまくいっていればマイコンピュータを開いたときに新しくメモリのアイコンでms-ramdiskという名前のドライブが追加されているはずだが、他の周辺機器のドライブ名が変わってしまうことがある(例:CD-ROMドライブ名がE:\からF:\に変わる等)。アプリケーションがそれに影響すればRAM-DISKの使用は諦めるしかないが、しばらく使用して何も問題なければそのまま使い続けても良い。また、他の周辺機器が表示されない場合、次の1行をCONFIG.SYSの最初に挿入すれば良いと思う。Zのところはそのままでも良いが、ラストドライブ+1のアルファベットを入れた方がメモリを節約できる。
LASTDIRVE=Z

 続いてRAM-DISKを利用した高速化術に入る。今から紹介する高速化術はうまく行けば、動作させるソフトウェアによってはかなりの効果がある。仕組みは簡単である。超高速なRAM-DISKをテンポラリディレクトリにして、アプリケーションが作る一時ファイルのアクセスを高速化しようというものだ。また、RAM-DISKをテンポラリとして使うことはもう一つ利点がある。電源を切ると内容が消えてしまうという仕様を利用してテンポラリディレクトリを常にクリーンな状態に保てるのだ。
 先程はCONFIG.SYSを書き換えたが、今度は同じくルートディレクトリにあるAUTOEXEC.BATを書き換える。こちらのファイルの方が重要度は低い。何故なら、設定が間違っていてもMS-DOSはきちんと立ち上がるからだ。しかし、念のためバックアップを取って置いてほしい。
 まず、マイコンピュータなどを開き、先程作ったRAM-DISKのドライブ名(これは環境によってかなり異なる)を記憶しておく。そして、メモ帳などでAUTOEXEC.BATを開き、次の2行を追加する。
SET TEMP=D:\
SET TMP=D:\

注:D:には先程確かめたRAM-DISKのドライブ名を入力する。最後に\を付けるのを忘れずに!

この後、コンピュータを再起動すれば設定が有効になる。

メモリから読み出すため、プリンタの印刷速度が向上する。
また、インターネットテンポラリに割り当てれば、快適にネットサーフィンが出来る。

実際に試してみて、その効果を是非掲示板に書き込んでほしい。


HOME 戻る