文档介绍:嵌入式系统(ARM)开发平台选型论文
摘要:本文从实际应用的角度出发,重点对Linux嵌入式系统开发中硬件平台选型问题进行论述。关键词:嵌入式系统;ARM;Linux操作平台 1嵌入式Linux系统嵌入式系统是软件摘要:本文从实际应用的角度出发,重点对Linux嵌入式系统开发中硬件平台选型问题进行论述。
关键词:嵌入式系统;ARM;Linux操作平台
1嵌入式Linux系统
嵌入式系统是软件和硬件的综合体。它是以应用为中心,以计算机技术为基础,软硬件可裁减,从而能够适应实际应用中对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。Linux具有强大的功能,很好地支持了各种现代编程技术,将Linux应用于嵌入式系统的开发有如下一些优点:
1)内核完全开放,使得设计者可以自己设计和开发出真正的硬件实时系统和软件实时系统。
2)Linux本身具有一整套工具链,使用者可以较容易地自行建立嵌入式系统的开发环境和交叉编译及运行环境。
3)强大的网络支持,可以利用Linux的网络协议栈将其开发成为嵌入式的TCP/IP网络协议栈。
2硬件平台的选择
设计者在选择处理器时要考虑的主要因素有:
(1)处理性能。处理器的性能取决于多个方面的因素,如时钟频率、内部寄存器的大小、指令是否对等处理所有的寄存器等。如果是面向高性能的应用设计,那么建议考虑某些新的处理器,其价格相对低廉,如IBM和MotorolaPooryManagementUnit,存储器管理单元)的CPU,要使用uClinux操作系统;而相对高端的硬件,则可以用普通的嵌入式Linux操作系统。uClinux和普通的Linux有各自的优势和缺点。可用于嵌入式系统软件开发的操作系统很多,但关键是如何选择一个适合开发项目的操作系统。笔者认为应该从以下几点进行考虑。
①操作系统提供的开发工具:有些实时操作系统(RTOS)只支持该系统供应商的开发工具,因此还必须向操作系统供应商获取编译器、调试器等;而有些操作系统使用广泛,且有第三方工具可用,因此选择余地较大。
②操作系统向硬件接口移植的难度:操作系统到硬件的移植是一个重要的问题,是关系到整个系统能否按期完工的一个关键因素。因此,要选择可移植性程度高的操作系统,避免操作系统难以向硬件移植而带来的种种困难,加速系统的开发进度。
③操作系统的内存要求:均衡考虑是否需要额外花钱去购买RAM或EEPROM来迎合操作系统对内存的较大要求。
④开发人员是否熟悉此操作系统及其提供的API。
⑤操作系统是否提供硬件的驱动程序。
⑥操作系统的可剪裁性。有些操作系统具有较强的可剪裁性,如嵌入式Linux、Tornado/Vxodula-2和Java等。Ada语言定义严格,易读易懂,有较丰富的库程序支持,目前在国防、航空、航天等相关领域应用比较广泛。C语言具有广泛的库程序支持,是目前在嵌入式系统中应用最广泛的编程语言,在将来很长一段时间内仍占重要地位。C++是一种面向对象的编程语言,目前在嵌入式系统设计中也得到了广泛的应用。Modula-2定义清晰,支持丰富,具有较好的模块化结构,在教学科研方面有较广泛的应用。Java语言相对年轻,但有很强的跨平台特性,目前发展势头较为强劲