今日RAMdiskを使用するのはなぜですか?


23

この質問を読んだ後、私は考え始めました:

「ねえ、昔のDOS時代に実行していたRAMディスクユーティリティはどうなったの?」

今日まで何年もRAMディスクについて聞いたことがありませんが、なぜですか?メモリはまだディスクよりも高速であり、両方があります。

なぜ今日RAMディスクはもっと使用されないのですか?


1
Amiga OSは引き続きデフォルトでRAMディスクを使用します。
grawity

回答:


32

今日RAMdiskを使用する理由:32ビットRAMの制限に対処する

現在、いくつかの作業ソフトウェアとの互換性の問題により、32ビットオペレーティングシステムを実行する必要があります。私のコンピューターはWindows XP Professionalが見ることができるよりもはるかに多くのRAMを持っているので、3GBの物理メモリーで立ち往生しています。

3GBの壁にぶつかると、コンピューターはページファイルを使用するために移動します。幸いなことに、32ビット環境では、オペレーティングシステムがアクセスできないRAMからRAMdiskを作成できるソフトウェアが存在します!

SuperSpeedには、これを可能にするRamDiskと呼ばれるプログラムがあります。別のオプションとして、Vsuite Ramdiskソフトウェアがあります(どちらもわずかに異なります。どちらがニーズを満たすかは、機能リストを参照してください)。

私は特にソフトウェアを宣伝しているわけではありませんが、32ビットオペレーティングシステムのアドレス可能な範囲外のRAMの一部を利用できるようになったいくつかのソフトウェアを紹介しました。

OSがRAMに直接アクセスするのとほぼ同じではありませんが、RAMベースのページファイルを使用する方が、ハードドライブベースのページファイルよりもはるかに優れています。

Scratchfiles-もう1つの理由(64ビットにも適用)


RAMdiskを使用できるもう1つの理由は、写真/ビデオの編集(Adobe Creative Suiteなど)のためです。ほとんどのアドビのプログラムは、一時保存用に「スクラッチファイル」を使用できます(ページファイルに似ています)。

スクラッチファイルをRAMdiskに配置すると、特にオペレーティングシステムのRAM制限(またはプログラムで定義された最大値)に近づいている場合に、ビデオ/写真の編集速度が向上します。

2010年1月2012 9月編集:


私は最近このウェブサイトに出会いました(パッチは削除されましたが、こちらのウェブサイトにミラーリングしています)。これにより、Windows 7カーネルにパッチを適用して、オペレーティングシステムのPAEが4GBバリアを拡張できるようにします(この記事を参照)パッチの背後にある実際のメカニズムの詳細については、前のリンクをご覧ください)。これにより、Windows 7 32ビットで4GB(最大8GB)以上のRAMを完全に使用できます。


8

memディスクがあまり一般的ではない理由の1つは、メモリをディスクキャッシュとして使用する方が良いという根本的な理由の1つです。

メモリをキャッシュとして使用するだけで、通常の操作でRAMディスクのパフォーマンスの利点のほとんど/すべてを既に得ることができます。ディスクの書き込みは、十分なキャッシュがあれば、レイテンシがそれほど大きくないバックグラウンドで発生する可能性があります。

特殊な状況(書き込み可能なディスクなし)でRAMディスクを使用する場合があります。


1
もう1つの「特殊な」ケースは、待ち時間重要な場合です。言い換えれば、単に平均読み取り時間を短縮するだけでなく、すべての高速時間を必要とする場合、特に初めての場合です。多くの場合、コンテンツ配信ネットワークのキャッシングがWebサーバーとエンドユーザーの間にあるため、Webサーバーのことを考えています。RAMdiskを見るもう1つの方法は、特定のものが事前にロードされているキャッシュのようなものです(ほとんどのキャッシュのように空で学習していくのとは対照的です)
MarkHu

