跟我们一起
玩转路由器

Utility之文件系统一览

vxworks提供了多种文件系统,下面是对这些文件系统的简要概述。具体使用时,可以进一步深入分析。

VRFSDosFSHRFSTRFSRawFScdromFSRomFSTSFSTrueFFSNFSVRFS

组件INCLUDE_VRFS,虚拟根文件系统。这是一种虚拟的文件系统,提供了一个POSIX风格的虚拟根目录”/”。在这个目录中,可以看到其他以”/”开始,且仅包含一个”/”的设备。

DosFS

组件INCLUDE_DOSFS,是一个兼容MS-DOS的文件系统。

文件名最长可达255个字符,但路径名最长为1024个字符,而Windows默认的最大路径长度通常只有260个字符。

DosFS支持多种本地存储设备,如硬盘、软盘、优盘等。系统启动时,会自动调用xxxDevCreate()创建XBD(扩展块设备)。然后,用户可以使用xbdCreatePartition()进行分区,并使用dosfsDiskFormat()进行格式化。

例如,在VxWorks 6.9中包含Intel Serial/Parallel ATA驱动INCLUDE_DRV_STORAGE_PIIX,并在X86的Target中添加一个新的IDE硬盘。

系统启动后,可以看到多了一个设备。

使用xbdCreatePartition()进行分区。

例如,分为两个分区,各占50%。

使用dosfsDiskFormat()将分区格式化为DosFS。

使用dosFsShow()可以查看DosFS的卷配置。

HRFS

组件INCLUDE_HRFS,是一种针对实时系统设计的事务性文件系统,具有容错能力,并兼容POSIX。

使用方式与DosFS类似,先使用xbdCreatePartition()进行分区,然后使用hrfsDiskFormat()进行格式化。

使用hrfsChkDsk()可以查看文件系统的基本信息。

TRFS

组件INCLUDE_XBD_TRANS,是基于事务的可靠文件系统。为DosFS提供一个容错的IO层。

创建流程:先在XBD设备上创建TRFS,然后再创建DosFS。

在TRFS上进行的文件操作,必须提交后才能永久生效。事务的提交是以整个分区为单位的,而不是提交某个文件。因此,提交时,整个分区的状态需要一致,不能有正在进行中的文件操作。有两个函数可以用于提交。

注意:尽管usrTransCommitFd()的参数是TRFS上某个文件的fd,但提交的是整个分区的文件系统。

TRFS的操作示例如下。

RawFS

组件INCLUDE_RAWFS,是一种原始文件系统,将整个分区视为一个文件来处理。新创建的XBD设备,默认就挂载RawFS,无需格式化。通过基本IO函数即可操作。

cdromFS

组件INCLUDE_CDROMFS,是ISO 9660标准文件系统,支持CD-ROMs, CD-Rs, CD-RWs。

例如,有一张CD,可以在Windows中打开。

将其放到VxWorks的Target后,VxWorks启动时会自动加载cdromFS,然后可以使用open()、close()、read()、ioctl()、readdir()、stat()等函数来访问它。使用cdromFsVolConfigShow()可以查看cdrom的卷配置。

RomFS

组件INCLUDE_ROMFS,是一种只读内存文件系统,可以将任意文件存放到操作系统中,无需本地存储设备或网络设备。

使用流程是:在Workbench中新建ROMFS File System Project。

创建时选择Add reference to VIP project。

或者创建之后,在工程上右击选择Add as Project Reference。

在工程的Contents中可以添加文件、文件夹。

然后直接build VIP,重启Target,就可以看到VxWorks中多出来的设备/romfs,里面就包含之前添加的文件。

TSFS

组件INCLUDE_WDB_TSFS,是Target Server File System,是WDB的成员之一,在Target端创建一个名为/tgtsvr的文件系统,但实际上操作的是Host端的文件。

在Target Connection的属性中配置Target Server File System的Root路径,默认值是当前的workspace。

启动VxWorks,连接Target Connection后,就可以在VxWorks中通过/tgtsvr访问Host的文件了。这个例子中,访问的是Host端Windows的C:/目录。

TrueFFS

组件INCLUDE_TFFS,是一种闪存文件系统。通过TrueFFS,可以使用DosFS或HRFS来访问闪存设备。

NFS

网络文件系统,详见《Component之NFS》。

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Utility之文件系统一览》
文章链接:https://www.lu-you.com/settings/27241.html
本站资源来源于互联网整理,若有图片影像侵权,联系邮箱429682998@qq.com删除,谢谢。

评论 抢沙发

登录

找回密码

注册