linux嵌入式系统开发平台选型探讨论文

linux嵌入式系统开发平台选型探讨论文

ID:25443460

大小:61.00 KB

页数:10页

时间:2018-11-20

linux嵌入式系统开发平台选型探讨论文_第1页
linux嵌入式系统开发平台选型探讨论文_第2页
linux嵌入式系统开发平台选型探讨论文_第3页
linux嵌入式系统开发平台选型探讨论文_第4页
linux嵌入式系统开发平台选型探讨论文_第5页
资源描述:

《linux嵌入式系统开发平台选型探讨论文》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Linux嵌入式系统开发平台选型探讨论文摘要:使用Linux进行嵌入式产品开发有一个很大的优势,就是开发资源丰富,且成本低廉;但是,技术路线复杂多样,专业人才相对匮乏是Linux嵌入式系统开发面临的一个难题。本文从实际应用的角度,探讨和研究Linux嵌入式系统开发中的平台选型问题,以期望对各位Linux开发研究者有些许裨益。关键词:嵌入式系统Linux开发平台选型1嵌入式系统与Linux按照电气工程师协会的一个定义:嵌入式系统是用来控制或监视机器、装置或工厂等的大规模系统的设备。具体说来,它是电脑软件和硬件的综合体;

2、是以应用为中心.freel一样快;而它仅使用普通电池供电即可,并且价格很便宜。如果用于工业控制,则对这方面的考虑较弱。④软件支持工具。仅有一个处理器,没有较好的软件开发工具的支持也是不行的,因此选择合适的软件开发工具对系统的实现会起到很好的作用。⑤是否内置调试工具。处理器如果内置调试工具可以大大缩小调试周期,降低调试的难度。⑥供应商是否提供评估板。许多处理器供应商可以提供评估板来验证理论是否正确,决策是否得当。3.2硬件部件选择的其它因素①生产规模。打算做1套?多套?还是规模生产?如果生产规模比较大,可以自己设计和制备硬

3、件,这样可以降低成本。反之,最好从第三方购买主板和I/O板卡。②开发的市场目标。如果想使产品尽快发售,以获得竞争力,此时要尽可能买成熟的硬件;反之,可以自己设计硬件,降低成本。③软件对硬件的依赖性。软件是否可以在硬件没有到位的时候并行设计或先行开发。④只要可能,尽量选择使用普通的硬件。在CPU及架构的选择上,一个原则是:只要有可替代的方案,尽量不要选择Linux尚不支持的硬件平台。4软件平台的选择图1所示的嵌入式软件的开发流程,主要涉及到代码编程、交叉编译、交叉连接、到目标板和调试等几个步骤,因此软件平台的选择也涉及到以

4、下几个方面。4.1操作系统的选择(1)操作系统选择应考虑的因素硬件方案确定之后,操作系统的选择就相对轻松了。硬件的不同,会影响操作系统的选择。低端无MMU(MemoryManagementUnit,存储器管理单元)的CPU,要使用uClinux操作系统;而相对高端的硬件,则可以用普通的嵌入式Linux操作系统。uClinux和普通的Linux有各自的优势和缺点。可用于嵌入式系统软件开发的操作系统很多,但关键是如何选择一个适合开发项目的操作系统。经过多年的开发实践,笔者认为应该从以下几点进行考虑:①操作系统提供的开发工具。

5、有些实时操作系统(RTOS)只支持该系统供应商的开发工具,因此,还必须向操作系统供应商获取编译器、调试器等;而有些操作系统使用广泛,且有第三方工具可用,因此,选择的余地比较大。②操作系统向硬件接口移植的难度。操作系统到硬件的移植是一个重要的问题,是关系到整个系统能否按期完工的一个关键因素。因此,.freellabs公司开发出来的RT-Linux产品已经用在工业控制的很多方面;葡萄牙的Coimbra大学已经利用RT-Linux实现了化工生产控制厂里用来控制反应和程序控制的系统。第三类的产品是将实时性和嵌入式方案结合起来的方

6、案。很多公司都这么做,并且提供集成化的开发方案,如Lineo、TimeSys等等。因此选择操作系统时,要根据自己的嵌入式要求和实时性要求,选择适合自己的嵌入式Linux;同时,和选择硬件的原则一样,如果可能,尽量选择使用普通的嵌入式Linux系统。4.2编程语言的选择编程语言的选择主要考虑以下因素:①通用性。不同种类的微处理器都有自己专用的汇编语言。这就为系统开发者设置了一个巨大的障碍,使得系统编程更加困难,软件重用无法实现。而高级语言一般和具体机器的硬件结构联系较少,多数微处理器都有良好的支持,通用性较好。②可移植性程

7、度。汇编语言和具体的微处理器密切相关,为某个微处理器设计的程序不能直接移植到另一个不同种类的微处理器上使用,移植性差;而高级语言对所有微处理器都是通用的,程序可以在不同的微处理器上运行,可移植性较好。③执行效率。一般来说,越是高级的语言,其编译器和开销就越大,应用程序也就越大、越慢;但单纯依靠低级语言,如汇编语言来进行应用程序的开发,带来的问题是编程复杂、开发周期长。因此,存在一个开发时间和运行性能间的权衡问题。④可维护性。低级语言如汇编语言,可维护性不高。高级语言程序往往是模块化设计,各个模块之间的接口是固定的。当系统

8、出现问题时,可以很快地将问题定位到某个模块内,并尽快得到解决。另外,模块化设计也便于系统功能的扩充和升级。几种开发语言的比较:在嵌入式系统开发过程中使用的语言种类很多,比较广泛应用的高级语言有:Ada、C/C++、Modula-2和Java等。Ada语言定义严格,易读易懂,有较丰富的库程序支持,目前在国防、航空、航天

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

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

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