问题标签 [fat]
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.
filesystems - 文件分配表 (FAT) - 如何允许随机访问?
当涉及到使用 FAT 的文件系统时,这里有一个关于随机访问的直截了当的问题。
我已经看到了对 FAT 的不同解释,不同种类的图片/动画显示了不同的东西。我不明白如果不通过文件一次,随机访问是如何可能的。我想到了某种表格,列出了属于某个文件的所有块,但看起来 FAT 只是映射到下一个块,这意味着你仍然必须通过 FAT 直到找到 End-Of-文件,然后将这些索引保存在一个数组中,只有这样你才能执行随机访问。
我的问题是我上面写的是否属实。是否只有在首先查看表格以找到所有块之后才能进行整个随机访问?
java - Android上的IO慢?
这应该显示内部和外部内存速度,但不幸的是它说它是 0.02 或 0.04 MB/s?这是 Android 的一个巨大的低效率,还是编码错误?
android - 对 fuse/fat 文件系统执行权限
'已经成功交叉编译了 ruby for android 并且在模拟器中一切正常。
但是当我在我的设备(Nexus4)上测试这些有趣的东西时,我注意到 /sdcard (或 /storage/emulated/0 )是一个没有执行权限的保险丝安装。
如何在 sdcard 上执行某些操作?
我看到在 linux 上你可以将它作为参数传递给链接器,在 android 中这不起作用,/system/bin/linker 想要一个指向特殊结构的指针,我相信我可以编写一个小的 c 程序来创建该结构并运行链接器以执行可读程序。
但是共享库呢?ruby 加载数十个共享库(每次你有一个require
),我敢打赌加载共享库需要执行权限。
将可执行文件移动到/data/data/my.app.name/files/
或任何其他地方都不是解决方案,我的二进制文件非常胖(静态链接),用户应该可以自由指定存储它们的任何位置。
提前感谢您的帮助。
operating-system - OS开发:实现FAT12写入功能
所以我在操作系统开发方面很新,现在我正在编写我的 FAT12 文件系统代码。我使用 FDC 代码完成了对软盘的所有写入,但我似乎无法理解在将文件写入磁盘时应该如何进行。
我知道我的根目录在哪里以及所有相关信息,但是我应该如何寻找正确的扇区来写入我的文件?在那之后,我应该如何将该条目添加到 FAT 中?
这是我用来遍历根目录并找到文件的代码:
我打算写一些类似的东西并遍历根目录,逐个条目,直到找到一个位置。至于添加/遍历 FAT,我知道每个条目代表一个集群(条目 1 = 集群 1)。但我不知道我是否应该通过 FAT 而不是根目录或两者兼而有之。
我的大部分代码都基于本教程:http ://www.brokenthorn.com/Resources/OSDev22.html但他从未添加过创建/写入文件位,所以我自己做。
任何帮助表示赞赏。
raspberry-pi - SD 卡写入限制 - 数据记录
我想在我的系统(Raspberry Pi)关闭时进行跟踪/注册,通常是由于突然断电。
我想通过每 10 分钟将心跳记录到 SD 卡来做到这一点 - 所以每 10 分钟它会去 SD 并将当前时间/日期写入文件中。从长远来看,这会损害 SD 吗?
如果它只有 10 万个写入周期,那么它会在几年内出现坏块。但我读过有电路可以防止它 - 它会防止坏块吗?将日志分布在几个块中会更安全吗?
谢谢
c - 如何避免因大量写入而损坏 SD 卡?
好的,首先有一点背景可以帮助我弄清楚我的问题:
我正在开发一种设备,该设备从传感器收集某些数据并使用 GSM 调制解调器将它们发布到服务器。由于 GSM 连接不是 100% 可靠的,它会包含一个日志机制,可以将未发送的数据写入 SD 卡。
我们正在使用Chan 的 FatFs模块为我们提供文件系统,因为我们希望日志在 PC 上可读。
现在我一直在测试 FAT 系统的边界条件,即试图完全填满卡。
在第一次运行中,我打开了文件并将代码设置为继续写入字符串,直到驱动器已满。该程序将在每次写入后同步。
我让代码在一夜之间运行。
第二天,我检查了 SD 卡。我发现该文件只有 150 MB 大小。大约有 120 万行写入其中。该卡仍然可以读取,但不能写入或格式化。
下次我尝试了相同类型的测试,但这次我使用了f_lseek()
函数将文件预分配到 1GB。然后它将写入该文件,直到达到该限制。这次数据将在 50 次写入后同步。然后它将关闭该文件并打开另一个文件以执行相同的操作。
正如您可以猜到的那样,另一张勇敢的小卡片在那天丢失了它。
所以这些是我想要帮助的:
- 写入大量数据时如何防止卡损坏?
- 长时间打开文件是否有任何负面影响?
由于完整的代码可能太长,这里是写作的主要部分
笔记 :
- ax_log_msg() 是要在控制台上打印的设备固件的一部分。
- FRESULT_S[result] 用于将枚举结果代码转换为字符串。
如果有任何数据丢失,请务必提及。
谢谢你
c - fatfs:在 f_stat 之后创建目录
Fatfs为R0.08b 。我所做的是检测目录是否存在。我f_stat
用来检查状态。
问题是:如果我清除/root
目录然后调用:
将frs
返回FR_OK
。然后我可以发现有一个/testdir
创建。但是,在/testdir
我重新安装 SD 卡之前无法打开。
任何想法?
file - FAT32 中的唯一文件 ID
开发环境:安卓手机app
我正在寻找一种方法来唯一标识 FAT32/VFAT 文件系统(没有 inode)中的文件。我考虑过散列(SHA1?)完整路径。这个解决方案的问题是它不支持移动/重命名。
有没有更好的东西,即使在移动/重命名文件时也能保持?
谢谢
linux - chown 命令返回 不允许操作
我正在研究树莓派,并且很难授予使用以下教程安装的外部硬盘驱动器的权限:
http://www.howtogeek.com/139433/how-to-turn-a-raspberry-pi-into-a-low-power-network-storage-device/
我现在已经在该外部硬盘驱动器上创建了文件夹,当我执行ls -l
命令时,我得到以下返回:
它位于:/media/USBHDD1/shares
现在我正在尝试赋予它所有读写和执行权限,甚至将所有者和组更改为 pi:pi
但是,chmod 777
不起作用 - 它不返回错误,只是似乎没有效果
当我使用
我得到错误
这是一个 linux 问题,但我认为具有使用树莓派背景和知识的人可以在这里帮助我。
根据要求提供额外信息:
当我运行pi@raspberrypi /media $ grep USBHDD1 /etc/mtab
它返回:
c - 如何在 Linux 中使用 C 从 USB 设备获取 FAT 表
如何使用 C 从 USB 设备获取 FAT 表?,我在谷歌上搜索发现可以在 /dev/ 中搜索块的不同扇区,但我需要整个 FAT 表