免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2191 | 回复: 0
打印 上一主题 下一主题

几种嵌入式文件系统的比较(介质:NorFlash) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-29 12:36 |只看该作者 |倒序浏览
  基于NorFlash存储介质的特性,常用的文件系统主要有ramdisk, ramfs, cramfs, jffs2.
  1
   ramdisk,ramfs,可写,但内容断电后丢失。ramdisk (like initrd) 是 ram based block device, 像磁盘一样可挂载与格式化。
   内核配置选项:Device Drivers->Block devices->RAM disk support.可指定block size与disk size.
  2 与ramdisk不同的是,ramfs空间是可增长的,而且使用了cache机制,所以速度很快。
   可通过内核配置“General Setup->Initramfs source files"指定ramfs目录直接编译进内核。(详细了解initramfs请参考文档:“精通initramfs构建step by step(一)~(十二)”
  3 另一个与ramfs相似的是tmpfs,它增加了容量大小限制,在inittab中进行分配或直接在脚本mount中指定大小;可能用到swap space。
   内核配置选项:“File systems->Pseudo filesystems->Virtual memory file system support 与 Tmpfs Posiz access Control Lists。
  以上三种文件系统都以消耗内存为代价,在嵌入式系统中,内存资源一般都比较紧张,如此,可以考虑以下文件系统。
  4 cramfs是只读压缩文件系统,可在NorFlash中直接运行,效率也不错。
   内核配置选项:“File systems->Miscellaneous filesystems->Compressed ROM file system support".
   制作命令也很简单:mkfs.cramfs -N big(little) srcdir/ xxx.cramfs。
   作为根文件系统,传给内核的参数设置为:bootargs root=/dev/mtdblock? rootfstype=cramfs ro console=115200,ttyS0(有些用ttySAC0) init=/linuxrc
  5 jffs2,日志文件系统,可读写,专为嵌入式文件系统提供了安全的写机制。详细了解可参考文档“JFFS2文件系统及新特性介绍”。
   内核配置选项:“File systems->Miscellaneous filesystems->JFFS2 support”。
   制作命令举例:mkfs.jffs2 -n --pad=xxx(fill size) -e 0x20000(block size) -U -b(-b big endian, -l little endian) -d srcdir/ -o xxx.jffs2
   作为根文件系统,传给内核的参数设置为:bootargs root=/dev/mtdblock? rootfstype=jffs2 rw console=115200,ttyS0

  对于NorFlash,要支持文件系统,一块要提供MTD partition support支持。如果NorFlash支持CFI(common Flash Interface),还需要配置此选项。

  如果直接使用uboot+jffs2方案,也就是jffs2直接作为根文件系统分区,在uboot中加入jffs2的支持,就可以读jffs2中的文件,因此可以把kernel镜像uImage直接拷贝到rootfs中。通过fsload命令加载到内存然后引导。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/66728/showart_2134218.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP