嵌入式系统软件开发环境_3.主要功能和典型产品

1.嵌入式系统软件开发环境的主要功能

         由于嵌入式系统的软件开发通常采用的是交叉开发方式,因此其开发环境中的工具应支持这种交叉开发的特点。嵌入式系统软件开发环境的功能应覆盖嵌入式软件开发过程,即编码过程、编译过程、构建过程、下载过程、调式过程和运行过程等。因此,开发环境的主要功能包括如下:

  • 工程管理功能:工程管理支持将嵌入式软件开发中的各类资源(源代码、目标码、数据文件、配置文件和脚本文件等)以工程项目的方式组织管理,提供规范的项目向导、预定义项目模版以及资源管理能力,同时为其他工具提供操作入口。
  • 编辑器功能:为嵌入式软件开发人员提供对源文件、配置文件、脚本文件等资源进行编辑的工具。编辑器除提供基本的文本编辑功能外,还应提供高级语言(如:C/C++)源码编辑、脚本文件编辑和XML配置编辑等高级功能。
  • 构建管理功能:构建(Make)是指将一个工程中的放在若干个目录中、不同类型的多个源文件进行智能批处理的工具。Make是依据makefile中定义的一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译的规划,对工程项目进行自动化批量编译的过程。
  • 编译/汇编器功能:编译(汇编)器是在宿主机上运行,能够编译出在嵌入式设备上运行的可执行代码的工具。通常,在嵌入式开发环境中均采用国际上GNU开源社区的GCC编译环境,它提供将C/C++源文件、汇编文件、链接文件翻译为二进制可执行文件。
  • 配置功能:配置功能是面向嵌入式系统的主要管理功能,根据目标系统需求,为系统进行定制化管理的工具。针对嵌入式系统的可伸缩性、通用性的特点,通过配置工具可形成不同的配置构型,以适应不同的应用场景。
  • 调试器功能:调试是嵌入式软件开发不可或缺的一个环境,也是开发环境最为关键的一项功能。调试器提供对嵌入式软件的源码级、汇编级高级符合交互式调试能力。支持在宿主机上通过加载或介入方式进入软件的运行现场,结合源代码,支持暂停或恢复软件的运行实现对软件运行的控制。调试器一般提供加/卸载、运行、停止、断点、单步、修改、查询等调式命令。通常,在嵌入式开发环境中均采用国际上GNU开源社区提供的GDB调试工具。
  • 目标机管理功能:目标机管理的主要功能是负责开发环境对连接的多个目标机进行管理和数据交换,为其他工具提供稳定、可靠度宿主机与目标机间的通信服务。他指出建立和维护宿主机与目标机之间的通信连接,支持宿主机与目标机之间一对多、多对一、多对多数据传输方式。目标机管理一般采用面向服务的目标机通信框架(Target Communication Framework,TCF)架构或面向通道共享的调试服务框架(Debugger Services Framework,DSF)架构。
  • 仿真器功能:仿真器功能主要是解决嵌入式软件的软硬件并行设计问题。        

2.典型嵌入式开发环境

2.1基于GCC开源工具的软件开发环境

         GCC是一个编译器集合,是GNU Compiler Collection组织提供的一套面向嵌入式领域的交叉编译环境。GNU GCC的基本功能包括:

  • 输出预处理后的C/C++源程序;
  • 输出C/C++源程序的汇编代码;
  • 输出二进制目标文件;
  • 生成静态库;
  • 生成可执行程序;
  • 转换文件格式。

        GNU编译器套件主要包括编译器(GCC)、汇编器(AS)、连接器(LD)、库管理器(AR)、Make以及其他使用程序。可支持C、C++、Objective-C、Fortran、Java、Ada和Go等语言前端,也包括了这些语言的库(如libstdc++、libgcj等)。 

2.2Workbench软件开发环境

         Workbench是由美国WindRiver公司研制的一款嵌入式软件开发环境,是面向本公司VxWorks操作系统产品配套的开发环境。Workbench集成了WindRiver自己研制的一款高安全交叉编译器Diab,此款编译器较GCC而言,其编译效率更高、语义更严谨、代码更安全。

