嵌入式系统软件开发技术探析

(整期优先)网络出版时间:2019-06-16
/ 2

嵌入式系统软件开发技术探析

张琪

(身份证号码:37152619910313XXXX)

摘要:嵌入式系统是当前工业生产控制领域的重要计算机应用技术。随着工业现代化水平的不断提升,嵌入式系统变得更加繁琐复杂、功能也更加丰富。文章介绍了嵌入式软件开发的特点,以及嵌入式软件应用发展现状,并对嵌入式软件开发技术及其应用进行了研究分析。

关键词:嵌入式系统;软件开发;技术

引言:随着移动通信、光纤通信、单片机、智能终端等技术的快速发展和进步,嵌入式软件在多领域得到了广泛普及和使用。嵌入式软件具有以应用为核心、软硬件可裁剪、轻量级并发线程、低成本微功耗等特点,集成了新时期的微控制器、PLC、Java、.NET等多种技术,已经在整个软件产业中占据了非常重要的地位。

一、嵌入式软件开发的特点

软件代码高质量、高可靠性。尽管半导体技术的发展使处理器速度不断提高,片上存储器容量不断增加,但在大多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。为此要求程序编写和编译工具的质量要高,以减少程序二进制代码长度,提高执行速度。嵌入式软件的核心是系统软件和应用软件,由于存储空间有限,因而要求软件代码紧凑、可靠,大多对实时性有严格要求。

需要交叉开发工具和环境。嵌入式软件必须有一套开发工具和环境才能进行开发,而这些工具和环境一般基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机交叉开发的概念,主机用于程序的开发、调试,目标机作为最后的执行机构。开发时主机和目标机需要交替结合进行。

系统软件的高实时性。在多任务嵌入式软件中,对重要性各不相同的任务进行统筹兼顾和合理调度是保证每个任务及时执行的关键,单纯通过提高处理器速度是无法完成和没有效率的,这种任务调度只能由优化编写的系统软件来完成,因此系统软件的高实时性是基本要求。嵌入式软件应用程序虽然可以没有操作系统直接在芯片上运行,但是为了合理地调度多任务,利用系统资源,系统一般以成熟的实时操作系统作为开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。

二、嵌入式软件应用发展现状

经过多年的发展和应用,嵌入式软件主要分为三个层次,分别是嵌入式操作系统软件、嵌入式支撑软件、嵌入式应用软件。这些软件应用现状如下:

2.1嵌入式操作系统软件

嵌入式操作系统是一种用途广泛的系统软件,其主要负责嵌入式硬件资源分配、协调调度、并发控制等功能,经过多年的发展,嵌入式操作系统已经诞生了VxWorks、WindowsCE、pSOS、PalmOS、QNX、Linux、LynxOS等多种软件,这些软件为工业控制、国防军工、电力通信、政企单位提供了强大的信息化支撑。

2.2嵌入式支撑软件

嵌入式支撑软件主要用来支持软件开发,这些工具包括嵌入式数据库、QT开发工具、J2ME开发平台等。嵌入式数据库是人们为了适应现代移动计算、智能终端而提出的一种微型数据库,可以支持某种具体的应用,运行于各类型的嵌入式设备中,目前,嵌入式数据库系统经过多年的研发,已经诞生了SQLite数据库、Sybase数据库、Oracle数据库等,为嵌入式软件开发提供了更加有效的支持力。

2.3嵌入式应用软件

嵌入式应用软件是指针对某一固定领域或平台开发的计算机软件,这些嵌入式软件属于轻量级、多线程、并发性应用程序,能够达到用户的预期计算和服务目标。由于嵌入式应用软件在处理时间和精度上存在较多的要求,因此嵌入式应用软件与普通软件存在较大的差别,不仅要求具有较高的准确性、安全性和稳定性,还要尽可能地满足通讯处理、文字处理、多媒体处理、智能机交互、Email收发等功能。

三、软件开发基本方法

嵌入式软件开发方法有许多,基本方法只有一个,相关人员要将其作为模板和基础。该基本方法分为三步,其一按照软件开发要求,做好开发场所以及开发材料等方面的准备,使环境适宜软件开发,研究人员还要对开发步骤进行检查和熟悉,使软件开发按部就班进行。其二嵌入式软件开发中需要关注的有驱动程序和应用程序,相关研究人员要熟练掌握相关知识,并进行多次测试,从中筛选有价值的知识和技能。其三利用编程或模型来灵活应用各种软件开发知识和节能方法,从而使嵌入式软件更加完善。

在嵌入式软件正式开发中,相关人员还要对该软件的具体应用工程进行研究,以其应用对象为参考指标,处理核心硬件和软件之间的关系,从而使软件整体的控制功能更强。另外还要合理安排存储器以及输入输出接口的位置,使其与其他组成部分构成一个整体。

四、嵌入式软件开发技术

嵌入式软件与软硬件资源关系非常密切,因此软件开发涉及的关键技术非常多,下面对几种嵌入式软件开发关键技术进行了阐述。

4.1微控制器

嵌入式软件部署于智能终端,这些硬件终端具有体积小、重量轻、移动便携等优势,因此其研发和制造过程中需要使用微控制器。微控制器是一种大规模的集成电路,能够输入输出多种指令,并且具有较强的可推广性,实现了智能终端的并发控制运行。目前,微控制器经过多年的研究,已经诞生了很多种类型,比如华为海思系列、高通系列等,这些处理器的时钟处理频率更快更高,因此可以更好地承载各类型的应用软件。

4.2canvas绘图功能

嵌入式软件开发过程中,需要利用虚拟现实、图像处理技术实时绘制图像,以便将实体目标模型快速化渲染出来,并提供给用户浏览。因此,嵌入式软件运行过程中嵌入了canvas绘图功能,利用先进的绘图管理功能能够支持3D绘图功能,并且有效支持图像的旋转、移动、缩放等图片操作,降低互联网的传输带宽占用率,提升了图片的显示精确度。

4.3HTML5技术

HTML5技术提供了一种更加适用于嵌入式软件开发的标签和样式显示模式。HTML5技术提供了三种非常重要的在线存储和处理机制,分别是IndexedDB机制、ApplicationCache机制和WebStorage机制。IndexedDB是HTML5独特的数据存储机制,其可以使用本地数据库存储大容量的数据,这些数据多采用关系结构模式。ApplicationCache是一种网页缓存机制,其可以通过定义一个称谓manifest的文件,在浏览器中下载缓存的网页文件,并且可以将数据以文件为单位存储到本地数据库。WebStorage离线存储机制可以看做是加强型的Cookie,其不会受到数据大小的影响,并且具有较好的弹性及架构,可以将数据写入到移动设备的ROM中,在关闭浏览器之后,还可以再打开,恢复相关的数据,以便能够实现高效率的数据读写。

五、结束语

嵌入式软件开发基于各种理论知识和应用设想,相关人员要通过各种开发必备知识,掌握系统软件的基本构成,然后对每层组成部分进行细致建设。该软件的主要功能是控制,相关人员不仅要合理设计系统中的控制模块,还要保证执行机构的质量,两者相结合,嵌入式软件的自动化控制功能才会得到强化。

参考文献:

[1]赵亚娟.计算机软件JAVA编程特点及其技术研究[J].数字技术与应用,2016(1):113-113;

[2]孙伟峰,李文龙.浅谈嵌入式系统的开发与应用[J].卷宗,2017(11);

[3]邓晓航.浅析嵌入式系统关键技术与开发应用[J].电脑迷,2016(9):44-44。