嵌入式Linux内核移植

本文详细介绍了嵌入式Linux内核移植的过程,包括NAND Flash分区、vivi和内核MTD的重新分区,内核配置、编译规则及常用命令,以及内核编译和下载到开发板的步骤。实验旨在掌握Linux内核配置、编译及移植技巧,适合嵌入式Linux开发者参考。
摘要由CSDN通过智能技术生成

嵌入式Linux内核移植

姓名:成 炼  学号:081141

实验目的

l  了解Linux内核源代码的目录结构及各目录的相关内容

l  了解Linux内核各配置选项内容和作用

l  掌握Linux内核配置文件的作用

l  掌握Linux内核的编译过程

l  掌握将新增内核代码加入到Linux内核结构中的方法

 

实验指引

尽管目前Linux 2.6版本内核已经增加了很多对ARM体系甚至是S3C2410 CPU的支持,但仍然需要对内核作一些小的修改来适应我们的开发板,并且需要重新配置、编译和重新生成新的内核映像。本实验着重从NAND Flash分区到下载到开发板等一系列连贯的操作来进行嵌入式Linux内核的移植。本实验的内核版本为2.6.26

1. NAND Flash分区

Nand Flash启动时,S3C2410硬件会自动把Nand Flash4K代码拷贝芯片内部RAM空间,CPU其实是从内部RAM开始执行代码的,所以vivi必须放到Nand Flash顶端。vivi开始执行后将初始化硬件设备、建立内存空间映射表,为调用内核做好准备;然后把压缩的内核映像加载到SDRAM中;最后跳转到内 核映像入口,启动内核。

内核MTD分区必须与vivi分区相一致。因为,vivi分区中的地址是引导程序、内核映像及文件系统下载到Nand Flash的真正地址;而内核启动时,内核并不是去读vivi分区中的地址,而是去读内核MTD分区设定的地址;所以,如果内核MTD分区vivi分区不相同,很可能导致不能正常启动内核及读取文件系统。

1.1 vivi的重新分区

根据开发板的Nand Flash大小及开发用途确定新的vivi分区,如表1.1

1.1 vivi的分区信息表

名称

offset

size

flag

容量

vivi

0x00000000

0x00020000

0

128K

param

0x00

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值