Linux内核移植基本框架
一.获得Linux源码
二.解压系统源码
解压命令
Gzip -v rootfile 压缩一个文件rootfile
Gunzip rootfile.gz 解压缩一个文件
Tar命令
既可以压缩文件也可以解压缩文件,
决定于tar 命令后面所跟参数
-A将文件添加到现有的tar包
-c表示创建新的tar包
-t列出tar包中的内容
-x从tar包中解压文件
-f指定tar文件的名称
-j用bzip2/bunzip2来压缩和解压tar包,后缀为.tar.bz2
-z用gzip/gunzip来压缩和解压tar包,后缀为.tar.gz
&tar –xvf xx.tar -C /usr/local
展开此压缩文件,并释放到/usr/local
三.在系统中添加对ARM的支持
修改Makefile文件,添加对ARM体系的支持
四.修改平台输入时钟,添加对开发板的支持
五.制作针对于开发板的配置单
&make menuconfig
配置完成后保存配置单
六.修改机器码
机器码需要与bootloader中的机器码一致
七.编译镜像
&make zImage
镜像所存的位置是在内核中配置好的,如果需要更改zImage 需要更改内核中的配置选项
以上仅仅是能够引导了,因为还未做nand flash 方面的移植
八.Nand flash 驱动移植
修改源代码添加 u_boot kernel 和文件系统的读取起始地址
修改nand flash 读写匹配时间(可以不做这件事)
添加对大容量的nand flash 分区的支持
添加对应的驱动配置,make menuconfig
根据nand flash 的大小,添加相应容量支持,
&make zImage 编译内核,
内核的编译完成