欢迎来到天天文库
浏览记录
ID:36742910
大小:225.75 KB
页数:4页
时间:2019-05-14
《基于ARM9的嵌入式Linux系统分析与移植》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、第23卷第4期甘肃科学学报Vo1.23No.42011年1Z月JournalofGansuSciencesDec.2011基于ARM9的嵌入式Linux系统分析与移植缑新科,滕永(兰州理工大学电气工程与信息工程学院,甘肃兰州730050)摘要:结合$3C2440处理器和Mini2440实验平台,进行了嵌入式Linux的移植.实施了U—Boot移植,解决了U—Boot中关于Nand'Flash启动问题.分析了Linux的内核结构,从而实现了内核移植.测试结果证明该方法是可行的.关键词:Linux;U-Bo
2、ot;ARM9;嵌入式系统‘中图分类号:TP316文献标志码:A文章编号:1004—0366(2011)04—0106—04AnalysisandPortingofEmbeddedLinuxSystemBasedonARM9GOUXin—ke,TENGYong(Co'legeofElectricalandInformationEngineering,LanzhouUniversityofScienceandTechnology.Lanzhou730050。China)Abstract:BasedorI$
3、3C2440processorandMini2440platform,theportingoftheembeddedLinuxsystemwascarriedoutsuccessfully.First,basedonsolvingtheproblemofNan&Flash,theU—Bootwasportedtotheplatform.Second,thekerneloftheLinuxwasanalyzedandportedtoo.Thetestresultssuggestthatthismethod
4、iSfeasible.Keywords:Linux;U—Boot;ARM9;embeddedsystem嵌入式系统和PC系统启动的方式类似,都需在此基础上提出了将功能强大的U-Boot和Linux要有一定的引导程序.在PC机启动的时候,首先内核结合移植到特定目标板上的思路和方法.运行BIOS(BasicInput/OutputSystem).这个系统1U-Boot分析及启动过程可以把系统从硬件启动过渡到软件管理中,为下一步从硬盘中将操作系统调用至内存运行做好准备.U—Boot(Dasu-Boot)其含义
5、为UniversalBoot-而嵌入式系统的这种类似于B10S的系统,我们称Loader,是由德国DENX软件工程中心开发和维护之为Boot—loader[1],Boot—loader与系统的硬件息的针对嵌入式CPU的Boot—loader,是遵循GPL条息相关.而在嵌入式系统中,不同结构的CPU其对款的开放源码项目[2].应的Boot-loader也都是不同的,即便开发板所选1.1U-Boot启动分析用的处理器是同一型号,仅仅是外设的不同,也需U—Boot的启动分为两个阶段.在第一个阶段主要进行Boo
6、t—loader的移植工作.因此想要在嵌入要完成以下工作:式世界里建立一个通用的Boot—loader几乎是不可(1)基本的硬件初始化;能的.(2)为下一阶段准备RAM空间;Linux是源代码开放的,支持多用户、多进程、(3)将第二阶段所需数据转移至RAM中;多线程、实时性较好的功能强大的操作系统.它可以(4)设置堆栈指针和存取方式,准备好第二阶运行在x86,680x0,Po~verPC,MIPS,ARM等平台段需C语言环境.上,已经是目前运行硬件平台最多的操作系统.我们第二阶段的主要工作:收稿日期:2
7、011一O4—14第23卷缑新科等:基于ARM9的嵌人式Linux系统分析与移植107(1)从汇编语言跳转到main入口函数;添加(2)初始化本阶段要使用的硬件设备;$3C2440config:unconfig@.mkconfig$(@:一一(3)检测系统内存映射;config=)armarm920t$3C2440.(3)加载内核映像和文件系统.配置完成后,在board中建立S3C244Oboard目1.2U-Boot结构分析录,并复制smdk2410目录中的内容,之后执行为了实现U-Boot的移植,首
8、先必须对U-Bootmakesmdk2410config.一中的文件结构有一定的了解.结合本平台的需要,我其次在include/configs/中建立配置头文件,然们主要在ARM环境下对主要部分作一定分析.后指定交叉编译工具的路径以及测试编译.U-Boot结构如图1所示.以上的工作是U-Boot的移植前序步骤,不过这里存在一个问题:代码搬运.本平台是基于Nand—Flash启动,但U—Boot并不支持这一启动方式,这就需要我们对这部分进行一
此文档下载收益归作者所有