20000 : "vivi"
0x00020000-0x00030000 : "param"
0x00030000-0x00130000 : "kernel"
0x00130000-0x01a30000 : "root"
0x01a30000-0x04100000 : "user"
2)如果在内核里面添加了proc文件系统的支持,那么proc中应该包含有关YAFFS的信息。
3)dev目录下的相关目录中包括有关NAND设备的信息。
4)建立mount目录
#mkdir /mnt/flash0
mount blockdevice设备:
~ #mount -t yaffs /dev/mtdblock/3 /mnt/flash0
~ #cp 1.txt /mnt/flash0
将文件拷贝到mount上的目录下后,umount设备,再次mount后可以发现拷贝的文件仍然存在。这时删除该文件,然后umount,再次mount后可以发现拷贝的文件已经被删除,由此可见该分区可以正常读写。
5)在Flash上建立根文件系统:
~ # moun
t -t yaffs /dev/mtdblock/3 /mnt/flash0
~ #cp (your rootfs) /mnt/flash0
~ #umount /mnt/flash0
重新启动,并改变启动参数:
param set linux_cmd_line "noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0"
再次重新启动后,开发板就可以从Flash启动根文件系统了。
结语 YAFFS是专门为NAND闪存设计的,它的出现使得价格低廉的NAND闪存芯片具有了高效性和健壮性。YAFFS文件系统性能优越且易于移植,已经成功应用于Linux、Clinux和Windows CE等嵌入式操作系统上。现在,每页大小为2Kb的新型超大容量NAND闪存已经出现,针对这种Flash的文件系统YAFFS2正处于研究和应用当中。可以预见,基于NAND闪存的文件系统YAFFS/ YAFFS2将会应用于更多的嵌入式系统。