基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植

基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植

ID:33608958

大小:1.45 MB

页数:42页

时间:2019-02-27

基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植_第1页
基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植_第2页
基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植_第3页
基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植_第4页
基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植_第5页
资源描述:

《基于gnu工具链的arm-minix嵌入式系统交叉编译环境的移植》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、兰州大学2008届硕士学位论文的交叉编译,但事实上由于受到专利版权技术的限制并不总是能够进行交叉编译,(见参考文献【4】).1.3.3主流平台开发工具由于嵌入式系统的广泛应用,不同的应用对软硬件的要求也有特殊的考虑,这些客观上造成了面向嵌入系统的开发工具的多样性,许多公司都提供自己的嵌入式开发平台.通常这些套件都是基于一定操作系统和硬件平台的。这些主流的开发平台可以分为两种:一类是基于开源Linux系统的,如#clinux,Inc的MIZILinux等;另一类是一些公司组织和设计的针对通用应用或者特殊任务设计的嵌入式操作系统,比如Q

2、NX、VxWorks、WindowsCE等。1.4利用GNU工具链构建ARM.MINIX嵌入式系统的开发环境1.4.1利用GNU工具链构建嵌入式系统开发环境的优越性GNU-I-具链一般由下面这样一些工具组成:作为编译器的C,CC(C,CC本身作为编译器集合包含了对多种语言的支持,这里仅讨论其中的C编译器)、Bintuils软件包中作为汇编器的GAS、作为连接器以及定位工具的GLD和可以对二进制目标文件进行变化处理的其他工具、作为标准C库的newlib(这里需要移植newlib使其支持mimx)或者glibc、作为调试器的GDB。可以

3、按照上述的要求来考查一下基于GNU的工具链是否满足嵌入式系统的开发要求。1.首先,广泛的支持多种体系结构的目标处理器,满足嵌入式系统处理器多样化的特点;只需要进行配置和构造,就可以得到针对各式各样微处理器的编译环境.已经有人实现了GAS对龙芯的支持。2.其次,这个环境支持绝大多数当前流行的主机操作系统,从GNU/Linux,类Unix操作系统到W'mdows的各个版本都有其变种.3.另外,GNU提供了完整一致的工具,基本无需额外考虑与其他外部工具的整合问题。即使这种情况出现了,GNU是开放的,它支持多种开放的目标文件格式,以及调试格

4、式,存在多种形式的开源C标准库可以使用,可以和编译器连接器完美整合.尤其是newlib特别适合于嵌入式系统的应用,它的代码可重入,非常灵活;而且newlib是一个完整的标5兰州大学2008届硕士学位论文准C函数库,满足开发人员对于标准函数的所有要求.而且newlib中定义了相当多针对不同处理器的启动代码,也可以自行配置。4.另外,GNU提供了完整一致的工具,基本无需额外考虑与其他外部工具的整合问题。即使这种情况出现了,GNU是开放的,它支持多种开放的目标文件格式,以及调试格式,存在多种形式的开源C标准库可以使用,可以和编译器连接器完

5、美整合。尤其是newlib特别适合于嵌入式系统的应用,它的代码可重入,非常灵活t而且newlib是--个完整的标准C函数库,满足开发人员对于标准函数的所有要求。而且newlib中定义了相当多针对不同处理器的启动代码,也可以自行配置。5.GCC编译器可以设置不同的优化等级,按照需求进行代码优化;6.GCC编译器也可以对代码大小做可选的优化,满足嵌入式系统较d、ROM空间的特征要求;7.GCC编译器支持内嵌汇编代码,可以方便的利用这个扩展特性在C语言代码中嵌入汇编代码以提高性能或者减小体积;8.GCC可生成汇编代码而不是直接生成目标代码

6、,方便了用户对于代码的手工优化;最后一点,GNU的开源特性,给系统的开发人员提供了最大的自由度。一1.4.2利用GNU工具链构建A砌讧.MINIX嵌入式系统的开发环境从头设计和开发针对arm的lrIini)【嵌入式系统的交叉编译器,交叉汇编器和交叉连接器是一项庞大的工程,也是毫无必要得。而综合上面可以看到GNUI具链功能强大已经实现了对多种体系结构的支持,其中arm-linux平台的交叉编译工具链更是不乏开源的软件包和成熟的商品化的开发环境。以GNU/Linux为宿主机,选择开放源码的GCC进行移植,构建针对minix的交叉开发环境

7、是一条捷径。6兰州大学2008届硕士学位论文第2章目标平台和GNU工具链本章介绍目标平台和GNUT具链.2.1ARM体系结构和minix的a.out格式我们的项目目标是将mimx系统移植到UP-NETARM2410.S目标板上,这是一款以ARM920T为核心的目标板。因此目标平台命名为ann-mimx。要构建针对目标平台的交叉编译系统必须清楚了解目标机器ARM的体系结构,以及minix下的二进制目标文件格式。2.1.1ARM体系结构ARM(AdvancedRISCMachines),顾名思义,是采用高端RISC架构的计算机。它既是一

8、个公司的名称。也可以认为是一类技术的名称,或是一类处理器的总称(见参考文献【2】).本论文中除非特别指明,提及ARM时指的是_ARM处理器。作为一种RISC体系结构的微处理器,ARM微处理器具有RISC体系结构的典型特征。还具有如下增

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。