もう1つは、大量のI / Oがあるが、揮発性を許容できる場合です。キャッシュの通常の操作では、定期的にデータがフラッシュされます(そうしないとディスクに書き込まれないため、保存されたファイルは保存されません)。一時ファイルによる大量のI / Oでバックグラウンドで飽和する可能性があります。
マチェイピエチョトカ

5
  1. OSはRAMの使用に優れています-アプリケーションはRAMにロードされ、よりインテリジェントにスワップインおよびスワップアウトされます。
  2. RAMディスクは揮発性です。RAMのデータは電力なしで消えるため、それらに頼ることはできません。
  3. 32ビットアーキテクチャは4GB未満のRAMのみをアドレス指定できます-その貴重なRAMをRAMディスクとして無駄にしたくないのです。
  4. RAMはまだかなり高価ですが、とにかく

2
32ビットアーキテクチャがアドレス指定できるのは4GBのRAMだけです。参照してくださいen.wikipedia.org/wiki/Physical_Address_Extension
ChrisInEdmonton

1
ただし、その技術はほとんどのホームユーザーには利用できません。
リッチブラッドショー

1
多くの場合、アプリは多くの小さなファイルを書き込むので、再起動する必要はありません。これらのRAMDISKSは素晴らしいです!!
イアンリングローズ

1
@Rich Bradshaw-ポイント3は真実ではありません(ChrisInEdmontonが指摘したように)。「32ビットアーキテクチャ」を「一部の32ビットオペレーティングシステム」に変更することをお勧めします。私は、この神話が1つのOSが機能しなくなったという理由だけで持続するのは面倒です。
ブレンダンロング

3

Linuxには、tmpfsというファイルシステムがあります。これは基本的にRAMディスクです。

その名前が示すように、には頻繁に使用され/tmpます。なぜなら、そのフォルダーには再起動時に持続する必要のないファイルしか含まれていないからです。

ライブCDは、ハードドライブ全体にRAMディスクを使用します。


2

実際にそうです。今日では、DRAMベースのSSDもあります。

はい、それは現代のHDDが高速であることは事実です。しかし、他のシステムコンポーネントの進歩と比較すると、はるか遅いです。回転速度が制限されているため、シーク時間をなくすことはできません。

そのため、多くの目的で、RAMベースのドライブを使用するとパフォーマンスが大幅に向上します。RAMドライブではなく、通常のHDDに大規模なソフトウェアプロジェクトを構築しようとしたことがありますか?

また、Linuxなどの最新のシステムカーネルは、ブロックストレージキャッシングに使用可能な(未使用の)RAMをすべて使用していることに注意してください。


うーん...私はこれがOPが念頭に置いていたとは思わない。OPは8086-80486時代のRAMdisksを指します。RAMは非常に高価であり、フロッピーディスク、ハードディスクなどの不揮発性メモリデバイスがシステムメモリを増強するために使用されていました。彼は、典型的な不揮発性ストレージデバイスの代わりにDRAMメディアを使用するつもりはなかったと思います。
J.ポルファー

1
待って...気にしない...投稿を読み間違えた。
J.ポルファー

SSDの大きな問題は、まだ低速なI / Oインターフェイス(ソフトウェアRAMディスクではない)にバインドされていることです。
ブライアン・ノブラウフ

2

これらは、障害のあるオペレーティングシステムの欠陥を補うために大部分が松葉杖であり、フルサービスOSはそれらを必要としません。

つまり、ほとんどの場合、OSキャッシングメカニズムがパフォーマンスを向上させます。

同じことを行います(高速アクセスのために「ディスク」常駐データをRAMに貼り付けます)が、高速化する必要があるものを正確に選択するためのヒューリスティックとジャストインタイム最適化の山があります。OSよりもよく知ることができる特別な場合がありますが、ほとんどの場合は十分に離れておく必要があります。


2

非常に古い投稿ですが、今日でも適切です(2019年頃)。

OPはDOSの比較について尋ねました。ほとんどの人にアーカイブの検索を提供します。

