[Linux驱动开发] jffs2 文件系统制作及移植
来源:互联网 发布:手机版服装批发软件 编辑:程序博客网 时间:2024/06/05 03:19
1、 准备mkfs.jff2制作工具
下载zlib-1.2.3.tar.bz2解压缩到主机生成zlib-1.2.3目录
$ cd zlib-1.2.3
./configure
$make
$sudo make install
下载 mtd-snapshot-20050519.tar.bz2 解压缩 $ cd mtd/util
$make
$sudo make install
这样在你的PC机上就有了mkfs.jffs2的工具,它只是一个制作jffs2文件系统镜像的工具而不能格式化成相应的jffs2文件系统,区别mkfs.ext2.
2、 生成JFFS2 根文件系统
$ mkfs.jffs2 -r /opt/rootfs -o rootfs.jffs2 -e 0x20000 --pad=0x800000
$cp rootfs.jffs2 /tftpboot/
3、 设置启动参数
启动开发板,设置
OpenJTAG> setenv bootargs console=ttySAC0,115200 root=1f02 rootfstype=jffs2 rw init=/linuxrc mem=64M
OpenJTAG> save
OpenJTAG> nand erase 260000 800000
OpenJTAG> tftp 30800000 rootfs.jffs2
OpenJTAG> nand 30800000 260000 800000
此处boot后会发现有如下错误:
可知,一定是我们的1f02出问题了,那么我们的1f02会出什么问题呢?
此处的1f02表示Nand Flash上的存放rootfs的存储区域,和前一篇博文中用来存放rootfs.cramfs是一样的。那么会出什么问题呢?
很自然我们想到要来比较一下是否是存放在此存储区域上的内容出了问题。
经过比较我们发现rootfs.cramfs和rootfs.jffs2文件的大小差别很大,且rootfs.jffs2大小已经超过了我们分配给1f02的大小,那么我们怀疑可能是因为1f02存储区域过小在烧录时有溢出的问题发生
那么我们就来尝试修改分配给1f02的内存大小,在内核中:
terry@terry-virtual-machine:/home/linux-2.6.22.6$ vi arch/arm/plat-s3c24xx/common-smdk.c
修改Nand Flash中1f02的大小
鉴于,rootfs.jff2的大小超过8M,此处我们将1f02的大小更改为10M,即0xa00000
重新设置
启动开发板,设置
OpenJTAG> setenv bootargs console=ttySAC0,115200 root=1f02 rootfstype=jffs2 rw init=/linuxrc mem=64M
OpenJTAG> save
OpenJTAG> nand erase 260000 a00000
OpenJTAG> tftp 30800000 rootfs.jffs2
OpenJTAG> nand 30800000 260000 a00000
所以,说明我们的分析是对的!
.jffs2的文件特点是系统挂载慢,但是可读写
这里我们尝试:mkdir terry,结果是OK
- [Linux驱动开发] jffs2 文件系统制作及移植
- jffs2文件系统制作及移植
- [Linux驱动开发] cramfs文件系统制作及移植
- [Linux驱动开发] ramdisk文件系统制作及移植
- jffs2文件系统制作与移植
- Linux内核及文件系统移植之jffs2烧录后无法启动
- jffs2文件系统制作与移植(二)
- jffs2文件系统的制作以及移植
- jffs2文件系统制作与移植(二)
- jffs2文件系统的制作和移植
- Jffs2文件系统的制作及使用
- linux之文件系统制作及移植
- 【Linux基础】 Jffs2根文件系统制作
- JFFS2 文件系统移植
- MPC83XX jffs2 文件系统 移植
- JFFS2文件系统的移植
- [Linux驱动开发] 根文件系统制作
- Jffs2根文件系统制作
- 提高PHP编程效率的53个要点
- 手动修改系统属性常规中OEM信息的技巧
- textview button editview以及绑定监听器
- 选择器
- 《Java Concurrency in Practice》ch6 Task Execution
- [Linux驱动开发] jffs2 文件系统制作及移植
- 第五周实验报告2
- SQL Server 2000中的列级约束与表级约束
- 第五周实验报告(任务4)
- java之LinkList、ListIterator、ArrayList学习
- 从 Java 支持压缩/解压缩开始,无法缺省支持中文文件名。
- 问题2
- Java 随机数
- weblogic.transaction.TimedOutException