SSDをRAMとして使用しますか?


13

SSDディスク容量をRAMとして使用して、Raspberry Piで大容量メモリジョブを実行するにはどうすればよいですか?これは、このQ&Aに従ってLinuxで「ramdisk」を作成するのと同じですか?


4
簡単な答えは次のとおりです。それは不可能です!スワップディスクとして使用したり、一時ファイルをそこに保持したりできますが、ドライブを使用してRAMを拡張することはできません。それは不可能です。
ピョートルクラ

3
GPartedを使用してSSDをlinux-swapパーティションでフォーマットし、実行しますsudo swapon /dev/sda1(またはスワップパーティションは何でも)。RamdiskはRAMをストレージとして使用し、スワップスペースは基本的に反対です-ストレージをRAMとして使用します。
ジェームズTheAwesomeDude

回答:


8

SSDではなくSDを意味すると思いますか?SDカードにスワップパーティションを作成すると、ドライブの一種のRAMとして機能します。

SSDを意味する場合、そもそもSSDをPiに接続する本当の方法はありません。USBで接続している場合、大きな増加はありません。外付けの通常のHDDでさえ、フルスピードで実行できません。


7

これは不可能です。

Raspberry Piのメモリはボード上に固定されており、拡張または交換するためのインターフェイスはありません。

混乱は、SSD(ソリッドステートディスク)がデータを保存するためにメモリチップを使用しているという事実に起因すると思います。しかし、それは類似点が終わるところです。SSDのメモリチップは、通常のRAMとは大きく異なります。一方を他方に置き換えることはできません。

SSDにはSATAディスクインターフェイスがあります。RAMにはメモリバスインターフェイスがあります。それらは非常に異なるので、私が提供できる最高の類推は、ガス調理オーブンを電子レンジと比較するようなものです。

以下の情報を簡素化しようとしたので、これをより深く理解して読んでいる人にとっては、これは非常に高いレベルの要約にすぎないことに留意してください。

SSDチップはフラッシュメモリであり、USBサムディスクと同様の不揮発性ストレージ機能を備えています。これは、電力がなくてもデータを保持できることを意味します。また、彼らは彼らと話すために特別なコントローラーチップが必要です。このチップはSATAディスクインターフェイスに接続され、SATAプロトコルに従います。私の類推では、SSDはガス調理オーブンであり、SATAバスは家へのガス供給です。

典型的なRAMチップはDRAM、つまりダイナミックRAM(DDR SDRAMなどとも呼ばれます)として知られています。データを非常に短時間保存するため、保存されたデータを更新するには、データをオフラインにする(これらのチップを他の回路から切断する)必要があります。これは毎秒数百または数千回発生し、ユーザーには透過的です。電源が切れると、この更新は停止し、データは永久に失われます。ダイナミックRAMチップは、フラッシュメモリチップとはまったく異なるプロトコルに従い、ダイナミックメモリコントローラーに接続します。ダイナミックメモリーコントローラーは、非常に高速なメモリバスに接続します。このメモリバスは、CPUチップの中心部に直接入ります。私の類推では、ダイナミックRAMは電子レンジであり、高速メモリバスは主電源です。

Rapsberry Pi CPUにはRAM用の特別な接続があり、Dynamic RAM以外は接続できません。SATA接続とUSB接続は別々に保持されます。

そのため、両者は同じ仕事をしますが(SSDとRAMはコードとデータを保存し、ガス炊飯器と電子レンジは食べ物を調理し、食事を温めます)、この仕事はまったく異なる非互換の方法で行います。一方を他方に置き換えることはできません。

最後に、RAMディスクは、使用可能なRAMの一部が実際にストレージディスクであると見せかけるオペレーティングシステムのトリックです。これにより、lenikが返信で非常に正確に指摘しているように、使用可能なRAMが減少します。


1
Windows(Ready Boost)でフラッシュドライブを追加のRAMとして使用できるようになった場合、どうなりますか?または、パフォーマンスに期待される違いをもたらさないSWAPを追加しようとするようなものですか?
-rhymsy

Windows上のReadyBoostはRAMとして機能しません。Wikipedia:en.wikipedia.org/wiki/ReadyBoostを参照してください。要約すると、ReadyBoostは、低速のディスクを高速化するディスクキャッシュソリューションです。通常、これには、データアクセス時間を短縮するために、回転ディスクからフラッシュドライブにデータをコピーすることが含まれます。
ヴァシリスパパニコラオ

3

Raspberry Piにスワップを追加する

スワップファイルまたはスワップパーティションを使用できます。スワップパーティションを使用する場合は、重要なデータを台無しにしたくないので、必ず注意深く読んでください。

スワップファイルの作成

  • dd if=/dev/zero of=/SWAPFILE bs=1024 count=524288
    • これにより、512MBの空のファイルが作成されます。
    • count =を希望のサイズに変更します。
  • chown root:root /SWAPFILE
  • chmod 0600 /SWAPFILE
  • mkswap /SWAPFILE
  • swapon /SWAPFILE

スワップパーティションを作成する

  • dd if=/dev/zero of=/dev/sdXN bs=1024
    • これにより、/ dev / sdXNのパーティション全体が満たされます。
  • mkswap /dev/sdXN
  • swapon /dev/sdXN

起動時に持続(/ etc / fstabに追加)

  • vim /etc/fstab
  • いずれかを追加します:
    • / SWAPFILEスワップスワップデフォルト0 0
    • / dev / sdXNスワップスワップデフォルト0 0

アクティブかどうかをテストする

  • free -m

1
SSDは高速であり、スワップスペースには適している可能性がありますが、データを書き込むことができる回数は限られていることに注意してください。
earthmeLon

USB2インターフェースを介してスロットルされることを忘れないでください。SSDはネイティブ速度の10%未満になります。私はあなたが偶然フラッシュを着用することを心配する必要はないと思う。
ジョンラルーイ

1

RAMディスクは、あなたがやりたいこととはまったく逆です。余分な速度が必要で、メモリを気にしない場合、RAMにディスクを作成します。

SSDをRAMとして使用しています...わからない、SSDにスワップパーティションを作成し、そこにスワップさせます。

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