嵌入式应用开发的技术分析

2016-12-26 23:30刘乔佳
电子技术与软件工程 2016年22期
关键词:嵌入式系统技术分析

刘乔佳

摘 要

随着嵌入式技术的快速发展,其在人们生活工作的方方面面都得到了广泛的应用,在嵌入式系统开发的过程中只有合理遵循嵌入式产品的开发规律,才能开发出更加高效便捷的嵌入式产品。本文中对嵌入式系统的概念和相关关键技术进行分析,重点阐述了嵌入式系统不同于其他操作系统的特点,并指出嵌入式开发过程中常用的处理方法和过程,在此基础上阐述了嵌入式软件开发的一些技巧,望为相关嵌入式开发人员提供一定的参考。

【关键词】嵌入式系统 嵌入式处理器 应用开发 技术分析

嵌入式系统将计算机硬件与软件进行有效结合,构成可完成特定功能或任务的计算装置,通常情况下嵌入式系统是系统或大型电子设备的一部分,其工作时需要与外界进行信息交互,在规定的时间约束内自主完成操作任务。嵌入式的软件主要实现相关功能并保证系统具有一定的灵活性,而硬件主要是满足性能需要和安全需要。随着微电子技术的不断成熟,以及计算机技术向非计算机领域的进一步渗透,嵌入式系统得到了社会各界的广发认可,并且其展现出越来越高的市场回报,在嵌入式技术发展的过程中硬件部分的上升幅度正在逐渐缩小,而在嵌入式软件上投入的费用正在大幅增加,相关专家预测在不久的将来嵌入式技术将在计算机领域占到重要的地位。

1 嵌入式系统的常用设计方法

相对于计算机应用设计而言,嵌入式应用开发具有更加繁琐的设计流程,其设计的方面也更加广泛,同时嵌入式技术也正逐渐向着“精”“小”的方向发展,这就为嵌入式应用的发展增添了更多难度,因此这就需要对嵌入式系统的设计技术进行全面的研究。

1.1 软件与硬件的协同设计

嵌入式系统的应用开发与当前硬件所能提供的支持和当前软件技术所能提供的控制紧密相关。在应用开发的过程中采用先进的硬件技术不仅仅可以提供更加的性能支持,同时还能精简所用零件,有效利用系统的开发空间。在软件语言选择的方面,应用更加精准的语言形式可以提高代码的紧凑型恶化运行效率,从而提高了软件开发进程,保证了嵌入式系统的开发质量。嵌入式系统是硬件与软件的混合体,因此在进行进行嵌入式应用开发的过程中,需要坚持软件与硬件系统协同设计的原则,不仅需要满足系统所需要的性能要求,还需要综合考虑到嵌入式硬件与软件的任务分工。

1.2 构件的模块化设计

嵌入式系统在应用开发的过程中常采用模块化的设计方法,其中组成各个软件的基本部分被称为构件,构件具有结构简单、声明分离和功能分装等特点,通过构件组装的方法进行嵌入式应用的开发可以在保证软件质量的同时大大提高软件开发的效率。事实上在进行实时的嵌入式应用开发的过程中,模块化的设计方法是将功能、时间和容错进行有效整合,并且在组合后更需要可以满足系统的容错需要,因此在进行嵌入式开发的过程中还需要其他配套的技术、工具和环境支持。

1.3 设计定式和框架

对于刚接触嵌入式系统应用开发的技术人员,不知道如何采用最为适宜的软件开发技巧,从而造成软件开发的困难。为了缓解人们在进行嵌入式应用开发的困难,人们提出了软件设计的定式和框架,其中定式是用来解决在特定上下文中开发软件所遇到的问题,并且定式支持软件结构和设计的重用,该方法可以解决在特定领域里建立应用而产生的问题,特别是对于小型结构的归档有很好的效果。框架是可重用的、结构相对完整的应用,用来为一类的相关应用提供一个可重用结构的部件集合,它支持详细设计和代码的重用以方便人们使用其构造相关的应用。在嵌入式应用开发的过程中,应用设计定式和框架技术,能够有效改进软件质量,明显缩短软件开发的时间,更有利于软件实现开发的自动化。

2 嵌入式应用开发支持研究

嵌入式应用开发的典型形式是利用宿主机进行目标机软件的开发与仿真,并用交叉调试器在监控程序或操作系统的支持下进行实时的分析与调试,最后完成通过特定环境在目标机上运行。

2.1 嵌入式应用开发的实时编程

在进行嵌入式实时应用开发的过程中,需要通过编程语言完成对实时嵌入式软件的实现,并且编程语言能够有相应的语言特征或手段支持其实现,或是能够用操作系统来满足实时嵌入式的特殊要求。在进行嵌入式软件开发的过程中需要有一个稳定的编程环境,其中关键问题是实现交叉编译,考虑到我国现阶段的嵌入式发展特点,技术人员可以借鉴国外成熟的技术,并在此基础上改造成适合我国国情的交叉编译和相应开发环境。

2.2 嵌入式应用开发的实时内核

在进行嵌入式实时内核设计的过程中需要充分考虑到轮询、协同、中断驱动及前/后台工作等性能需求,能全面管理任务、中断、时间和处理器等操作,并要求可以用高级语言实现功能,设计出的实时内核需要满足紧凑性好、效率高、可移植性强等特点。此外,实时内核的多处理器需要支持包括同构和异构在内的系统,同时其程序需要具有补偿不同处理器之间结构差别的功能,从而实现一个处理器族到另一个处理器族的转换。

2.3 嵌入式应用开发的实时数据库

嵌入式实时系统的正确性不仅依赖于设计时的逻辑特性,同时还需要依赖于这些结果的时间特性,因此在进行数据库的选择时可以选择具有并行数据处理的分布式数据库,在满足逻辑一致的同时还需要满足事物处理完成时间的约束及数据访问和更新时间约束等。在进行实时数据库设计的过程中,需要保证在规定时间内处理事物的效率同时还要保持数据库的一致性,就需要在调度算法时同时考虑到嵌入式的硬件资源和数据资源的调度。由于实时数据库与普通数据库存在显著的差异,因此在进行实时数据库设计的过程中不仅需要重新设计调度方法和实物管理,还需要增添通常数据库中不存在的新概念以及对应的新技术。

3 结束语

嵌入式应用开发与以前从事的开发工作并没有本质上的区别,其主要特点是嵌入式每个硬件平台都是独特的,从而导致了一系列附加的开发复杂性,因此在进行嵌入式应用开发的过程中需要格外进行注意。在嵌入式产品被广泛应用的当下,只要嵌入式开发人员遵循嵌入式产品的开发规律,不断适应市场的需求,就一定能开发出越来越多高效便捷的嵌入式产品。

参考文献

[1]Labrosse Jean J.u C/OS-II -源码公开的实时嵌入式操作系统.邵贝贝译[M].北京:中国电力出版社,2001.

[2]Kirk Zurell.嵌入式系统的C程序设计.艾克武等译[M].北京:机械工业出版社,2001.

[3]Tanenbaum Andrew S, Woodhull Albert S,王鹏等译.操作系统:设计与实现(第2版)[M].北京:电子工业出版社,1998.

作者单位

天津现代职业技术学院信息工程学院 天津市 300350

猜你喜欢
嵌入式系统技术分析
办公自动化系统的设计
嵌入式系统课程“中断、异常与事件”教学实践及启示
面向实践创新人才培养的嵌入式系统教学研究
基于大数据的智能数据分析技术
建筑工程混凝土结构施工技术