MiniOS7 File System Library

MiniOS7 file system, MFS, 提供了一个相较于传统硬盘, SD 卡,更为可靠, 不受振动和非预期断电影响的文件系统。 针对 64MB/256MB NAND 闪存, MFS 实现了一个可靠的文件系统,提供 C 语言的 API ,让在 MiniOS7 嵌人式控制器上记录数据变为简单。

ITEM DESCRIPTION
磁盘数量 2 (disk A and B)
磁盘大小 1/2 闪存的容量大小
文件数量 456/每個磁盘
文件大小 最大為磁盘容量大小
文件操作模式 1. 唯读
2. 唯写: 创建一个新文件以写入数据,或覆盖一个既有文件。
3. 添加: 将数据添加到一个文件中。
File Handle 10/每個磁盘
唯读模式: 10个文件手柄可以全部用于每个磁盘的读取操作。总共可以打开20个文件用于读取模式。
唯写和添加模式: 在所有的磁盘上只能使用一个文件手柄进行写入操作。
写入验证 默认为启用。
呼叫 mfs_EnableWriteVerification 和 mfs_DisableWriteVerification 可以改变设置。
自动恢复文件系统 Yes
假如发生非预期的 Reset 或是断电情况, 所有已经储存的文件和被开启为唯读的文件都不会被影响。只有正在写入档案(mfs_WriteFile) 的最后一笔资料有可能无法被正确写入档案。
当文件系统再次启动后,它会复原最后一次正确写入文件的操作,确保此一文件不会毁损。
写入速度 mfs_WriteFile: 147.5 KB/Sec (启用写入验证)(默认值) 244.0 KB/Sec (取消验证)
mfs_Puts: 142.1 KB/Sec (启用写入验证)(默认值) 229.5 KB/Sec (取消验证)
读取速度 mfs_ReadFile: 734.7 KB/Sec
mfs_Gets: 414.2 KB/Sec
最大写入数据的长度 32767 bytes
最大读取数据的长度 32767 bytes
  • 可以持续且弹性地 读/写/添加数据到文件

    这个 NAND 闪存被分割为 2 个磁盘, 每个磁盘可以储存 456 个文件。你可以建立文件,用来写入或是添加数据。然后将储存好的文件,透过 Ethernet 传到 PC 做后续的数据处理与分析。

  • 提供C语言API

    这些 API 与 turbo C, Borland C 提供的,非常相似,所以在使用 MFS 库是非常容易上手。

    mfs_OpenFile, mfs_CloseFile, mfs_ReadFile, mfs_WriteFile, mfs_Gets, mfs_Puts, mfs_Getc, mfs_Putc, mfs_EOF, mfs_Seek, mfs_Tell, mfs_DeleteFile, mfs_DeleteAllFiles, mfs_GetFileInfoByName, mfs_GetFileInfoByNo, … etc.

     

  • 写入验证

    写入的数据会被读回进行比对,验证是否正确写入。这个功能可以被取消来提升写入的速度,但是为了数据的正确性,我们还是建议启用这个功能。

  • 自动复原文件系统

    假如发生非预期的 Reset 或是断电情况, 所有已经储存的文件和被开启为唯读的文件都不会被影响。只有正在写入的最后一笔数据有可能会遗失。

    MFS 在呼叫完写入的命令(such as mfs_WriteFile, mfs_Puts, mfs_Putc, etc.) 之后,除了将数据马上写到闪存,同时间 MFS 也将重要资讯 (例如: 文件名稳称, 指标, 闪存的储存位置, 等等) 存到 NVRAM (非挥发性记忆体).

    当发生非预期的 Reset 或是断电,只有最后一次写入的动作(例如:mfs_WriteFile, mfs_Puts, mfs_Putc, 等等.) 的数据可能会遗失。当文件系统再次启动后,它会参考存在 NVRAM 里面的数据来复原文件系统。先前正在写入数据,而未关闭的文件将被自动关闭,并且其最后一次写入操作前所写入的所有数据都会被正确储存。

     

  • 记录带时间戳记的数据
  • 记录数据,并且透过 Ethernet 传出文件

这个压缩档包含 MFS lib 和范例程序

FILE NAME RELEASE DATE SIZE DOWNLOAD
mfs.rar 2015/02/04 137 KB

文件结构

这个压缩档包含了下面的文件夹和文件

mfs.rar

lib folder for MFS Libraries

FOLDER DESCRIPTION
- MFS Libraries
MFS.h
MFS_V224.LIB
MFS_History.txt

MFS 范例程序

DEMO DESCRIPTION
Utility Utility for the MiniOS7 File System. 包含 Dir, Read, Write, 等等的操作
MFS_QA MiniOS7 檔案系統的 QA 程式
包括功能测试,读/写性能测试。
Puts 如何将一个字符串写入闪存的文件中。
Gets 如何从闪存的文件中获得一个字符串。

Related Products

uPAC-5001-FD / uPAC-5001D-FD

uPAC-7186EX-FD / uPAC-7186EXD-FD

Related Resources

uPAC-5000 User Manual

uPAC-7186 User Manual

MiniOS7 API Functions Reference Manual