(参考)第9章基于Linux操作系统的ARM编程.docVIP

(参考)第9章基于Linux操作系统的ARM编程.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 基于ARM9和Linux嵌入式系统设计 本章将学习如何进行嵌入式Linux系统的开发。读完本章,读者将了解以下内容: ● 嵌入式Linux的开发环境。 ● Linux开发工具GNU gcc的使用。 ● GNU make命令和makefile 文件。 ● GDB调试器。 ● 嵌入式Linux下C语言编程。 ● 嵌入式Linux引导程序。 ●嵌入式Linux 下程序调试应用举例。 9.1 嵌入式Linux的开发环境 嵌入式系统是以应用为中心,以计算机技术为基础、软硬件均可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。其发展已有二十多年的历史,国际上也出现了一些著名的嵌入式操作系统,如VxWorks,Palm OS,Windows CE等,但这些操作系统均属于商品化产品,价格昂贵且由于源代码不公开导致了诸如对设备的支持,应用软件的移植等一系列的问题。而Linux作为一种优秀的免费操作系统,近几年在嵌入式领域异军突起,成为了最有潜力的嵌入式操作系统。 9.1.1 嵌入式Linux开发环境建立 Linux操作系统的应用开发环境,一般由目标板和宿主机所构成。目标板用于运行操作系统和系统应用软件,目标板所用到的操作系统的内核编译、应用程序的开发和调试规则需要通过宿主机来完成。开发环境对硬件没有特殊的要求,但是为了双方之间建立连接关系,关键的接口(包括串口、以太网口和USB口等)是必不可少的。 嵌入式Linux 开发环境有几个方案: (1)在WINDOWS 下安装Linux虚拟机后,目前大多情况下使用VWare软件; (2)直接安装 Linux 操作系统。 若使用纯LINUX操作系统开发环境。多数使用的开发环境为RedHat 9,RedHat 9支持中文,并且包含了绝大部分的开发工具,不用担心装了Linux就不能使用WinDows的问题。一般的情况都是用户已经有了WINDOWS 操作系统,再安装Linux,Linux 会自动安装一个叫作GRUB 的启动引导软件,可以选择引导多个操作系统。可现在的微型计算机的CPU速度快,内存容量大,因此,相当多的ARM嵌入式系统的开发人员使用在WINDOWS 下安装Linux虚拟机,这样,开发人员就可在WINDOWS 和Linux两种操作系统下任意切换使用。给开发人员带来许多方便。 9.1.2 嵌入式Linux开发的一般过程 .2.1 Linux开发工具GNU gcc的使用 在Linux平台下Linux操作系统下运行的应用程序编译Linux编译程序GCC在编译应用程序的过程的具体用法GCC的常用选项、模式和警告选项。 Compiler Collection的简称,除了编译程序之外,它还含其他相关工具,所以它能把易于人类使用的高级语言编写的源代码构建成计算机能够直接执行的二进制代码。GCC是Linux平台下最常用的编译程序,是Linux平台编译器的事实标准。同时,在Linux平台下的嵌入式开发领域,GCC也是用得最普遍的一种编译器。GCC之所以被广泛采用,是因为它能支持各种不同的目标体系结构。例如,它既支持基于宿主的开发(简单讲就是要为某平台编译程序,就在该平台上编译),也支持交叉编译(即在A平台上编译的程序是供平台B使用的)。目前,GCC支持的体系结构有40余种,常见的有x86系列、Arm、PowerPC等。同时,GCC还能运行在不同的操作系统上,如Linux、Solaris、Windows等。除了上面讲的之外,GCC除了支持C语言外,还支持多种其他语言,例如C++、Ada、Java、Objective-C、Fortram、Pascal等。 GCC常用模式及选项 gcc最基本的用法是: gcc [options] file... 其中option是以“-”开始的各种选项,file是相关的文件名。在使用gcc的时,必须给出必要的选项和文件名。gcc的整个编译过程分别是:预处理、编译,汇编和链接。 表9.1 gcc编译器中常用选项 常用选项 说 明 -o 表示要求编译器生成指定文件名的可执行文件 -c 表示只要求编译器进行编译生成.o的目标文件,而不要进行链接 -g 要求编译器在编译的时候提供以后对程序进行调试的信息 -E 表示编译器对源文件只进行预处理就停止,而不做编译、汇编和链接 -S 表示编译器只进行编译,而不做汇编和链接 -O 表示编译器优化生成可执行文件 -Wall 生成所有的警告信息 例如,$ gcc -o hello hello.c ,gcc编译器就会生成一个hello的可执行文件。在hello.c的当前目录下执行./hello。 gcc编译器生成的目标文件默认格式为elf(executive linked file)格式,这

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档