- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于ARM7的uClinux移植
1.引言
随着计算机技术的发展,嵌入式系统已不仅仅属于计算机领域的一个研究热点,在电子、工业控制、航空航天等领域都有广泛的应用。嵌入式设备应用广泛,几乎包括了我们周围的所有电器设备:PDA、手机、机顶盒、汽车、微波炉、自动取款机等。和通用计算不同的是嵌入式系统针对的是具体的专用系统,一般也都具有成本和空间的敏感性,它的硬件和软件都必须高效率的设计。在航空航天、医疗等特殊应用领域还要求做到很高的安全可靠性。嵌入式系统还可以根据任务灵活的增减软硬件。
uClinux在官方网站(www.uC)中有源代码提供,同时也有文档说明所支持的体系结构。结合实际的应用,在众多的体系结构中选择一种。下面介绍一下在移植uClinux中会遇到的一些关键问题。
(1)交叉编译环境的建立
移植uClinux必须有一台PC机,安装了Linux操作系统。同时还要有一块测试板,测试板的体系结构uClinux必须支持。对于不同体系结构,GNU都提供了相应的开发软件包。这可以到网上查找,有些是源代码包,下载后要经过GCC的编译才能应用;有些是应用程序包,安装后即可使用。安装完了工具包后,Linux中就有了基于该体系结构的编译器,链接器,调试器以及一些实用小工具,例如反汇编,反编译等,以后编译uClinux内核,制作文件系统都要依赖交叉编译系统。
(2)uCli nux的内核加载方式的问题
uClinux的内核有两种可选的运行方式:可以在Flash上直接运行,也可以加载到内存中运行。前者可以减少内存需要。
Flash运行方式:把内核的可执行映像文件烧到Flash上,系统启动时从Flash的某个地址开始逐句执行。这种方法实际上是很多嵌入式系统采用的方法。
内核加载方式:把内核的压缩文件存放在Flash上,系统启动时读取压缩文件在内存里解压,然后开始执行,这种方式相对复杂一些,但是运行速度可能更快(RAM的存取速率要比Flash高)。同时这也是标准Linux系统采用的启动方式。这里需要编写一个Bootloader软件。Bootloader软件实现的功能包括开机寄存器的配置,内核与文件系统的加载,传递硬件与启动参数给内核。网上有许多Bootloader可以下载,但是都需要根据自己测试板硬件的信息进行改写。与PC机上的加载过程做对比,Bootloader的功能类似BIOS+ Linux LILO。
(3)uC I i nux内核的编译
网上有许多uClinux源代码,最著名的就是uClinux官方网站。从网上下载一个uClinux的源代码,根据自己的需要对内核进行裁减,用交叉编译器对内核进行编译。
(4)uClinux的根(root)文件系统制作及其加载
uClinux系统采用:omfs文件系统,这种文件系统相对于一般的ext2文件系统要求更少的空间。空间的节约来自于两个方面:首先内核支持romfs文件系统比支持ext2文件系统需要更少的代码;其次romfs文件系统相对简单,在建立文件系统超级块(Superblock )需要更少的存储空间。romfs文件系统不支持动态擦写保存,对于系统需要动态保存的数据采用虚拟ram盘的方法进行处理( ram盘将采用ext2文件系统)。同时uClinux内核也支持各种文件系统,例如,网络文件系统,在需要时可以进行mount 。
在编译内核的同时也可以选择编译文件系统中的应用程序。在源代码包中有许多应用程序源代码,可以根据自己的需要进行选择。由于基于Linux的应用程序较多且源代码开发,因此基于uClinux的产品可以进行快速开发,只要能够找到相应的源代码,在制作文件系统时编译进去就可以了。
2.uClinux概述
Linux是跨平台的操作系统,可支持X86, MIPS, ARM等各种内核,但无 论哪一种内核,Linux运行都必须有内存管理单元。为了解决没有内存管理单元芯片如何运行Linux, GNU组织开发了uClinux,一种类Linux的操作系统。uClinux是专为无存储器管理单元(MMU)的微控制器打造的嵌入式Linux操作系统。uClinux首先被移植到摩托罗拉的MC68328 DragonBall集成微处理器上。从那以后,uClinux越来越受到业界的青睐,被移植到更多的无MMU芯片上。
uClinux是嵌入式linux的一个分支,具有开源的代码,便于扩充实时性的要求,很高的适应性和可靠性,成熟的开发工具和可灵活配置的内核。一个嵌入式uClinux系统由下面三个基本部分组成:引导程序、uClinux内核(由内存管理、进程管理和中断处理等构成)和文件系统。uClinux可以通过定制使内核小型化,还可以加上GUI(图形用户界面)和定制应用程序,并将其放
您可能关注的文档
最近下载
- 甲骨文与青铜器课件.ppt VIP
- 《2025年CSCO宫颈癌诊疗指南》更新要点解读PPT课件.pptx VIP
- 《分数乘除混合运算》示范公开课教学设计【青岛版小学六年级数学上册】.pdf VIP
- 部编版11.一块奶酪 教学设计教案 三年级语文上册(带板书设计、教学反思)3.docx VIP
- 静脉采血技术操作规范2025版.docx VIP
- 最全的日语汽车词汇汇总.docx VIP
- 护理组织管理体系与职责分工..doc VIP
- 2025食品生产通用卫生规范年GB14881试题及参考答案.docx VIP
- 屈光手术科普知识.pptx VIP
- 2025年高考数学全国新课标Ⅰ卷试卷评析及备考策略(课件).pptx VIP
文档评论(0)