当時、私たちは640KbのRAMでいっぱいの世界にいましたが、追加の384kの拡張メモリをアクティブにすることができました。ソフトウェアを使用すると、この384kを拡張メモリ(Lotus-Intel-Microsoftが作成した形式)に交換でき、互換性のあるアプリがこの貴重な384kをアプリケーションに利用できるようになります。これらのアプリは通常、スプレッドシートアプリ(Lotus 1-2-3、およびMicrosoftの新しいExcelスプレッドシートアプリ)でした。16ビットCPUで、LIM互換ハードウェアの場合、最大2〜4MBのアドレス可能メモリを備えたAbove Board(DRAM CHIPSでスタックしたRAM BOARD)を実行できるRAMボードがありました)。

今日の世界では、32GBはほとんどのユーザーにとって過剰な場合がありますが、一部のOEM(Original Equipment Manufacturers)は32GBの標準モデルを提供しています。それであなたはそれで何ができますか?メモリの一部(4gb〜8gb)からRAMDriveを作成して、一時ファイルアプリとOSが作成し、再起動時に自動フラッシュされるようにすることで、OSを滑らかにすることができます。インターネットブラウザーに対してもこれを行うことができます(ChromeはX:\Ramdrive\Cache、新しいパラメーターと単一のレジストリ編集を使用してショートカットを作成することにより、いくつかの小さな調整でこのパスを使用するように構成できます)。

その価値はありますか?

RAMDrivesの多くは現在無料であり、SET TEMP、SET TMP環境変数を自動構成します。RAMDriveの新しいドライブ文字を挿入するだけで、これらの一貫性のないシステムエラー、小さなクラッシュ、スローダウンの一部がなくなります。

覚えておいて、多くのアプリとアップデートは、私たちが望むように正確に明確にされていないことを覚えておいてください。

そして、ゲーマーのためにあなたが作成することができ.BAT、あなたのゲームのコピーすべての内容のファイルをし、ファイルを保存する(とフォルダとサブフォルダの形式に保つ/SとパラメータをXCOPY。余分に作成することを確認しますSAVE.BAT戻ったときにハードドライブにすべてのデータを保存しますそうしないと、何も保存されないリスクがあります。


2

2GBのRAMディスクを使用してVMware仮想オペレーティングシステム(すべてXP)を保存し、syartup / shutdownで自動的に保存および再ロードしました。次に、VMware PlayでRAMディスクから実行しました。これにより、仮想オペレーティングシステムのRAMディスクの速度が、システムファイル(一部のみではなくすべて)を含むすべてのI / Oを含むようになり、想像できるように、パフォーマンスは驚異的でした!

それ以外に、Zip / RARファイルの抽出はDVDエンコーディングと同様にはるかに高速になります。


0

なぜなら:

  1. コンピューターのスペックは大幅に改善されましたが、ソフトウェアは非常に膨らみ、より多くのメモリを必要とします。小さいメモリディスクはこれ以上役に立ちません。
  2. メモリディスクは、一時ファイルを保持するという1つの目的にのみ適しています。一時ファイルをジャグリングするのに時間を費やすプログラムは多くありません。一時ファイルを実行すると、これらのファイルは非常に大きくなる傾向があります。

0

今日RAMdiskを使用するのはなぜですか?

これは、RAMが安価であり、RAMディスクが従来のプラッタハードディスクドライブよりも1マイル(または300倍以上)速いためです。

注:RAMディスクは、すべてのシナリオに適したソリューションではない場合がありますが、適用可能な場合、人に知られているディスクドライブに勝ります。


0

ソフトウェアの肥大化と大容量記憶装置の成長がRAMをはるかに上回っているため、これらはもはや使用されていないと言わざるを得ません。以前は、マシンはストレージよりも多くのRAMを使用できました(たとえば、640K RAMと360Kディスクドライブを搭載した古いXT)。これにより、384KのRAMディスクを作成し、その上にアプリをコピーして実行するのは簡単です(今日のほとんどのアプリには256KのRAMが残っています)。最近1TBのドライブを搭載しているが、RAMは1GBのみのシステムとは対照的です...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.