嵌入式Linux系统移植(Linux内核配置)
Linux移植是把Linux操作系统针对具体的目标平台做必要改写之后,安装到该目标平台使其正确的运行起来。
基本内容:
1.获取某版本的Linux内核源码,根据我们的具体目标平台对这源码进行必要的改写(主要是修改体系结构相关部分)。
2.添加一些外设的驱动,打造一款适合于我们目标平台(可以是嵌入式便捷设备也可以是其它体系结构的PC机)的新操作系统。
3.对该系统进行针对我们目标平台的交叉编译,生成一个内核映像文件,最后通过一些手段把该映像文件烧写(安装)到我们的目标平台中。
Linux移植包括:
(1)启动代码的修改
(2)内核的链接及装入
(3)参数传递
(4)内核引导部分部分
Init.s 是引导Linux内核在ARM平台上起到的初始化代码
Init.s主要完成一下功能:
·定义数据段、代码段、bbs(未初始化数据段)起始地址变量并对bbs段进行初始化
·设置寄存器以初始化系统硬件
·关闭中断
·初始化LCD显示
·将数据段数据复制到内存
·跳转到内核起始函数start_kernel继续执行
·对主寄存器的修改
Linux内核的编译菜单版本:
·make config: 进入命令行,可以一行行的配置
·make menuconfig: 进入我们熟悉的menuconfig
·make xconfig:在2.4.X以及以前版本中xconfig菜单,是基于TCL/TK图形库的。