首页 > 技术知识 > 正文

现在的嵌入式系统设计当中jffs2还是比较主流的文件系统,但是jffs2在可写环境下容易被外部干扰,写入一些数据,当数据过多时有可能会导致系统出问题,而squashfs文件系统就不会有这个问题,因为squashfs文件系统是一种只读文件系统。

squashfs 文件系统是一套基于 Linux 内核使用的压缩只读文件系统,压缩率高。

squashfs 具有如下特点:

z 数据(data),节点(inode)和目录(directories)都被压缩

z 保存了全部的 32 位 UID/GIDS 和文件的创建时间

z 最大支持 4G 文件系统

z 检测并删除重复文件

在3520D的SDK里面/Hi3520D_SDK_V1.0.5.0/osdrv/pub/bin/pc文件夹下的mksquashfs是windows下使用的文件,我们在linux里面不能直接使用,而linux下的制作工具在/Hi3520D_SDK_V1.0.5.0/osdrv/tools/pc_tools/squashfs4.2下,把所有的压缩包解压以后make一下,mksquashfs工具就编出来了,然后我们使用./mksquashfs (文件系统路径) (生成的文件系统的名称) -b 64K -comp xz这个指令就可以编出我们想要的squashfs文件系统。

当然只编出文件系统是不行的,我们的内核也要支持squashfs文件系统才行,不然我们内核是无法加载文件系统的,具体设置见下图:

3520D squashfs文件系统的使用方法 在——>file systems——->Miscellaneous filessystems里面,打开上图框住的三个驱动就可以了。

猜你喜欢