YAFFS移植:
1) 在内核中建立YAFFS目录fs/yaffs,并把下载的YAFFS代码复制到该目录下面。
2) 修改fs/Kconfig,使得可以配置YAFFS。
3) 修改fs/makefile,添加如下内容:obj-$(CONFIG_YAFFS_FS) += yaffs/
4) 在生成的YAFFS目录中生成Makefile 和Kconfig文件。
5) 修改NAND分区。此分区要结合vivi里的分区进行设置,如下:
6) 配置内核时选中MTD支持和YAFFS支持。
7) 编译内核并将内核下载到开发板的Flash中。
YAFFS文件系统测试:
1) 内核启动之后,启动信息中应该含有如下内容:
2) 如果在内核里面添加了proc文件系统的支持,那么proc中应该包含有关YAFFS的信息。
3) dev目录下的相关目录中包括有关NAND设备的信息。
4) 建立mount目录
将文件拷贝到mount上的目录下后,umount设备,再次mount后可以发现拷贝的文件仍然存在。这时删除该文件,然后umount,再次mount后可以发现拷贝的文件已经被删除,由此可见该分区可以正常读写。
5) 在Flash上建立根文件系统:
重新启动,并改变启动参数:param set linux_cmd_line "noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0"再次重新启动后,开发板就可以从Flash启动根文件系统了。
结语
Clinux和WindowsmYAFFS是专门为NAND闪存设计的,它的出现使得价格低廉的NAND闪存芯片具有了高效性和健壮性。YAFFS文件系统性能优越且易于移植,已经成功应用于Linux、 CE等嵌入式操作系统上。现在,每页大小为2Kb的新型超大容量NAND闪存已经出现,针对这种Flash的文件系统YAFFS2正处于研究和应用当中。可以预见,基于NAND闪存的文件系统YAFFS/ YAFFS2将会应用于更多的嵌入式系统。
--
原文链接: http://www.ednchina.com/Article/html/2006-03/2006327102601.htm
|