2016-04-19 11 views
0

RAMDiskをコーディングしようとしていますが、RAMにドライブをマウントする方法がわかりません。私はこれをJavaで書くつもりです。しかし、誰も私がRAMに文字と名前でディスクを作る方法を指摘することができます。ドライブをRAMにJavaでマウントする方法

ありがとうございます!

EDIT:明確にするために、RAMに格納された仮想ファイルを使用してファイルを作成します。 DataRamのRamdiskは私がしたいことの良い例です。ファイルを作成し、ドライブをマウントします。ドライブはRAMにあり、ファイルに書き込みます。どうすればこれを達成できますか? (私は自分のプロジェクト用のRAMDiskを拡張アイデアで作成したい)

+2

これは非常に不明です。あなたはJavaでRAMディスクファイルシステムをコーディングしようとしていますが、何とかそれをWindowsに結び付けて、Windowsにドライブレターを割り当てますか?純粋なJavaでは、Windowsカーネルからの呼び出しを受け取ることができるWindowsファイルシステム・プロバイダ・インタフェースを抱いているので、これは確かに不可能です。 –

+0

多くの空きRAMディスクの1つを使用してみませんか?どのようにあなたのものが良いでしょうか?注:Unixでは、それは1つが組み込まれています。 –

答えて

1

RAMDisk(他の仮想デバイスと同様)では、デバイスドライバを使用する必要があります。幸いなことに、デバイスドライバはJavaやC#で書かれていません(特にXamarinはモバイルOS用で、仮想ディスクをまったく使用できません)。ビジネスロジックにはJavaを使用できますが、プロジェクトの一部はアンマネージ言語で記述する必要があり、プロジェクト自体にはデバイスドライバが含まれている必要があります。オペレーティングシステムごとにデバイスドライバが異なることは言うまでもありません。

仮想ディスクは、特定のファイルシステムにフォーマットされ、ブロックレベルの要求を処理するイメージと、ファイルシステム要求を処理してファイルシステムを独自に実装するイメージの2種類があります。

私たちはどちらの場合もCallbackDiskとCallback File Systemの両方の製品を用意しています。どちらも仮想ディスクを作成するためのサンプルがありますが、コールバックファイルシステムにはJava APIが含まれています。どちらの製品もWindows用です。

Linuxには様々なファイルシステムを実装するためのFUSEが存在し、OSXにはFUSEのポートであるOSXFUSEが存在します。

関連する問題