劉長(zhǎng)榮 丁勤
摘要:近年,我國(guó)計(jì)算機(jī)軟件設(shè)計(jì)技術(shù)水平不斷發(fā)展,嵌入式實(shí)時(shí)軟件得以充分應(yīng)用也是提升計(jì)算機(jī)軟件設(shè)計(jì)水平的一項(xiàng)重要原因,其所體現(xiàn)出的突出優(yōu)勢(shì)在于簡(jiǎn)化軟件設(shè)計(jì)流程。嵌入式實(shí)時(shí)軟件于計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用可謂前景一片大好,它能夠充分消除計(jì)算機(jī)軟件設(shè)計(jì)存在的一系列缺陷。鑒于此,筆者將針對(duì)嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用展開(kāi)深入淺出的討論與分析。
關(guān)鍵詞:嵌入式實(shí)時(shí)軟件;計(jì)算機(jī)軟件設(shè)計(jì);開(kāi)發(fā)流程
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)36-0208-02
嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用具有一定的限制性條件,在一定程度上為計(jì)算機(jī)軟件開(kāi)發(fā)與設(shè)計(jì)的范圍予以劃定,同時(shí)又能為整個(gè)計(jì)算機(jī)軟件設(shè)計(jì)提供較為堅(jiān)定的基礎(chǔ),表現(xiàn)計(jì)算機(jī)軟件的實(shí)踐性可謂淋漓盡致。要知道,嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用在于規(guī)范軟件規(guī)劃,可消除計(jì)算機(jī)軟件運(yùn)行存在的各種缺陷,有利于計(jì)算機(jī)軟件操作的可靠運(yùn)行。
1 計(jì)算機(jī)軟件設(shè)計(jì)中的嵌入式實(shí)時(shí)軟件概述
通常,嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件中的應(yīng)用主要于緩存機(jī)制、動(dòng)態(tài)分配和預(yù)測(cè)指令及執(zhí)行等多個(gè)方面,它可以提升計(jì)算機(jī)軟件實(shí)時(shí)的處理效率和保證計(jì)算機(jī)軟件設(shè)計(jì)工作的穩(wěn)定性。然而,計(jì)算機(jī)軟件設(shè)計(jì)在實(shí)際應(yīng)用過(guò)程中對(duì)于嵌入式實(shí)時(shí)軟件的設(shè)計(jì)則主要分為硬件部分和軟件部分兩個(gè)組成內(nèi)容,通過(guò)應(yīng)用程序來(lái)主導(dǎo)計(jì)算機(jī)軟件系統(tǒng)的實(shí)踐運(yùn)行和指令行為,并由計(jì)算機(jī)操作系統(tǒng)來(lái)實(shí)現(xiàn)軟件編程與硬件交互等工作內(nèi)容。嵌入式實(shí)時(shí)軟件的技術(shù)核心在于微型處理器,一般情況下都具備針對(duì)多項(xiàng)任務(wù)的實(shí)施支持作用,可實(shí)時(shí)響應(yīng)各項(xiàng)指令任務(wù)及操作流程,且兼顧較強(qiáng)的存儲(chǔ)區(qū)域保護(hù)功效。同時(shí),嵌入式實(shí)時(shí)軟件以模塊化的結(jié)構(gòu)型式存在,在軟件檢測(cè)和軟件維修兩個(gè)方面十分便利。當(dāng)然,嵌入式實(shí)時(shí)軟件所擁有的處理器結(jié)構(gòu)須具備一定的可擴(kuò)展性,并能通過(guò)低功耗嵌入式微型處理器予以執(zhí)行設(shè)計(jì)流程,只有這樣方能凸顯嵌入式實(shí)時(shí)計(jì)算機(jī)軟件設(shè)計(jì)系統(tǒng)的優(yōu)勢(shì),積極發(fā)揮計(jì)算機(jī)軟件的應(yīng)用效果。
2 計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的開(kāi)發(fā)流程
計(jì)算機(jī)系統(tǒng)運(yùn)行應(yīng)用嵌入式實(shí)時(shí)軟件需要進(jìn)行一系列規(guī)范化的開(kāi)發(fā)與設(shè)計(jì)流程,它能夠決定計(jì)算機(jī)軟件的應(yīng)用質(zhì)量和實(shí)用性能。嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用開(kāi)發(fā)流程一般包含如下內(nèi)容:
1)結(jié)構(gòu)開(kāi)發(fā)。嵌入式實(shí)時(shí)軟件于計(jì)算機(jī)軟件設(shè)計(jì)中的開(kāi)發(fā)與應(yīng)用主要分為三個(gè)步驟:其一,了解計(jì)算機(jī)軟件的實(shí)際需求,熟悉計(jì)算機(jī)軟件于計(jì)算機(jī)系統(tǒng)運(yùn)行的各項(xiàng)功能要求,通過(guò)適當(dāng)強(qiáng)化計(jì)算機(jī)軟件管理和落實(shí)結(jié)構(gòu)開(kāi)發(fā)力度;其二,編寫(xiě)設(shè)計(jì)代碼、測(cè)試運(yùn)行功能和積極發(fā)揮系統(tǒng)控制能力。在計(jì)算機(jī)軟件功能模塊化處置中,積極開(kāi)發(fā)子模塊結(jié)構(gòu),編寫(xiě)開(kāi)發(fā)代碼和測(cè)試系統(tǒng)運(yùn)行,規(guī)范模塊化程序的整個(gè)開(kāi)發(fā)流程,以便落實(shí)和執(zhí)行與其相關(guān)的各項(xiàng)任務(wù);其三,設(shè)計(jì)任務(wù)地址,保證計(jì)算機(jī)軟件運(yùn)行效果達(dá)到一定的時(shí)效性需求。
2)硬件部分。根據(jù)嵌入式實(shí)時(shí)軟件的具體需求來(lái)剖析計(jì)算機(jī)軟件硬件部分的配置要求。通常,利用AT91RM9200微型處理器可實(shí)現(xiàn)此方面的要求。AR91RM9200微型處理器的外部端口數(shù)量較多,其處理器和控制器始終保持一種協(xié)同一致的狀態(tài),以便能夠?yàn)橛?jì)算機(jī)軟件設(shè)計(jì)做好規(guī)劃基礎(chǔ),倘若計(jì)算機(jī)軟件設(shè)計(jì)過(guò)程中存在突發(fā)問(wèn)題,也可通過(guò)該微型處理器快速訪問(wèn)到事件,保證計(jì)算機(jī)軟件擁有足夠的響應(yīng)時(shí)間,并能保證軟件具有良好的時(shí)效性。
3)軟件部分。嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中還需面向一種模塊化設(shè)計(jì)形式,可大幅度提升計(jì)算機(jī)軟件設(shè)計(jì)與開(kāi)發(fā)的效率,對(duì)于計(jì)算機(jī)軟件的系統(tǒng)運(yùn)行可實(shí)現(xiàn)全程監(jiān)控。軟件部分的設(shè)計(jì)更為注重于組件的接口設(shè)置,可按照計(jì)算機(jī)軟件運(yùn)行特點(diǎn)設(shè)定要求,接入較多的服務(wù)類(lèi)信息,也可組建級(jí)別更好的其他組件。我們知道,計(jì)算機(jī)軟件的組件均對(duì)獨(dú)立性要求較高,對(duì)計(jì)算機(jī)軟件系統(tǒng)開(kāi)發(fā)與設(shè)計(jì)的參與具有積極作用,且同時(shí)又能兼顧計(jì)算機(jī)軟件實(shí)時(shí)性的根本特性,強(qiáng)化計(jì)算機(jī)軟件的監(jiān)控管理力度,以此滿足計(jì)算機(jī)軟件設(shè)計(jì)與開(kāi)發(fā)的實(shí)際需求。
4)程序應(yīng)用。嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件開(kāi)發(fā)與設(shè)計(jì)中應(yīng)用主要采取C++語(yǔ)言予以編程,將嵌入式實(shí)時(shí)軟件編程代碼寫(xiě)入程序,然后利用編程控制工具實(shí)現(xiàn)運(yùn)行過(guò)程。顯然,不同類(lèi)別的計(jì)算機(jī)軟件設(shè)計(jì)與開(kāi)發(fā)在軟件要求方面截然不同,編程寫(xiě)入的內(nèi)容也將隨之不溝通,主要還須根據(jù)計(jì)算機(jī)軟件設(shè)計(jì)原則和實(shí)踐需求來(lái)編寫(xiě)代碼。
3 嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用
嵌入式實(shí)時(shí)軟件于計(jì)算機(jī)軟件設(shè)計(jì)與開(kāi)發(fā)中的應(yīng)用主要表現(xiàn)為五大方面,即:
1)任務(wù)劃分。計(jì)算機(jī)系統(tǒng)軟件部分是嵌入式實(shí)時(shí)軟件應(yīng)用的最高層,它在功能方面與計(jì)算機(jī)系統(tǒng)的關(guān)系十分緊密。嵌入式實(shí)時(shí)軟件在任務(wù)類(lèi)型方面更多注重的是計(jì)算機(jī)系統(tǒng)的應(yīng)用情況,擔(dān)負(fù)起資源管理和任務(wù)分配等多個(gè)工作內(nèi)容。嵌入式實(shí)時(shí)軟件任務(wù)劃分環(huán)境是整個(gè)計(jì)算機(jī)軟件部分的基礎(chǔ)服務(wù)平臺(tái),是計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)規(guī)劃和保證軟件設(shè)計(jì)與開(kāi)發(fā)具備獨(dú)立性特征的重要依據(jù)。在此方面,嵌入式實(shí)時(shí)軟件對(duì)計(jì)算機(jī)軟件開(kāi)發(fā)與設(shè)計(jì)的協(xié)調(diào)性十分看重,深剖計(jì)算機(jī)系統(tǒng)內(nèi)程序應(yīng)用的原理,并分配需轉(zhuǎn)換的數(shù)控信息,理順已轉(zhuǎn)換數(shù)據(jù)的次序。值得注意的是,嵌入式實(shí)時(shí)軟件劃分任務(wù)需要注意兩點(diǎn)內(nèi)容:其一,嵌入式實(shí)時(shí)軟件在內(nèi)部功能方面涉及接入端口和控制項(xiàng)目,待事件激活之后可利用驅(qū)動(dòng)方式來(lái)整合剩下的其他任務(wù);其二,I/0事件于計(jì)算機(jī)軟件開(kāi)發(fā)與設(shè)計(jì)過(guò)程中必然占有絕大比例的CPU資源占有率,可通過(guò)中斷方式來(lái)驅(qū)動(dòng)I/0事件的發(fā)生。
2)組織與布局。利用存儲(chǔ)映像保證數(shù)據(jù)間具有一定連貫性,并通過(guò)嵌入式實(shí)時(shí)軟件聯(lián)系不同任務(wù)便是其組織與布局的功能應(yīng)用。嵌入式實(shí)時(shí)軟件的組織與布局非常注重于邏輯性,在其開(kāi)發(fā)與設(shè)計(jì)過(guò)程中,嵌入式的操作要求頗高,使得計(jì)算機(jī)軟件系統(tǒng)的數(shù)據(jù)可輕松備份于ROM、Flash中,保證了計(jì)算機(jī)系統(tǒng)的穩(wěn)定性。那么,計(jì)算機(jī)軟件設(shè)計(jì)與開(kāi)發(fā)的組織與布局優(yōu)化使之必然。由于計(jì)算機(jī)軟件開(kāi)發(fā)與設(shè)計(jì)須考慮存儲(chǔ)映像的規(guī)劃,嵌入式實(shí)時(shí)軟件調(diào)取運(yùn)行指令是一種主動(dòng)行為,預(yù)先調(diào)整好物理地址和執(zhí)行代碼可保證ROM具有較好的啟動(dòng)速度,并能將已中斷的數(shù)據(jù)備份于零地址,計(jì)算機(jī)軟件的處理速度將大幅度提升。
3)實(shí)時(shí)調(diào)度與控制。硬實(shí)時(shí)性是計(jì)算機(jī)軟性系統(tǒng)于規(guī)定時(shí)間以內(nèi)完成相應(yīng)指令的運(yùn)行,軟實(shí)時(shí)性則是于規(guī)定時(shí)間或短時(shí)延遲情況下的指令運(yùn)行。通常,我們將硬實(shí)時(shí)性和軟實(shí)時(shí)性二者共同使用,可大幅度提升計(jì)算機(jī)軟件系統(tǒng)的運(yùn)行效率,在實(shí)時(shí)調(diào)度與控制方面可根據(jù)優(yōu)先級(jí)原則執(zhí)行落實(shí)。倘若優(yōu)先級(jí)調(diào)度的任務(wù)過(guò)多,計(jì)算機(jī)軟件系統(tǒng)的微內(nèi)核可根據(jù)調(diào)度任務(wù)的性質(zhì)增加一部分優(yōu)先級(jí),然后分隊(duì)排列各類(lèi)調(diào)度任務(wù)和縮短響應(yīng)時(shí)間,一定程度上對(duì)于計(jì)算機(jī)軟件系系統(tǒng)的操作效率和時(shí)效性具有利好。
4)時(shí)鐘服務(wù)。時(shí)鐘服務(wù)是一種搭建于指令任務(wù)和時(shí)鐘通訊共同基礎(chǔ)之上的服務(wù)項(xiàng)目。基于嵌入式實(shí)時(shí)軟件可在計(jì)算機(jī)軟件設(shè)計(jì)中進(jìn)一步規(guī)范時(shí)鐘服務(wù)的內(nèi)容和要求,可有效監(jiān)控計(jì)算機(jī)軟件系統(tǒng)各類(lèi)指令的運(yùn)行。嵌入式實(shí)時(shí)軟件時(shí)鐘服務(wù)可按照計(jì)算機(jī)軟件系統(tǒng)設(shè)計(jì)的具體要求,規(guī)定時(shí)鐘服務(wù)的一系列規(guī)范動(dòng)作,保證計(jì)算機(jī)軟件系統(tǒng)擁有一套性能突出的時(shí)鐘服務(wù)體系。
5)初始化系統(tǒng)?;谇度胧綄?shí)時(shí)軟件可執(zhí)行初始化系統(tǒng)運(yùn)行。按照計(jì)算機(jī)軟性系統(tǒng)的設(shè)計(jì)需求,由嵌入式實(shí)時(shí)軟件編寫(xiě)初始化代碼,依此妥善處置硬件任務(wù)和微內(nèi)核任務(wù),可指令計(jì)算機(jī)軟件系統(tǒng)準(zhǔn)時(shí)準(zhǔn)量完成各項(xiàng)初始化任務(wù)。通常,以固定的BIOS指令來(lái)實(shí)現(xiàn)初始化進(jìn)程。對(duì)于一些處理器和RAM,在完成嵌入式實(shí)時(shí)軟件的加載工作之后,可通過(guò)設(shè)計(jì)相關(guān)的指令來(lái)完成任務(wù)調(diào)度。初始化系統(tǒng)作為計(jì)算機(jī)軟件系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)的重要內(nèi)容之一,與計(jì)算機(jī)軟件部分的運(yùn)行性能息息相關(guān)。
4 結(jié)束語(yǔ)
總而言之,隨著我國(guó)計(jì)算機(jī)應(yīng)用技術(shù)水平的不斷提高,與之相關(guān)的軟件設(shè)計(jì)與開(kāi)發(fā)同樣蓄勢(shì)待發(fā),由此衍生出對(duì)嵌入式實(shí)時(shí)軟件的關(guān)注更為深入,它可以大幅度提升計(jì)算機(jī)運(yùn)行效率。筆者撰寫(xiě)此文,首先計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的開(kāi)發(fā)流程,其次著重探討嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用主要涉及任務(wù)劃分、組織與布局、實(shí)時(shí)調(diào)度與控制、時(shí)鐘服務(wù)和初始化系統(tǒng)五個(gè)方面,旨在通過(guò)研究嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件開(kāi)發(fā)與設(shè)計(jì)中能夠符合現(xiàn)代信息發(fā)展的需求打下理論基礎(chǔ)。
參考文獻(xiàn):
[1] 曹道柱.嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的運(yùn)用分析[J].計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2014(22).
[2] 余耀.解析計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的應(yīng)用[J].中國(guó)新技術(shù)新產(chǎn)品,2014(8).
[3] 張嵐.嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用[J].計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2015(1).
[4] 馮川放,馬季.基于嵌入式LINUX系統(tǒng)的實(shí)時(shí)進(jìn)程調(diào)度算法的研究[J].計(jì)算機(jī)應(yīng)用與軟件,2014(12).
[5] 姜俊穎,張良.計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的應(yīng)用分析[J].電子技術(shù)與軟件工程,2015(21).