谷惠敏
(商丘医学高等专科学校 河南 商丘 476100)
嵌入式实时软件在计算机软件设计中的运用分析
谷惠敏
(商丘医学高等专科学校 河南 商丘476100)
嵌入式软件因其专业性与实时处理的特点,在计算机软件设计中被广泛的运用,直接影响着计算机软件设计的质量,本文基于推广嵌入式实时软件在计算机软件设计中的应用,采用理论叙述方法,细述探讨了嵌入式实时软件在计算机软件设计中的运用原理,并以此为依据,细述了基于嵌入式实时软件进行计算机软件开发和设计需注意的要点,进而对计算机软件设计嵌入式实时软件的运用进行了系统探讨,以供业内人士交流探讨。
嵌入式实时软件;计算机软件设计;软件开发;运用
在计算机软件设计过程中应用嵌入式实时软件,有助于简化设计流程,提升设计效率和设计质量,具有一定的研讨价值。文中先是对嵌入式实时软件以及其在计算机软件设计中的运用进行介绍,之后再重点从计算机软件设计嵌入式实时软件的设计和开发以及计算机软件设计嵌入式实时软件的运用,进行论述。
1.1嵌入式实时软件概述
所谓嵌入式实时软件是以计算机技术为基础设计的一种软硬件可裁剪,且对系统功能、可靠性、成本、体积、功耗均有严格要求的应用型计算机系统。近些年来,随着科学技术水平的不断提升机信息化进程的推进,计算机渐而融入我们的日常生活,由此,相关的计算机软件也开始在诸多领域得到广泛应用。这之中,嵌入式实时软件因为其涉及范围广泛、稳定性好、操作简单、价格合宜而颇受业内人士肯定。实质上,不仅如此,嵌入式实时软件在计算机软件设计中应用还可提高设计出的软件产品的质量,亦能弥补软件产品缺陷。故而可最大限度的满足软件使用者对于计算机软件的需求,同时也可保证软件在计算机软件设计中得到有效应用。
1.2嵌入式实时软件在计算机软件设计中的运用原理
嵌入式实时软件同通用计算机软件之间存在显著的差异,这也是导致嵌入式使用软件在计算机软件设计中运行原理有异的根本原因。在计算机软件设计中,嵌入式实时软件可以在缓存机制、动态分配、预测指令执行等设计中产生积极的良性作用,即在改变计算机软件实时操作性的同时也增加了软件设计的应用性和安全性。虽然同通用计算机系统存在差异,但是两者在设计时均需同时考量软件及硬件的设计。其中,软件包含操作系统软件(OS)和应用程序编程,硬件包含处理器或微处理器、存储器、外设器件、I/O端口、图形控制器等。在计算机软件设计的应用中,由应用程序来控制系统的运作和行为,操作系统控制应用程序编程与硬件的交互作用。此外,嵌入式微处理器的设计是嵌入式实时软件设计的核心,目前设计方案中多应用ATglRM9200处理器。而对于软件模块的设计也是设计重心,其设计质量的优劣直接关系到计算机软件设计的安全性、通用性和可操作性。
在计算机软件设计中运用嵌入式实时软件对于软件设计而言,不仅可以提高软件设计效率,还可以简化计算机开发流程。同通用计算机系统不同,后者开发无需特定的开发环境,而计算机软件设计嵌入式实时软件的开发通常财通交叉开发的方式。但是前者设计和开发均相对较为简单,实施步骤为:第一,分析计算机软件系统的需求;第二,根据需求开始软件系统设计并编写应用程序代码;第三,测试软件,分析测试结果,完善计算机软件设计。显然,嵌入式实时软件开发流程简便,这无疑为提升计算机软件的稳定性提供了保障。不过,在软件设计过程中,也应当注意落实软件数据初始化和格式化等工作的稳步施行。由上可知,在运用嵌入式实时软件进行计算机软件设计时,设计人员应当熟练掌握基于嵌入式实时软件进行软件开发方面的相关知识 (见图1),尽量避免人为设计的失误。例:在进行计算机软件设时脱离于计算机硬件结构。这样的疏忽会极大地降低软件设计对硬件的粘性和依赖性,必定会影响软件系统在计算机应用过程中的可靠性和实用性。故而,在计算机软件设计过程中,需尽量规避软件同硬件两者之间脱离,以此提高计算机软件在应用过程的操作性能。
图1 嵌入式软件开发知识体系结构图
嵌入式实施软件在计算机软件设计中的运用是提升计算机软件系统设计科学性、功能性和可操作性的一种良好方式。下文将细述嵌入式实时软件在计算机软件设计中的运用步骤,以为嵌入式实时软件更为合理的运用提供参考依据。
3.1划分计算机软件并行任务
嵌入式ROTS微内核是开发计算机软件应用程序的基础平台,对于计算机系统而言,是保障系统功能实现的关键所在和重要基石,而这同嵌入式ROTS微内核的结构(见图1)和多项功能(资源管理、任务管理及控制、任务间通信、任务互斥与同步等)不无关系。在运用嵌入式实时软件进行计算机软件设计时,先行将计算机软件系统划分为一个个独立的任务,不仅可以简化后期软件设计的流程,同时也为嵌入式ROTS模型的优化完善及系统运行的协调修正提供了良好条件。
图2 嵌入式实时操作系统结构图
基于嵌入式实时软件划分计算机软件系统并行任务时,首先应当对计算机应用程序的数据转换进行详实分析和计算,续而根据分析结果确定数据执行的顺序,最后以计算机应用系统数据通信的异步关系为依据,将一个数据转换或多个数据并行转化作为一个任务进行划分。其中,关于应用系统数据通信的异步关系应当考量两个方面:其一,系统内部功能。根据系统功能完成的时间或任务之间的紧密程度进行任务划分。如:将同事件激活任务一起完成的系统功能划分在一起,作为一个任务;抑或将经由统一事件驱动的任务合并划分为一个任务。其二,I/O功能。在现代计算机系统中,对I/O设备的控制需要计算机应用程序轮询,但是因为轮询需要占用大量CPU资源,为了保证I/O驱动正常的前提下满足计算机软件系统的使用性,故而多采用中断驱动的方式。
3.2存储映像布局并组织任务
在将系统应用功能划分为一个个相对单独的任务之后,则需开始进行任务组织,任务组织方式的选择主要取决于单独任务之间的逻辑关系和数据转换关系,而任务的管理功能和组织功能则同嵌入式操作系统存在紧密联系。其中,嵌入式操作系统的操作系统并不完整,因此需同应用程序驻留或保存在ROM或FLASH中。而为了保证操作系统可以在后续应用中稳定运行,则需要在任务组织时合理安排并优化计算机软件系统布局。针对软件系统布局,应当将应用系统存储映像的布局以及从物理零地址调取的存储器作为考虑的重点。系统加电之后,在物理零地址上设置可以执行的代码。一般情况而言,嵌入式应用系统是从ROM开始启动,ROM在初始化时位于嵌入式应用系统的物理零地址,该地址之后会存放计算机系统的中断向量。这种方式的优势在于其最为简单便捷,可以有效提升处理器调取中断向量的速度。另外还有一种组织方式是分散载入法,本次暂按不表。
3.3应用实时性与任务调度
基于嵌入式实时软件进行计算机软件设计,需重点考量嵌入式实时应用系统的实时性。系统实时性分为软实时性和硬实时性。其中,软实时性要求系统需在一定时限之内完成任务,但是可以出现一定范围内的时间延迟;硬实时要求系统必须在一定时限范围内完成任务,如果超过时间将会造成不利后果。这边要求计算机软件系统任务的调度方式的选择应当尽量采用基于优先级的可抢占调度方式(见表3)。该种方式是指微内核会根据系统任务的紧急情况对软件系统任务进行是否优先处理的安排,并依据优先等级不同划分系统任务,以此减少优先任务的响应时间。
图3 抢先式多任务调度示意图
3.4任务与时钟间通信
提供时钟服务是每个计算机软件在设计过程中均应当考虑到的问题之一,同样,嵌入式实时软件也存在时钟,常以“lick”来标记。因此,基于嵌入式实时软件进行计算机软件设计时,需设计计算机软件系统的时间服务,保证每个人物具备自己的时钟,以便定期控制执行动作。许多嵌入式实时软件操作系统都具有邮箱、信号量、信号、队列等机制,以保障软件资源和系统任务之间通信与同步的实现。
3.5系统初始化
在运用嵌入式实时软件进行计算机软件开发和设计时,如此促使系统初始化并执行是需要重点考虑的另一个问题。位于嵌入式操作系统微内核和底层硬件之间的硬件抽象层是编写系统初始化代码之处,主要负责和实现系统的引导和初始化。同通用计算机软件系统不同,嵌入式实施软件并不具有BIOS,故而,软件开发者需要通过设计方案实现系统引导和初始化代码,经由一系列固定指令序列执行诸如定义入口点、初始化存储系统、设置异常中断向量、初始化RAM变量等系统初始化工作。最后,通过转移指令或设置指令加载嵌入式软件系统,进入系统任务调度即可。
综上所述,基于嵌入式实时软件,利用分层结构进行计算机软件设计,不仅增加了系统设计的灵活性,还简化了系统设计的复杂性,值得推广应用。本文从嵌入式软件出发,简析了嵌入式实时软件在计算机软件设计中的运用及原理,并就计算机软件设计嵌入式实时软件的设计和开发进行讨论,从划分计算机软件并行任务、存储映像布局并组织任务、应用实时性与任务调度、任务与时钟间通信、系统初始化,5个方面重点阐述了计算机软件设计嵌入式实时软件的运用。
[1]马宇驰.计算机软件设计中嵌入式实时软件的应用探析[J].信息通信,2014(4):104.
[2]李允,桂盛霖,陈更,等.嵌入式实时软件模型开发环境研究[J].计算机科学,2012(z3):226-229,244.
[3]李禹松.嵌入式实时软件在计算机软件设计中的应用[J].硅谷,2013(18):16,37.
[4]王妍,黄山.试论计算机软件设计中嵌入式实时软件的应用[J].青年科学(教师版),2014(11):55.
[5]张岚.嵌入式实时软件在计算机软件设计中的应用[J].计算机光盘软件与应用,2015(1):71,73.
[6]冯川放,马季.基于嵌入式LINUX系统的实时进程调度算法的研究[J].计算机应用与软件,2014(12):278-282.
The application of embedded real-time software in a computer software design analysis
GU Hui-min
(Shangqiu Medical College,Shangqiu 476100,China)
The characteristics of embedded software for its professionalism and real-time processing,is widely used in computer software design,directly affecting the quality of computer software design,this article is based on promoting the application of embedded real-time software in a computer software design,use the theory of narrative method,elaborate discussed the application of embedded real-time software in a computer software design principle,and on this basis,elaborate the based on embedded real-time software for computer software development and design,the main points of the need to pay attention to the use of computer software design of embedded real-time software system is discussed in this paper,for the industry communication.
embedded real-time software;computer software design;software development;using
TN0
A
1674-6236(2016)09-0169-03
2015-06-02稿件编号:201506036
谷惠敏(1979—),女,河南商丘人,硕士,讲师。研究方向:计算机技术及应用。