问题标签 [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.

0 投票
1 回答
916 浏览

linux - jffs2 Linux 文件系统上的 O_DIRECT 支持

我试图使用 O_DIRECT 打开一个文件,我们正在使用 jffs2

但我只得到一个“无效参数”错误。我也尝试了 此 SO 链接中的解决方案,但无济于事。当然,我在构建源代码时也加入了“-D_GNU_SOURCE”。

我读过 tmpfs 不支持 O_DIRECT,但找不到对 jffs2 的支持或不支持。如果有人可以给我证明或不证明 jffs2 支持和/或我缺少使 O_DIRECT 工作的任何其他东西。

注意:这一切都是因为当我使用 fread()/read() 时,Linux 似乎会自行缓存内存数据。并且使用system("echo 3 > /proc/sys/vm/drop_caches");为时已晚,因为我不希望 FS 首先分配缓存。

谢谢,纳兹

0 投票
1 回答
229 浏览

linux - JFFS2 中使用的算法

我是 JFFS2 文件系统的新手。我正在寻找有关 JFFS2 中使用的垃圾收集算法的参考/文章/论文。如果有人引导我这样做,那就太好了。

谢谢。

-山姆

0 投票
1 回答
3548 浏览

linux - Linux 中“mkfs.jffs2”实用程序中的“擦除块”是什么?

mkfs.jffs2实用程序中的“擦除块”是什么?

我通过谷歌搜索找不到任何东西,可能是因为我的搜索能力不足。谁能告诉我它是什么?

任何人都可以描述什么是“擦除块”吗?

0 投票
2 回答
392 浏览

c# - jffs2 中使用的 rtime 压缩

在 C# 项目中,我必须读取 jffs2 文件系统的图像。jffs2 中使用的压缩算法之一是“rtime”。

除了 linux 交叉引用主页上的一些 C 代码行外,我没有找到任何关于这种“rtime”压缩方法的信息。

是否有描述解压缩如何工作的描述,或者更好的.Net库或压缩/解压缩项目?

谢谢

彼得

0 投票
1 回答
1710 浏览

filesystems - jffs2dump 出了点问题,将 JFFS2 文件系统更改为 little-endian 文件

我有一个 JFFS2 文件系统,它是一个大端。

我的电脑:x86 Linux,小端。

我使用 jffs2dump 将我的 JFFS2 文件更改为 little-endian。

例如:(#jffs2dump -c -v -b -e B070.jffs2 B070.w)。

有一些错误出来:

0x00b3ffd8的wrong bitmask,0x0000│wrong
bitmask at 0x00b3ffdc,
0x0000│wrong bitmask at 0x00b3ffe0,0x0000 wrong bitmask at 0x00b3ffe4,0x00000000bask at 0x0000bask at 0x00bbask
at 0x00b3ffe8,0x00b3ffe8,0x00bask 3ffe8,bask 3ffe8,bask
3ffe8,bask 3ffe8, bask 3ffe8

bask 3ffe8,
在0x00b3fff4,0x0000│wrong
bitmask at 0x00b3fff8,0x0000│wrong
bitmask at 0x00b3fffc,0x0000│wrong
bitmask at 0x00b5ff4 at 0x00b5ff4,0x0000 x0000bask 0x0000bask
at 0x00b5fff8,0x00fff8,0x00fffmfffm throng ats 0x00fffmfffmfffmfffm throng and 0x00ffmfffmfffm and 0x00ffmfffmfffmfffm throng
and 0x00ffmfffmfffm
throng and 0x00ffmfffmfffm
throng 。 0x00ba0000, 0x8bf5
处的位掩码│0x00ba0004, 0x0000 处的位掩码错误
│0x00ba0008,0x0000 位掩码错误│0x00ba000c,0x0000
位掩码错误
│0x00ba0010,0x0000 位掩码错误 ......

0 投票
1 回答
255 浏览

arm - NAND jffs2 文件系统 - 二进制和文本文件可以超过 NAND 的大小

我正在编写一个基于 ARM 9 v5 处理器的嵌入式应用程序,并且正在使用 64MB NAND。我的问题是,当我复制大小为 3-4 MB 的文本或二进制文件时,可用物理内存仅减少了几 KB,而ls -l以 MB 为单位显示文件大小。

通过重复相同的过程,我达到了一个点,df命令显示10MB大小是免费的,并且du总大小显示为239MB

我只有64MB的 NAND,如何添加最大 239MB 的文件?

0 投票
1 回答
1065 浏览

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. 现在我真的被难住了!

0 投票
1 回答
1047 浏览

linux - 如何通过文件名获取 NAND 中的真实文件偏移量?

使用 linux,我可以使用对 NAND 的原始访问或通过文件系统访问文件。那么,当我需要知道我的文件在 NAND 中的真正位置时,我应该怎么做?我找不到任何提供此功能的实用程序。此外,我无法检测到任何这种可能性,除了用大量“printk”破解内核(我猜这不是好方法)。有人可以启发我吗?(我正在使用 YAFFS2 和 JFFS2 文件系统)

0 投票
1 回答
163 浏览

c - 将大的 .pdf/.jpg 文件上传到 jffs2 文件系统时,fwrite() 失败

将大的 .pdf/.jpg 文件上传到 jffs2 文件系统时,fwrite()失败。

我的设备有 1024KB 空间,我正在上传 500KB 的 .pdf 文件。我的程序将上传流式传输到字节并写入 jffs2 文件系统。给定fwrite()的长度与返回的长度不同fwrite()(即写入的字节数)。它将错误号设置为 -11,表示“空间不足”

0 投票
1 回答
3260 浏览

linux-kernel - 使用用户权限从 /etc/fstab 挂载 jffs2 文件系统

我的 rootfs 是 squashfs,我试图在我的闪存设备上挂载三个 JFFS2 分区。但我想为这些分区/目录设置权限。

要求是 /readerconfig 只能由 id 1001 的用户访问。 /platform 只能由 id 1001 的用户访问 /apps 只能由 id 1000 的用户访问(读取、写入和执行)。

下面是我的 fstab 条目。

实施后,我发现没有为 JFFS2 文件系统挂载点设置 uid 和 gid 等挂载选项。

这是目标板上 mount 命令的输出。

如何设置目录 /readerconfig、/platform 和 /apps 目录的权限?是 JFFS2 / mount 命令的限制吗?或者我可以从 rcS 脚本中做到这一点?邀请所有替代方案。