谷惠敏
(商丘醫(yī)學(xué)高等??茖W(xué)校 河南 商丘 476100)
嵌入式實時軟件在計算機軟件設(shè)計中的運用分析
谷惠敏
(商丘醫(yī)學(xué)高等??茖W(xué)校 河南 商丘476100)
嵌入式軟件因其專業(yè)性與實時處理的特點,在計算機軟件設(shè)計中被廣泛的運用,直接影響著計算機軟件設(shè)計的質(zhì)量,本文基于推廣嵌入式實時軟件在計算機軟件設(shè)計中的應(yīng)用,采用理論敘述方法,細述探討了嵌入式實時軟件在計算機軟件設(shè)計中的運用原理,并以此為依據(jù),細述了基于嵌入式實時軟件進行計算機軟件開發(fā)和設(shè)計需注意的要點,進而對計算機軟件設(shè)計嵌入式實時軟件的運用進行了系統(tǒng)探討,以供業(yè)內(nèi)人士交流探討。
嵌入式實時軟件;計算機軟件設(shè)計;軟件開發(fā);運用
在計算機軟件設(shè)計過程中應(yīng)用嵌入式實時軟件,有助于簡化設(shè)計流程,提升設(shè)計效率和設(shè)計質(zhì)量,具有一定的研討價值。文中先是對嵌入式實時軟件以及其在計算機軟件設(shè)計中的運用進行介紹,之后再重點從計算機軟件設(shè)計嵌入式實時軟件的設(shè)計和開發(fā)以及計算機軟件設(shè)計嵌入式實時軟件的運用,進行論述。
1.1嵌入式實時軟件概述
所謂嵌入式實時軟件是以計算機技術(shù)為基礎(chǔ)設(shè)計的一種軟硬件可裁剪,且對系統(tǒng)功能、可靠性、成本、體積、功耗均有嚴格要求的應(yīng)用型計算機系統(tǒng)。近些年來,隨著科學(xué)技術(shù)水平的不斷提升機信息化進程的推進,計算機漸而融入我們的日常生活,由此,相關(guān)的計算機軟件也開始在諸多領(lǐng)域得到廣泛應(yīng)用。這之中,嵌入式實時軟件因為其涉及范圍廣泛、穩(wěn)定性好、操作簡單、價格合宜而頗受業(yè)內(nèi)人士肯定。實質(zhì)上,不僅如此,嵌入式實時軟件在計算機軟件設(shè)計中應(yīng)用還可提高設(shè)計出的軟件產(chǎn)品的質(zhì)量,亦能彌補軟件產(chǎn)品缺陷。故而可最大限度的滿足軟件使用者對于計算機軟件的需求,同時也可保證軟件在計算機軟件設(shè)計中得到有效應(yīng)用。
1.2嵌入式實時軟件在計算機軟件設(shè)計中的運用原理
嵌入式實時軟件同通用計算機軟件之間存在顯著的差異,這也是導(dǎo)致嵌入式使用軟件在計算機軟件設(shè)計中運行原理有異的根本原因。在計算機軟件設(shè)計中,嵌入式實時軟件可以在緩存機制、動態(tài)分配、預(yù)測指令執(zhí)行等設(shè)計中產(chǎn)生積極的良性作用,即在改變計算機軟件實時操作性的同時也增加了軟件設(shè)計的應(yīng)用性和安全性。雖然同通用計算機系統(tǒng)存在差異,但是兩者在設(shè)計時均需同時考量軟件及硬件的設(shè)計。其中,軟件包含操作系統(tǒng)軟件(OS)和應(yīng)用程序編程,硬件包含處理器或微處理器、存儲器、外設(shè)器件、I/O端口、圖形控制器等。在計算機軟件設(shè)計的應(yīng)用中,由應(yīng)用程序來控制系統(tǒng)的運作和行為,操作系統(tǒng)控制應(yīng)用程序編程與硬件的交互作用。此外,嵌入式微處理器的設(shè)計是嵌入式實時軟件設(shè)計的核心,目前設(shè)計方案中多應(yīng)用ATglRM9200處理器。而對于軟件模塊的設(shè)計也是設(shè)計重心,其設(shè)計質(zhì)量的優(yōu)劣直接關(guān)系到計算機軟件設(shè)計的安全性、通用性和可操作性。
在計算機軟件設(shè)計中運用嵌入式實時軟件對于軟件設(shè)計而言,不僅可以提高軟件設(shè)計效率,還可以簡化計算機開發(fā)流程。同通用計算機系統(tǒng)不同,后者開發(fā)無需特定的開發(fā)環(huán)境,而計算機軟件設(shè)計嵌入式實時軟件的開發(fā)通常財通交叉開發(fā)的方式。但是前者設(shè)計和開發(fā)均相對較為簡單,實施步驟為:第一,分析計算機軟件系統(tǒng)的需求;第二,根據(jù)需求開始軟件系統(tǒng)設(shè)計并編寫應(yīng)用程序代碼;第三,測試軟件,分析測試結(jié)果,完善計算機軟件設(shè)計。顯然,嵌入式實時軟件開發(fā)流程簡便,這無疑為提升計算機軟件的穩(wěn)定性提供了保障。不過,在軟件設(shè)計過程中,也應(yīng)當(dāng)注意落實軟件數(shù)據(jù)初始化和格式化等工作的穩(wěn)步施行。由上可知,在運用嵌入式實時軟件進行計算機軟件設(shè)計時,設(shè)計人員應(yīng)當(dāng)熟練掌握基于嵌入式實時軟件進行軟件開發(fā)方面的相關(guān)知識 (見圖1),盡量避免人為設(shè)計的失誤。例:在進行計算機軟件設(shè)時脫離于計算機硬件結(jié)構(gòu)。這樣的疏忽會極大地降低軟件設(shè)計對硬件的粘性和依賴性,必定會影響軟件系統(tǒng)在計算機應(yīng)用過程中的可靠性和實用性。故而,在計算機軟件設(shè)計過程中,需盡量規(guī)避軟件同硬件兩者之間脫離,以此提高計算機軟件在應(yīng)用過程的操作性能。
圖1 嵌入式軟件開發(fā)知識體系結(jié)構(gòu)圖
嵌入式實施軟件在計算機軟件設(shè)計中的運用是提升計算機軟件系統(tǒng)設(shè)計科學(xué)性、功能性和可操作性的一種良好方式。下文將細述嵌入式實時軟件在計算機軟件設(shè)計中的運用步驟,以為嵌入式實時軟件更為合理的運用提供參考依據(jù)。
3.1劃分計算機軟件并行任務(wù)
嵌入式ROTS微內(nèi)核是開發(fā)計算機軟件應(yīng)用程序的基礎(chǔ)平臺,對于計算機系統(tǒng)而言,是保障系統(tǒng)功能實現(xiàn)的關(guān)鍵所在和重要基石,而這同嵌入式ROTS微內(nèi)核的結(jié)構(gòu)(見圖1)和多項功能(資源管理、任務(wù)管理及控制、任務(wù)間通信、任務(wù)互斥與同步等)不無關(guān)系。在運用嵌入式實時軟件進行計算機軟件設(shè)計時,先行將計算機軟件系統(tǒng)劃分為一個個獨立的任務(wù),不僅可以簡化后期軟件設(shè)計的流程,同時也為嵌入式ROTS模型的優(yōu)化完善及系統(tǒng)運行的協(xié)調(diào)修正提供了良好條件。
圖2 嵌入式實時操作系統(tǒng)結(jié)構(gòu)圖
基于嵌入式實時軟件劃分計算機軟件系統(tǒng)并行任務(wù)時,首先應(yīng)當(dāng)對計算機應(yīng)用程序的數(shù)據(jù)轉(zhuǎn)換進行詳實分析和計算,續(xù)而根據(jù)分析結(jié)果確定數(shù)據(jù)執(zhí)行的順序,最后以計算機應(yīng)用系統(tǒng)數(shù)據(jù)通信的異步關(guān)系為依據(jù),將一個數(shù)據(jù)轉(zhuǎn)換或多個數(shù)據(jù)并行轉(zhuǎn)化作為一個任務(wù)進行劃分。其中,關(guān)于應(yīng)用系統(tǒng)數(shù)據(jù)通信的異步關(guān)系應(yīng)當(dāng)考量兩個方面:其一,系統(tǒng)內(nèi)部功能。根據(jù)系統(tǒng)功能完成的時間或任務(wù)之間的緊密程度進行任務(wù)劃分。如:將同事件激活任務(wù)一起完成的系統(tǒng)功能劃分在一起,作為一個任務(wù);抑或?qū)⒔?jīng)由統(tǒng)一事件驅(qū)動的任務(wù)合并劃分為一個任務(wù)。其二,I/O功能。在現(xiàn)代計算機系統(tǒng)中,對I/O設(shè)備的控制需要計算機應(yīng)用程序輪詢,但是因為輪詢需要占用大量CPU資源,為了保證I/O驅(qū)動正常的前提下滿足計算機軟件系統(tǒng)的使用性,故而多采用中斷驅(qū)動的方式。
3.2存儲映像布局并組織任務(wù)
在將系統(tǒng)應(yīng)用功能劃分為一個個相對單獨的任務(wù)之后,則需開始進行任務(wù)組織,任務(wù)組織方式的選擇主要取決于單獨任務(wù)之間的邏輯關(guān)系和數(shù)據(jù)轉(zhuǎn)換關(guān)系,而任務(wù)的管理功能和組織功能則同嵌入式操作系統(tǒng)存在緊密聯(lián)系。其中,嵌入式操作系統(tǒng)的操作系統(tǒng)并不完整,因此需同應(yīng)用程序駐留或保存在ROM或FLASH中。而為了保證操作系統(tǒng)可以在后續(xù)應(yīng)用中穩(wěn)定運行,則需要在任務(wù)組織時合理安排并優(yōu)化計算機軟件系統(tǒng)布局。針對軟件系統(tǒng)布局,應(yīng)當(dāng)將應(yīng)用系統(tǒng)存儲映像的布局以及從物理零地址調(diào)取的存儲器作為考慮的重點。系統(tǒng)加電之后,在物理零地址上設(shè)置可以執(zhí)行的代碼。一般情況而言,嵌入式應(yīng)用系統(tǒng)是從ROM開始啟動,ROM在初始化時位于嵌入式應(yīng)用系統(tǒng)的物理零地址,該地址之后會存放計算機系統(tǒng)的中斷向量。這種方式的優(yōu)勢在于其最為簡單便捷,可以有效提升處理器調(diào)取中斷向量的速度。另外還有一種組織方式是分散載入法,本次暫按不表。
3.3應(yīng)用實時性與任務(wù)調(diào)度
基于嵌入式實時軟件進行計算機軟件設(shè)計,需重點考量嵌入式實時應(yīng)用系統(tǒng)的實時性。系統(tǒng)實時性分為軟實時性和硬實時性。其中,軟實時性要求系統(tǒng)需在一定時限之內(nèi)完成任務(wù),但是可以出現(xiàn)一定范圍內(nèi)的時間延遲;硬實時要求系統(tǒng)必須在一定時限范圍內(nèi)完成任務(wù),如果超過時間將會造成不利后果。這邊要求計算機軟件系統(tǒng)任務(wù)的調(diào)度方式的選擇應(yīng)當(dāng)盡量采用基于優(yōu)先級的可搶占調(diào)度方式(見表3)。該種方式是指微內(nèi)核會根據(jù)系統(tǒng)任務(wù)的緊急情況對軟件系統(tǒng)任務(wù)進行是否優(yōu)先處理的安排,并依據(jù)優(yōu)先等級不同劃分系統(tǒng)任務(wù),以此減少優(yōu)先任務(wù)的響應(yīng)時間。
圖3 搶先式多任務(wù)調(diào)度示意圖
3.4任務(wù)與時鐘間通信
提供時鐘服務(wù)是每個計算機軟件在設(shè)計過程中均應(yīng)當(dāng)考慮到的問題之一,同樣,嵌入式實時軟件也存在時鐘,常以“l(fā)ick”來標(biāo)記。因此,基于嵌入式實時軟件進行計算機軟件設(shè)計時,需設(shè)計計算機軟件系統(tǒng)的時間服務(wù),保證每個人物具備自己的時鐘,以便定期控制執(zhí)行動作。許多嵌入式實時軟件操作系統(tǒng)都具有郵箱、信號量、信號、隊列等機制,以保障軟件資源和系統(tǒng)任務(wù)之間通信與同步的實現(xiàn)。
3.5系統(tǒng)初始化
在運用嵌入式實時軟件進行計算機軟件開發(fā)和設(shè)計時,如此促使系統(tǒng)初始化并執(zhí)行是需要重點考慮的另一個問題。位于嵌入式操作系統(tǒng)微內(nèi)核和底層硬件之間的硬件抽象層是編寫系統(tǒng)初始化代碼之處,主要負責(zé)和實現(xiàn)系統(tǒng)的引導(dǎo)和初始化。同通用計算機軟件系統(tǒng)不同,嵌入式實施軟件并不具有BIOS,故而,軟件開發(fā)者需要通過設(shè)計方案實現(xiàn)系統(tǒng)引導(dǎo)和初始化代碼,經(jīng)由一系列固定指令序列執(zhí)行諸如定義入口點、初始化存儲系統(tǒng)、設(shè)置異常中斷向量、初始化RAM變量等系統(tǒng)初始化工作。最后,通過轉(zhuǎn)移指令或設(shè)置指令加載嵌入式軟件系統(tǒng),進入系統(tǒng)任務(wù)調(diào)度即可。
綜上所述,基于嵌入式實時軟件,利用分層結(jié)構(gòu)進行計算機軟件設(shè)計,不僅增加了系統(tǒng)設(shè)計的靈活性,還簡化了系統(tǒng)設(shè)計的復(fù)雜性,值得推廣應(yīng)用。本文從嵌入式軟件出發(fā),簡析了嵌入式實時軟件在計算機軟件設(shè)計中的運用及原理,并就計算機軟件設(shè)計嵌入式實時軟件的設(shè)計和開發(fā)進行討論,從劃分計算機軟件并行任務(wù)、存儲映像布局并組織任務(wù)、應(yīng)用實時性與任務(wù)調(diào)度、任務(wù)與時鐘間通信、系統(tǒng)初始化,5個方面重點闡述了計算機軟件設(shè)計嵌入式實時軟件的運用。
[1]馬宇馳.計算機軟件設(shè)計中嵌入式實時軟件的應(yīng)用探析[J].信息通信,2014(4):104.
[2]李允,桂盛霖,陳更,等.嵌入式實時軟件模型開發(fā)環(huán)境研究[J].計算機科學(xué),2012(z3):226-229,244.
[3]李禹松.嵌入式實時軟件在計算機軟件設(shè)計中的應(yīng)用[J].硅谷,2013(18):16,37.
[4]王妍,黃山.試論計算機軟件設(shè)計中嵌入式實時軟件的應(yīng)用[J].青年科學(xué)(教師版),2014(11):55.
[5]張嵐.嵌入式實時軟件在計算機軟件設(shè)計中的應(yīng)用[J].計算機光盤軟件與應(yīng)用,2015(1):71,73.
[6]馮川放,馬季.基于嵌入式LINUX系統(tǒng)的實時進程調(diào)度算法的研究[J].計算機應(yīng)用與軟件,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—),女,河南商丘人,碩士,講師。研究方向:計算機技術(shù)及應(yīng)用。