需要了解的混合文件系统(ramdisk+jffs)

嵌入式技术

1372人已加入

描述

背景知识:

一、Ramdisk文件系统:

1.掉电丢失

2.读写速度高

3.数据存储到内存

二、jffs文件系统

1.掉电不丢失

2.可存储于NOR NAND,但是适用于NOR

3.数据存储于flash

三、ramdisk+jffs启动流程:

以ramdisk为真正根文件系统,jffs为jffs格式的数据分区。

内核起来后,挂载ramdisk,再挂载jffs数据分区到ramdisk的文件系统

四、混合文件系统意义

通常jffs分区里面存放应用程序和配置文件。

ramdisk制作成一个基本的文件系统,不同项目改动的只是jffs2数据分区,可以实现文件系统的重复利用。类似于核心板和底板的关系。

文件系统

五、ramdisk

制作方法

1.将编译安装好的根文件系统目录压缩

gzip -v9 ramdisk.img

2.修改名字为要烧录的名字

mv ramdisk.img.gz ramdisk-beta2.00

修改方法

1.修改名字为要解压的名字

mv ramdisk-beta2.00 ramdisk.img.gz

2.解压文件

gunzip ramdisk.img.gz

3.挂载到系统文件夹下

mount -o loop ramdisk.img /opt/sendinfo/filesystem/tmp/

4.挂载目录中修改编辑

5.卸载已挂载的根文件系统

umount /opt/sendinfo/filesystem/tmp/

6.重新压缩

gzip -v9 ramdisk.img

7.重新修改名字为烧录名字

mv ramdisk.img.gz ramdisk-beta2.00

五、jffs制作方法

1.所需文件,制作为ramdisk的根文件系统目录与文件

2.打包脚本

mkjffs脚本:

#!/bin/sh

rm -f ./jffs

mkfs.jffs2 -e 0x20000 -l -s 0x800 --pad=0x2000000 -n -d ./opt/  -o ./jffs

chmod 777 jffs

3.执行脚本即可 ./mkjffs

六、内核分区

以9G45举例说明:

arch/arm/mach-at91/board-sam9m10g45ek.c

文件系统

七、增加挂载文件

ramdisk/etc/mtab

文件系统

第七步修改应该在打包之前完成



 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分