[Linux Kernel]内核移植中的Yaffs2补丁

最近忙完了公司的项目,比较闲;因为自己很喜欢内核方面的东东,所以又闲来无事的看起了Linux内核移植。虽然以前已经学过了,但都已经“就饭吃了”!
言归正传:
此次移植中得知原来需要为Kernel打补丁 因为linux默认并不支持Yaffs2文件系统 本以为最新的linux-2.6.36会有 可是进入linux-2.6.36/fs/查看 发现没有yaffs2文件夹 所以 还是得“自己动手 丰衣足食”
1:背景知识介绍:
目前有2种Flash(闪存)类型:
[NAND Flash]:容量大,比较适合做开发板上的“固态硬盘”;
[NOR Flash]:容量小,但可以片内执行(程序直接在其上运行 无需拷贝至内存),比较适合装载开发板的引导程序(vivi,u-boot等);
关于以上2种Flash具体性能之类的我就不说了(怕有理解上的错误而影响其他人,此类资料可以Google一下);
目前有2种比较流行的用于Flash芯片的文件系统:
[Jffs2]:适用于[Nor Flash], 基于MTD驱动层 ;
[Yaffs2]:适用于[NAND Flash],自带[NAND Flash]芯片驱动,提供了直接访问文件系统的API,同时也可以与MTD驱动配合使用;
(详细资料请Google)

2.Linux内核移植中涉及的补丁及环境:
1.Kernel版本:linux-2.6.36(下载地址: http://www.kernel.org/pub/linux/kernel/v2.6/ )
2.软件平台:Kubuntu(个人不是很喜欢 这是公司的 家中的是Fedora)
3.硬件平台:UTU2440-S(扬创科技)

4.补丁文件:yaffs2.tar.gz(下载地址: http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2/ 页面的最下端有个" Download GNU tarball"链接 )

3.具体步骤:
1.解压: tar -zxvf  yaffs2.tar.gz 生成了一个[yaffs2]文件夹
2.拷贝[yaffs2]文件夹至Kernel根目录下的[fs]文件夹下: cp yaffs2 /usr/src/linux-2.6.36/fs/
3.操作: ./patch-ker.sh c /usr/src/linux-2.6.36/[这个是我Kernel的根目录的路径,请按照你的进行修改]
4.进入Kernel根目录: cd  /usr/src/linux-2.6.36/
5.操作: make menuconfig 进入内核设置界面
6.进入主界面的File systems  --->
7.进入: [*] Miscellaneous filesystems  --->
8.选中: <*>   YAFFS2 file system support
9.保存&退出.

至此 补丁完成;make zImage.

你可能感兴趣的:(linux,linux,职场,kernel,补丁,移植,休闲,yaffs2)