問題タブ [jffs2]
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.
linux - jffs2LinuxファイルシステムでのO_DIRECTサポート
O_DIRECTを使用してファイルを開こうとしていますが、jffs2を使用しています
しかし、「無効な引数」エラーしか発生しません。私も このSOリンクの解決策を試しましたが、役に立ちませんでした。もちろん、ソースの作成にも「-D_GNU_SOURCE」を入れました。
O_DIRECTはtmpfsでサポートされていないことを読みましたが、jffs2のサポートまたは非サポートが見つかりませんでした。誰かが私にjffs2サポートおよび/またはO_DIRECTを機能させるために欠けている他の何かの証明または非証明を与えることができれば。
注:これはすべて、fread()/ read()を使用するとLinuxがメモリデータをキャッシュしているように見えるために発生しました。system("echo 3 > /proc/sys/vm/drop_caches");
そもそもFSにキャッシュメモリを割り当てたくないので、使用するには遅すぎます。
ありがとう、ナゼ
linux - JFFS2で使用されるアルゴリズム
私はJFFS2ファイルシステムの初心者です。JFFS2で使用されているガベージコレクションアルゴリズムに関するリファレンス/記事/論文を探しています。誰かが私をそれに向けてくれるといいですね。
ありがとう。
-サム
linux - Linuxの`mkfs.jffs2'ユーティリティの'eraseblock'とは何ですか?
mkfs.jffs2
ユーティリティの「消去ブロック」とは何ですか?
検索スキルが足りなかったせいか、グーグルで何も見つかりませんでした。誰か教えてもらえますか?
誰でも「消去ブロック」とは何かを説明できますか?
c# - jffs2で使用されるrtime圧縮
C#プロジェクトでは、jffs2ファイルシステムのイメージを読み取る必要があります。jffs2で使用される圧縮アルゴリズムの1つは、「rtime」です。
Linuxの相互参照ホームページにあるCコードの行を除いて、この「rtime」圧縮方法に関する情報は見つかりませんでした。
解凍がどのように機能するか、または圧縮/解凍用の.Netライブラリまたはプロジェクトの説明はどこかにありますか?
ありがとうございました
ピーター
filesystems - jffs2dump に関する問題 JFFS2 ファイル システムをリトル エンディアン ファイルに変更する
私はJFFS2ファイルシステムを持っています。これはビッグエンディアンです。
私のコンピューター: x86 Linux、リトルエンディアン。
jffs2dump を使用して JFFS2 ファイルをリトルエンディアンに変更しました。
例: (# jffs2dump -c -v -b -e B070.jffs2 B070.w)。
いくつか間違っています:
0x00b3ffd8、0x0000のwrongビットマスク0x00b3ffdc、0x00b3ffdc
で
wrong
ビット
マスク
0x00b3ffe0、0x0000│wrong
ビット
マスク0x00b3fff4の間違ったビットマスク、0x0000│wrong
ビットマスク0x00b3fff8、0x0000│wrong
ビットマスク0x00b3fffc、0x00b5ffff4、0x00b5fff4、0x00│wrongbitmag
bita
bita
it
eat
ait 00x00at00mma 0x00ba0000、0x8bf5 の
ビットマスク │0x00ba0004、0x0000 のビットマスクが間違っています
│0x00ba0008, 0x0000のビットマスクが間違っています │0x00ba000c, 0x0000
のビットマスクが間違っています │0x00ba0010, 0x0000
のビットマスクが間違っています ......
arm - NAND jffs2 ファイル システム - バイナリ ファイルとテキスト ファイルは NAND のサイズを超える可能性があります
ARM 9 v5 プロセッサに基づいて組み込みアプリケーションを作成しており、64MB NAND を使用しています。私の問題は、サイズが 3 ~ 4 MB のテキスト ファイルまたはバイナリ ファイルをコピーするとls -l
、ファイル サイズが MB 単位で表示されるのに対し、空き物理メモリが数 KB しか減らないことです。
同じプロセスを繰り返すことで、df
コマンドが10MBサイズが空いていることをdu
示し、合計サイズが239MBと表示されるポイントに到達しました。
NAND が64MBしかありませんが、最大 239MB のサイズのファイルを追加するにはどうすればよいですか?
c++ - mount() および jffs2_gcd_mtd0 ガベージ コレクタ
MontaVista Linux 3.1 を実行しているプラットフォームで作業しています。
私は C++ アプリケーションを持っていますが、難解な理由により、JFFS2 フラッシュ ファイル システムを読み取り専用と読み取り/書き込みの間で定期的に再マウントする必要があります。
int mount(...)
で指定された呼び出しを実行してsys/mount.h
、ファイル システムを読み取り/書き込みに設定すると、jffs2_gcd_mtd0
ガベージ コレクター プロセスが期待どおりに開始されます。ただし、mount
呼び出しを繰り返して読み取り専用に戻すjffs2_gcd_mtd0
と、強制終了され、無効なプロセスになります。
数分後、jffs2_gcd_mtd0
何をしても取り除くことができない、大量の機能していないプロセスができあがります。
次のテスト アプリで問題を再現できます。
機能していないプロセスを取得するためにさまざまな方法を試しました:設定signal(SIGCHLD, SIG_IGN)
(機能しません); 読み取り専用に設定した後に呼び出しwait(int)
ます (失敗し、errno が 10 になり、「子プロセスがありません」)。呼び出しkill(0, SIGCHLD)
ます (機能しません)。
mount
これは私たちが持っている実装のバグであると仮定するのは正しいですか? これがバグであることを考えると、機能していないプロセスを削除し、プロセス ID テーブルがいっぱいになるのを防ぐにはどうすればよいでしょうか?
補足情報: でテスト アプリを実行すると、この問題は発生しないようですstrace
。今、私は本当に困惑しています!
c - 大きな.pdf/.jpgファイルをjffs2ファイルシステムにアップロードすると、fwrite()が失敗します
大きな.pdf/.jpgファイルをjffs2ファイルシステムにアップロードすると、fwrite()
失敗します。
私のデバイスには1024KBのスペースがあり、500KBの.pdfファイルをアップロードしています。私のプログラムはアップロードをバイトにストリーミングし、jffs2ファイルシステムに書き込みます。に与えられた長さは、から返された長さ(つまり、書き込まれたバイト数)fwrite()
と同じではありません。fwrite()
エラー番号を-11に設定します。これは、「スペースが不足しています」と表示されます。
linux-kernel - ユーザー権限で /etc/fstab から jffs2 ファイルシステムをマウントする
rootfs は squashfs で、フラッシュ デバイスに 3 つの JFFS2 パーティションをマウントしようとしています。しかし、それらのパーティション/ディレクトリのアクセス許可を設定したいです。
要件は、/readerconfig は ID 1001 のユーザーのみがアクセスできることです。/platform は ID 1001 のユーザーのみがアクセスできます /apps は ID 1000 のユーザーのみがアクセス (読み取り、書き込み、実行) できます。
以下は私のfstabエントリです。
実装すると、uid や gid などのマウント オプションが JFFS2 ファイル システムのマウント ポイントに設定されていないことがわかりました。
これは、ターゲット ボードでのマウント コマンドの出力です。
ディレクトリ /readerconfig、/platform、および /apps ディレクトリの権限を設定するにはどうすればよいですか? JFFS2 / マウントコマンドの制限ですか?または、rcSスクリプトから実行できますか? すべての代替案が招待されます。