問題タブ [ramdisk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2269 参照

linux - RAM ディスクを rootfs として起動すると、init プロセスが見つからない

AT91SAM9261 と 2.6.30 カーネルを使用したセットアップ用の RAM ディスクをセットアップしようとしています。なぜinitramfsを使わないのですか?私もそれを使用します。今のところ、rootfsとしてRAMディスクで起動できるかどうかを確認したいと思います。

このシステムでは、ルート fs が jffs2 形式で正常に動作しています。以下のチュートリアルを使用しました:

http://www.ibm.com/developerworks/library/l-initrd/

そこで、埋め込みターゲットに 4MB のサイズで RAM ディスクを直接作成しました。「dd」と「mkefs」を使用しましたが、rootfs が jffs2 の場合にループとしてマウントすると、RAM ディスク イメージは正常に動作します。mount_point をブラウズして内部で何かをすることができます。内容は上記リンク先の「初期RAMディスクの手動構築」を参考に作成しました。

/dev に null とコンソールを配置し、/bin に busybox をコピーしてリンクを作成しました。実行属性を init スクリプトにも設定しました。これは、ここで実行すると正常に動作します (jffs2 を rootfs として使用するループ デバイスとして)。

私のカーネル構成では、次のように RAM ディスクのサポートを有効にしました。

tftp を使用して、RAM ディスク イメージを 0x21100000 にダウンロードします。0x20008000 でカーネルを圧縮解除し、0x22000000 で zImage をコピーしました。

ただし、init プロセスのチェック中にハングするため、システムを正常に起動できません。前述したように、init が実行できることを何度か確認しましたが、

また、bootargs init=/bin/busybox または他のスクリプト/バイナリで使用して、init として使用できるものがあるかどうかを確認しました。

私が今使っているコマンドライン:

bootargs=64M console=ttyS0,115200 root=/dev/ram0 rw initrd=0x21100000,4194304 init=/init

違いがあるかどうかを確認するためだけに、所有権を「nobody」に設定する人もいます。ログ出力でわかるように、ramdisk はマウントされていますが、init は失敗しています。コピーする前に行ったext2イメージを確認するよう警告が表示され、エラーは報告されていません。

TFTP サーバーは Windows7 上にあります。RAM ディスク イメージを Linux から Windows にコピーし、Windows サーバーから tftp を実行すると、互換性がなくなる可能性があります。そのため、イメージを Windows から Linux に再度コピーしてマウントし、FS がエラーを報告してスクリプトを実行できるかどうかを確認しました。すべて正常に見えます。

したがって、すべてのファイルが配置され、属性が設定されています。ramdisk は rootfs として正常にマウントされていると報告されていますが、init が見つかりません。

busybox を再構築して再試行する予定ですが、ループとしてマウントすると現在の RAM ディスク イメージが機能するため、何かが変わるとはあまり確信が持てません。私はアイデアがありません。私はこれを機能させるために一日中努力してきました。

助けていただければ幸いです。

ありがとう。

0 投票する
1 に答える
227 参照

c# - C# code has issues with RamDisk path length

I've copied a file over to a RAM Disk, but I get an error message that doesn't make sense as the path is actually shorter than on the physical disk and is certainly less than 260 characters. Any suggestions how to get around this issue. Changing the code is not an option.

I'm using ImDisk to create the RAM Disk. My RamDisk is defined as Z:

#xA;

here is what I have tried:

  • Manually shortening the path - i.e. havingthe shortest parent - i.e. just use the drive.
  • I've been looking at using mklink to build out some links using \J \D options. But still doesn't work - using both: Physical -> RamDisk and RamDisk -> RamDisk.

  • Substr, for mapping the RamDisk path to a letter. This makes no difference.

  • \?\, I tried this - but I get issues with the program as I think it checks for not standard paths and I cannot modify the source code.

  • I've tried a combination of using \?\ with mklink, so I create a link which makes to \?\z:

0 投票する
2 に答える
3947 参照

gradle - Gradle - RAMdisk を利用する

コンパイル結果にRAMdiskを使用するというアイデアに出くわしました1

Gradle で RAMdisk を使用するには?

フォルダを RAMdisk に移動する価値があると思い.gradleます。build

0 投票する
1 に答える
29 参照

macos - ファイルはディスク上でより多くのスペースを占有します

を使用してファイルの詳細を表示するとFinder、ファイルが占有する容量についてさまざまな値が表示されます。たとえば、ファイルは 28.8KB の RAM を占有しますが、33KB のディスクを占有します。説明わかる人いますか?

0 投票する
2 に答える
325 参照

c - 'a' を生成するように MINIX で /dev/zero を変更します。

プロジェクトでは、ゼロドライバーを変更して、通常のゼロではなく無限の「a」を生成する必要があります。だから私は /usr/src/drivers/memory/memory.c を修正しました

これはオリジナルでした:

これは私の変更です:

だから私は保存して閉じてmemory.cを再コンパイルしますが、私が言ったときに変更はありませんcat /dev/zero。/dev/zero を削除mknod /dev/zero c 1 5して、新しいものを作成するために使用することさえ試みました。しかし、まだ変更はありません。再起動も試しました。

間違ったファイルを変更していますか、それとも正しいファイルをコンパイルしていませんか?

0 投票する
1 に答える
601 参照

minix - MINIX でカスタム RAM ディスクを作成する

そのため、MINIX で RAM ディスクを作成する必要があるプロジェクトを行っています。質問は次のとおりです。

あなたの仕事は、高速アクセスが必要なデータを保存する場所として使用できる独自の RAM ディスクを実装することです。すべてのユーザーに読み取りと書き込みのアクセス許可が必要で、サイズは 10 MB である必要があります。

私は MINIX のこのトピックに関する情報を見つけるのに苦労しているので、Linux ディストリビューション用の他の多くのチュートリアルに取り組もうとしています。

このチュートリアルを使用して、MINIX で次のことを行いました。

次にmkfs -b 10240 -i 2000 -B 1024 /dev/ram0、エラーが発生します。

mkfs: /dev/ram0: デバイスに対して大きすぎるブロック数。

-bこれは、パラメーター 1を作成しても発生します。入力mkfs /dev/ram0すると、次のようなエラーが表示されます。

mkfs: このデバイスはファイルシステムを保持できません。

チュートリアルでは、作成者が grub.conf で ramdisk のサイズを 16GB に増やしているのを見ることができますが、そのファイルは /etc にありません。

このようなタスクで一般的にMINIXに関する情報を見つけるのに苦労しているので、どんな助けでも感謝します。