SSDディスク容量をRAMとして使用して、Raspberry Piで大容量メモリジョブを実行するにはどうすればよいですか?これは、このQ&Aに従ってLinuxで「ramdisk」を作成するのと同じですか?
linux-swap
パーティションでフォーマットし、実行しますsudo swapon /dev/sda1
(またはスワップパーティションは何でも)。RamdiskはRAMをストレージとして使用し、スワップスペースは基本的に反対です-ストレージをRAMとして使用します。
SSDディスク容量をRAMとして使用して、Raspberry Piで大容量メモリジョブを実行するにはどうすればよいですか?これは、このQ&Aに従ってLinuxで「ramdisk」を作成するのと同じですか?
linux-swap
パーティションでフォーマットし、実行しますsudo swapon /dev/sda1
(またはスワップパーティションは何でも)。RamdiskはRAMをストレージとして使用し、スワップスペースは基本的に反対です-ストレージをRAMとして使用します。
回答:
SSDではなくSDを意味すると思いますか?SDカードにスワップパーティションを作成すると、ドライブの一種のRAMとして機能します。
SSDを意味する場合、そもそもSSDをPiに接続する本当の方法はありません。USBで接続している場合、大きな増加はありません。外付けの通常のHDDでさえ、フルスピードで実行できません。
これは不可能です。
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が減少します。
スワップファイルまたはスワップパーティションを使用できます。スワップパーティションを使用する場合は、重要なデータを台無しにしたくないので、必ず注意深く読んでください。
dd if=/dev/zero of=/SWAPFILE bs=1024 count=524288
chown root:root /SWAPFILE
chmod 0600 /SWAPFILE
mkswap /SWAPFILE
swapon /SWAPFILE
dd if=/dev/zero of=/dev/sdXN bs=1024
mkswap /dev/sdXN
swapon /dev/sdXN
vim /etc/fstab
free -m