2.3MULTI集成开发环境

         MULTI是美国有GreeHills公司研制的一款具有调试、编译器和闪存编程工具的嵌入式集成开发环境(IDE),主要包括AUTOSAR集成、性能分析项目构件器、代码覆盖、运行时错误检查、MISAR C代码检查和DoubleCheck集成式静态代码分析器等功能。

  • 16
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 《嵌入式Linux系统开发第二版》是一本关于嵌入式Linux系统开发的技术书籍。本书通过详细介绍Linux系统的基本原理、嵌入式设备的硬件特点、系统启动过程等内容,帮助读者全面了解嵌入式Linux系统的开发过程。 该书分为八个部分,分别介绍嵌入式系统、Linux内核、系统编程、嵌入式Linux应用程序的开发等内容。首先,书中介绍了嵌入式系统的概念、特点以及常见的嵌入式设备。其次,通过深入讲解Linux内核的架构、源代码分析和裁剪等内容,读者可以学习到如何理解和定制Linux内核,以满足嵌入式设备的需求。 然后,本书介绍了Linux系统的启动过程,包括引导加载程序、内核启动、设备驱动程序加载等内容,帮助读者全面了解系统启动的流程。接下来,通过示例代码和实践项目,读者可以学习到如何进行系统编程、进行应用程序的开发和调试。 此外,本书还介绍了嵌入式系统的调试技术、电源管理、测量和性能优化等内容,使读者能够更好地理解和解决嵌入式系统开发中的实际问题。最后,作者还对未来嵌入式系统发展的趋势和前景进行了展望。 总的来说,该书通过系统全面的内容和实践项目,为读者提供了一个全面了解嵌入式Linux系统开发的窗口。无论是初学者还是有一定经验的工程师,都能从中获得宝贵的知识和经验。无论是从事产品开发还是从事技术研究,都能受益于这本书的学习。 ### 回答2: 《嵌入式Linux系统开发第二版》是一本详细介绍嵌入式Linux系统开发的权威性书籍。本书全面讲解了嵌入式系统的概念、嵌入式Linux系统架构以及系统的开发过程。 该书分为八个章节,从嵌入式系统基础知识开始,介绍了硬件平台、操作系统、设备驱动以及应用程序开发等方面的内容。全书以理论和实践相结合的方式,深入浅出地讲解了嵌入式系统的各个组成部分。 书中首先介绍了嵌入式系统的基本概念,包括硬件平台的选择、系统性能的优化和资源管理等。接着详细介绍了Linux操作系统架构和内核编译的过程,读者能够了解到嵌入式Linux系统开发的基本原理和方法。 在设备驱动方面,本书对各种类型的设备驱动进行了介绍,并详细讲解了驱动程序的编写和调试过程。此外,还提供了实例模块和代码,读者可以通过实践来加深对驱动开发的理解。 在应用程序开发方面,书中涵盖了嵌入式系统典型的应用程序开发案例,如网络应用、图形界面开发以及多媒体应用等。读者可通过实例代码和案例分析,掌握开发常见应用程序的方法和技巧。 总之,《嵌入式Linux系统开发第二版》是一本系统全面且实用的嵌入式开发指南,对于那些对嵌入式系统开发感兴趣的读者来说是一本受益匪浅的书籍。无论是初学者还是有一定经验的开发人员,都能从中汲取宝贵的知识和经验,提高自己在嵌入式系统开发领域的能力。 ### 回答3: 《嵌入式Linux系统开发第二版》是一本关于嵌入式系统开发的书籍。这本书主要介绍了嵌入式系统开发的基础知识和技术,以及如何在Linux操作系统上进行嵌入式系统开发。 首先,本书介绍了嵌入式系统的基本概念和原理,包括硬件和软件架构嵌入式系统的特点和应用领域等。然后,本书详细讲解了嵌入式Linux操作系统的基本知识,包括Linux内核的组成和原理、设备驱动程序的编写和调试、文件系统的管理和优化等。 本书还介绍了如何进行嵌入式系统的开发和调试,包括基于交叉编译工具链的开发环境搭建、开发板的选择和配置、开发和调试工具的使用等。此外,本书还介绍了如何进行网络编程、图形界面开发、多媒体应用开发等相关内容。 本书通过一些实例项目的讲解,帮助读者更好地理解和掌握嵌入式系统开发的技术和方法。同时,本书还提供了一些常用的工具和资源,供读者参考和使用。 总之,《嵌入式Linux系统开发第二版》是一本非常实用和全面的嵌入式系统开发指南,适合嵌入式系统开发工程师和学习者阅读和参考。通过阅读本书,读者可以掌握嵌入式系统开发的基础知识和技术,提高嵌入式系统开发的能力和水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值