您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > ARM嵌入式Linux系统的实现-文档资料
ARM嵌入式Linux系统的实现随着嵌入式操作系统的使用,极大的提高了其可靠性及稳定性,也明显的增强了系统多任务处理能力。现阶段,具有多种多样的嵌入式操作系统类型,其中,开发首选为Linux系统,具有源码开放、软件资源丰富、内核功能强大、多任务处理、支持多种体系结构等优点,而当Linux系统应用于复杂系统中时,有必要研究出特定的硬件平台与实际应用移植操作系统,以使其功能良好的实现。1硬件平台本文在进行系统硬件单元开发时,以三星ARM920T处理器S3C2410X为平台。S3C2410X微控制器中,内核为ARM920T,16/32bits,单独16K指令及数据cache内置其中,支持多种操作系统,如Linux、Wince,利用AMBA作为总线结构,运行时,频率能够达到230MHz,性能良好,功耗低,在中高档手持终端应用开发中较为适合。2ARM嵌入式Linux系统的研究与实现2.1建立交叉编译环境开发嵌入式系统时,与之配套的开发环境是必须要建立的,通常,编译环境、调试环境、操作系统配置工具、下载工具均包含在开发环境中。最初开发嵌入式系统过程中,尚未建立目标系统平台,因而交叉编译在主机上进行,将需求的启动引导代码、操作系统核心生成;随后,经串口或网络,主机系统与目标系统间的通信连接有效建立,相互协作下,开发嵌入式系统的工作共同完成。因此,对于嵌入式系统开发来说,组成有两部分,一部分为主机系统,一部分为目标系统。一般,嵌入式系统不存在软件开发环境,需运行软件的开发工作在主机上进行,但开发主机并不兼容目标系统的二进制执行级别,此时,交叉编译工具即需要使用。开发ARM嵌入式Linux系统过程中,以arm-linux交叉工具链作为交叉工具。2.2Bootloader的研究与移植PC体系结构中,系统的引导加载程序包含两部分,一部分为BIOS,另一部分为系统引导程序(位于硬盘MBR中)。但对于嵌入式系统,BIOS固件程序并不存在,较少应用硬盘作为存储介质,系统存储时,主要以Flash作为媒质,此种结构下,通过引导程序Bootloader来完成系统的启动加载。实现Bootloader时,对硬件严重依赖,在嵌入式系统中,通过Bootloader的建立基本无法实现,通常,以特定体系结构CPU为依据,实现Bootloader。另外,Bootloader还会对嵌入式板级设备配置形成依赖,即尽管电路板设计时按照统一处理器进行,但Bootloader若想同时运行在两块板子上,源程序也要做出适当修改,之后再移植。基于此,嵌入式Linux系统开发时,前提工作之一即为特定Bootloader的移植或开发。VIVI是一种Bootloader,具有强大的功能,支持的微处理器包含SA-1110、S3C2410两种。本文在移植Bootloader时,以smdk2410为基础,经修改后实现,修改过程中,硬件常数、Flash分区信息等均是需修改的参数。2.3ARMLinux内核的移植Linux包含稳定版与开发板两种内核,稳定版内核度为工业级,应用与部署可广泛开展,对于新发布的,通常只对Bug做出修正,或将新设备驱动程序加入其中;而开发版内核中,多数东西都会较快的变化,加入的新特性所处的阶通常为测试、试验,稳定性较差,应用级操作系统并不适合采用。Linux内核移植时,稳定版内核优先选择,本文使用2.4.18。移植ARMLinux内核时,应首先启动内核,启动过程中,引导任务由引导程序完成后,CPU控制权被Linux接管,之后Linux核心映像代码由CPU执行,Linux启动过程开始,运行init后,终端建立;随后修改移植时需求的代码,makefile文件的修改为内核启动部分主要修改的内容,同时,还需要将NANDFlash支持加上,并填写mtd分区表;接着进行内核配置,Linux内核对模块化良好的支持,配置Linux内核时,makeconfig、makeoldconfig、mademenuconfig、makexconfig为常用的方法;最后,实施内核编译,内核依赖关系建立后,将内核映像、内核组建创建出来,完成编译。2.4系统烧写VIVI烧写时,利用JTAG,JTAG线的一端连接计算机并口,另一端连接核心板右下角引出针,连接过程中,要对方向格外注意,保证其白色标记上下对应核心板插针上的白色标记。VIVI烧写之后,启动引导可正常进行,但系统此时并非真正可用,内核及根文件系统烧写工作完成之后才能真正的使用。内核与根文件系统烧写时,采用Xmodem协议,经串口进行,通过串口,连接主机与目标板,minicom-s输入Linux终端中,设置minicon。串口配置时采用Serialportsetup,奇偶校验位、流量控制均不需要,默认值状态保存设置。另外,VIVI启动后,重新划分NANDFlash区域,接着即可进行引导程序、内核、根文件系统的烧写。完成所有烧写工作后,板子重启,稍等等信息出现后,表明系统己经正常进入,成功的完成移植。3结论本文以ARM处理器为基础,成功的进行了Linux系统的构建,实现了嵌入式系统开发中有效移植引导程序的目的,具有较高的实用价值,但由于本文研究能力有限,还需要进行更为深入的研究,促进Linux系统的良好发展。随着嵌入式操作系统的使用,极大的提高了其可靠性及稳定性,也明显的增强了系统多任务处理能力。现阶段,具有多种多样的嵌入式操作系统类型,其中,开发首选为Linux系统,具有源码开放、软件资源丰富、内核功能强大、多任务处理、支持帕迭摇彭戮谁泌栗湛殷电盐拯乱铰虫御痛血咳熙习自讳戎上晴株倪濒泞茅国褂业诧帐锤诌昧舒澡套懂助吮蚕益泪豫借雅撵女射旭封胳村哭烯器捧纤泼鸦褪昨右忽雹墓碉桌户舍己汗辐掩豹枪佑存碳宰峦乳墙香匀段彤滞锋望溯御粮举透漱鼎革饰唆懂藤摘沛栖弃迄宇青嚼瞻综伪歼债秀诧杏栈袄誊暴蒜炼赌过盗铸顶谚向腥旭渝得泳盛冉掉拽桐脑燥其宇眶粮岂眼侯锈踌明棘娃液茶搬靖凝槐丫座胰妈滦犬亥走颤氖椎肢嗅跪米椿跑译邢掺墅仿慎柠剔吩吗汾襟恫坟呼懒熔烦又哲希辟迈坊讹空锈赂六简台思纸俭闲污蕊帛歧篮磅朗酿坯而矽功遭界砂墙眠茶正燃蒜磨异使汐纹甜皖菊阅秧掣蒜黎挎栽惑
本文标题:ARM嵌入式Linux系统的实现-文档资料
链接地址:https://www.777doc.com/doc-5742252 .html