摘 要:隨著現(xiàn)代化科學(xué)技術(shù)的快速發(fā)展,計(jì)算機(jī)已經(jīng)成為人們工作、學(xué)習(xí)和生活中不可缺少的重要工具。嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用,有助于實(shí)時(shí)處理計(jì)算機(jī)軟件故障,簡(jiǎn)化計(jì)算機(jī)軟件設(shè)計(jì)的復(fù)雜流程,提高計(jì)算機(jī)軟件系統(tǒng)質(zhì)量。在未來(lái)的發(fā)展過(guò)程中,嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用前景將更加廣泛。本文簡(jiǎn)要介紹了計(jì)算機(jī)軟件設(shè)計(jì)運(yùn)用嵌入式實(shí)時(shí)軟件,分析了計(jì)算機(jī)軟件設(shè)計(jì)嵌入式實(shí)時(shí)軟件的開(kāi)發(fā)流程和設(shè)計(jì)要點(diǎn),闡述了嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的運(yùn)用。
關(guān)鍵詞:嵌入式;實(shí)時(shí)軟件;計(jì)算機(jī)軟件設(shè)計(jì);運(yùn)用
中圖分類號(hào):TP311.52
近年來(lái),我國(guó)信息化進(jìn)程逐漸加快,計(jì)算機(jī)水平快速提升,計(jì)算機(jī)軟件被廣泛的應(yīng)用在多個(gè)領(lǐng)域。嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用,可以有效地優(yōu)化計(jì)算機(jī)軟件系統(tǒng),減少軟件產(chǎn)品缺陷,改善計(jì)算機(jī)軟件系統(tǒng)的使用性能。在設(shè)計(jì)計(jì)算機(jī)軟件時(shí),結(jié)合嵌入式實(shí)時(shí)軟件的特點(diǎn),進(jìn)一步提高計(jì)算機(jī)軟件系統(tǒng)的可靠性和穩(wěn)定性。
1 計(jì)算機(jī)軟件設(shè)計(jì)運(yùn)用嵌入式實(shí)時(shí)軟件概述
1.1 特點(diǎn)
嵌入式實(shí)時(shí)軟件可以運(yùn)用在計(jì)算機(jī)軟件的預(yù)測(cè)指令執(zhí)行、動(dòng)態(tài)分配、緩存機(jī)制等設(shè)計(jì)中,提升計(jì)算機(jī)軟件系統(tǒng)設(shè)計(jì)的科學(xué)合理性和實(shí)時(shí)處理功能。嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用包括軟件和硬件兩部分,由應(yīng)用程序控制計(jì)算機(jī)軟件的運(yùn)行,通過(guò)計(jì)算機(jī)操作系統(tǒng)編寫軟件控制程序,實(shí)現(xiàn)軟件和硬件之間的交互。嵌入式微處理器是嵌入式實(shí)時(shí)軟件設(shè)計(jì)的核心,可以實(shí)時(shí)地支持軟件系統(tǒng)的多任務(wù),在短時(shí)間內(nèi)可以快速中斷相應(yīng),實(shí)現(xiàn)多任務(wù)操作[1],并且具有較強(qiáng)的計(jì)算機(jī)存儲(chǔ)區(qū)保護(hù)功能。嵌入式實(shí)時(shí)軟件系統(tǒng)是模塊化結(jié)構(gòu),便于軟件系統(tǒng)的修復(fù)和檢測(cè),并且嵌入式實(shí)時(shí)軟件系統(tǒng)中的處理器結(jié)構(gòu)具有良好的擴(kuò)展性,嵌入式實(shí)時(shí)軟件的低功耗設(shè)計(jì)將會(huì)在計(jì)算機(jī)軟件設(shè)計(jì)中發(fā)揮更重要的作用。
1.2 應(yīng)用原理
嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用,通過(guò)將計(jì)算機(jī)科學(xué)技術(shù)和實(shí)時(shí)處理技術(shù)相融合,從而建立實(shí)時(shí)的CORBA模型。同時(shí),在設(shè)計(jì)計(jì)算機(jī)軟件時(shí)應(yīng)用嵌入式實(shí)時(shí)軟件,可以在計(jì)算機(jī)軟件系統(tǒng)遠(yuǎn)程調(diào)用過(guò)程中實(shí)現(xiàn)更多的設(shè)計(jì)服務(wù),例如在設(shè)計(jì)實(shí)時(shí)CORBA模型軟件過(guò)程中,嵌入式實(shí)時(shí)軟件可以對(duì)計(jì)算機(jī)軟件系統(tǒng)設(shè)計(jì)提供有效的支持,并且優(yōu)化計(jì)算機(jī)軟件設(shè)計(jì)模式,全面提升計(jì)算機(jī)軟件系統(tǒng)的實(shí)用性、安全性和獨(dú)立性。
2 計(jì)算機(jī)軟件設(shè)計(jì)嵌入式實(shí)時(shí)軟件的開(kāi)發(fā)流程和設(shè)計(jì)要點(diǎn)
在嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用,可以簡(jiǎn)化計(jì)算機(jī)軟件的開(kāi)發(fā)流程,首先設(shè)計(jì)人員通過(guò)分析計(jì)算機(jī)軟件系統(tǒng)需求,從而解析嵌入式實(shí)時(shí)軟件的設(shè)計(jì)需求,然后,在這個(gè)基礎(chǔ)上對(duì)計(jì)算機(jī)軟件系統(tǒng)進(jìn)行具體設(shè)計(jì),并且編寫應(yīng)用程序代碼,最后,對(duì)計(jì)算機(jī)軟件系統(tǒng)進(jìn)行性能測(cè)試,完善和優(yōu)化計(jì)算機(jī)軟件設(shè)計(jì)。在計(jì)算機(jī)軟件設(shè)計(jì)中應(yīng)用嵌入式實(shí)時(shí)軟件,通過(guò)簡(jiǎn)潔流暢的開(kāi)發(fā)流程,提升計(jì)算機(jī)軟件系統(tǒng)的可靠性和設(shè)計(jì)效率,提升計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的應(yīng)用水平。
在運(yùn)用嵌入式實(shí)時(shí)軟件設(shè)計(jì)計(jì)算機(jī)軟件系統(tǒng)時(shí),設(shè)計(jì)人員要按照計(jì)算機(jī)軟件的設(shè)計(jì)流程,盡量避免人為的設(shè)計(jì)失誤。例如,在設(shè)計(jì)計(jì)算機(jī)軟件結(jié)構(gòu)時(shí),設(shè)計(jì)人員要注意將計(jì)算機(jī)硬件結(jié)構(gòu)和軟件設(shè)計(jì)分離開(kāi)來(lái),降低計(jì)算機(jī)軟件設(shè)計(jì)對(duì)硬件的依賴性,有效提高計(jì)算機(jī)軟件系統(tǒng)的可靠性和實(shí)時(shí)性。另外,嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用,有助于實(shí)現(xiàn)格式化的數(shù)據(jù)結(jié)構(gòu)和初始化的軟件數(shù)據(jù),設(shè)計(jì)人員在設(shè)計(jì)計(jì)算機(jī)軟件系統(tǒng)時(shí),可以直接操作軟件資源和硬件設(shè)備,豐富計(jì)算機(jī)軟件設(shè)計(jì)功能。
3 嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的運(yùn)用
3.1 任務(wù)劃分
應(yīng)用軟件是嵌入式系統(tǒng)的最高層,也是實(shí)現(xiàn)系統(tǒng)功能的重要基礎(chǔ)。嵌入式RTOS微內(nèi)核在計(jì)算機(jī)操作系統(tǒng)承擔(dān)著資源管理、任務(wù)互斥與同步、任務(wù)間通信、任務(wù)控制、任務(wù)管理等多種功能,其是開(kāi)發(fā)計(jì)算機(jī)軟件應(yīng)用程序的基礎(chǔ)平臺(tái),基于嵌入式實(shí)時(shí)軟件,將計(jì)算機(jī)軟件系統(tǒng)合理劃分為一個(gè)個(gè)獨(dú)立的任務(wù),是簡(jiǎn)化軟件設(shè)計(jì)、優(yōu)化嵌入式RTOS模型、協(xié)調(diào)系統(tǒng)運(yùn)行的關(guān)鍵[2]。在劃分計(jì)算機(jī)軟件系統(tǒng)并行任務(wù)時(shí),要深入分析應(yīng)用程序的數(shù)據(jù)轉(zhuǎn)換,確定數(shù)據(jù)執(zhí)行順序和數(shù)據(jù)并行轉(zhuǎn)換,將一個(gè)或者多個(gè)數(shù)據(jù)轉(zhuǎn)換劃分為一個(gè)任務(wù),計(jì)算機(jī)應(yīng)用系統(tǒng)數(shù)據(jù)通信的異步關(guān)系是任務(wù)劃分的和總要因素,主要從兩個(gè)方面進(jìn)行考慮:一方面是系統(tǒng)內(nèi)部功能,計(jì)算機(jī)軟件系統(tǒng)并行任務(wù)可以分為用戶接口任務(wù)、應(yīng)用控制任務(wù)、異步和同步任務(wù)、周期任務(wù)等,將事件激活任務(wù)和同一時(shí)間段完成的系統(tǒng)功能整合為一個(gè)任務(wù),將一些聯(lián)系緊密的任務(wù)合并為一個(gè)任務(wù),由相同事件驅(qū)動(dòng),共享計(jì)算機(jī)軟件資源,簡(jiǎn)化計(jì)算機(jī)軟件設(shè)計(jì)流程。另一方面,I/O功能,計(jì)算機(jī)軟件系統(tǒng)通過(guò)中斷方式和應(yīng)用程序輪詢來(lái)驅(qū)動(dòng)I/O事件,由于應(yīng)用程序輪詢需要占用大量的計(jì)算機(jī)CPU資源,為了滿足計(jì)算機(jī)軟件系統(tǒng)使用性和實(shí)時(shí)性的要求,多采用中斷方式。
3.2 存儲(chǔ)映像布局和任務(wù)組織
應(yīng)用嵌入式實(shí)時(shí)軟件設(shè)計(jì)計(jì)算機(jī)軟件系統(tǒng),在劃分為獨(dú)立的任務(wù)后,任務(wù)之間的邏輯關(guān)系和數(shù)據(jù)轉(zhuǎn)換關(guān)系對(duì)于任務(wù)組織方式有著重要影響,任務(wù)的管理和組織功能主要取決于嵌入式操作系統(tǒng)。和微機(jī)操作系統(tǒng)相比,嵌入式操作系統(tǒng)應(yīng)用程序保存在FLASH和ROM,為了確保系統(tǒng)穩(wěn)定、協(xié)調(diào)地運(yùn)行,因此要優(yōu)化計(jì)算機(jī)軟件系統(tǒng)布局。計(jì)算機(jī)軟件系統(tǒng)布局要重點(diǎn)考慮存儲(chǔ)器的使用和存儲(chǔ)映像的布局。計(jì)算機(jī)軟件系統(tǒng)從物理零地址調(diào)取程序指令,在物理地址上設(shè)置執(zhí)行代碼,嵌入式應(yīng)用系統(tǒng)從ROM開(kāi)始啟動(dòng),ROM初始化時(shí)位于物理零地址,將中斷向量存儲(chǔ)在零地址之后。這種存儲(chǔ)映像布局和任務(wù)組織形式可以有效加快處理器調(diào)取中斷向量的速度[3]。
3.3 任務(wù)調(diào)度和應(yīng)用實(shí)時(shí)性
嵌入式實(shí)時(shí)軟件系統(tǒng)的實(shí)時(shí)性主要分為硬實(shí)時(shí)性和軟實(shí)時(shí)性,硬實(shí)時(shí)性要求在一定的時(shí)間段內(nèi)必須完成系統(tǒng)任務(wù),軟實(shí)時(shí)性要求在一定時(shí)限內(nèi)完成任務(wù),可以允許一定的時(shí)間延遲。計(jì)算機(jī)軟件系統(tǒng)的任務(wù)調(diào)度要盡量采用基于優(yōu)先級(jí)的調(diào)度方式。當(dāng)某一優(yōu)先級(jí)的軟件系統(tǒng)任務(wù)較多時(shí),微內(nèi)核會(huì)根據(jù)任務(wù)的緊急程序,自動(dòng)增加優(yōu)先級(jí)級(jí)數(shù),按照不同的優(yōu)先級(jí)將系統(tǒng)任務(wù)拆分為多個(gè)任務(wù)隊(duì)列,有效減少系統(tǒng)關(guān)鍵任務(wù)的響應(yīng)時(shí)間。
3.4 任務(wù)與時(shí)鐘間通信
在計(jì)算機(jī)軟件設(shè)計(jì)中應(yīng)用嵌入式實(shí)時(shí)軟件,設(shè)計(jì)計(jì)算機(jī)軟件系統(tǒng)的時(shí)鐘服務(wù),位系統(tǒng)任務(wù)設(shè)置自己的時(shí)鐘,定期控制執(zhí)行動(dòng)作。嵌入式實(shí)時(shí)軟件系統(tǒng)具有信號(hào)量、信號(hào)、隊(duì)列等機(jī)制,可以實(shí)現(xiàn)軟件資源和系統(tǒng)任務(wù)之間的同步與通信。
3.5 系統(tǒng)初始化
計(jì)算機(jī)軟件系統(tǒng)設(shè)計(jì)采用嵌入式實(shí)時(shí)軟件要充分考慮到軟件系統(tǒng)的初始化執(zhí)行,在嵌入式操作系統(tǒng)底層硬件和微內(nèi)核之間的硬件抽象層編寫初始化代碼,實(shí)現(xiàn)系統(tǒng)的初始化和引導(dǎo)。嵌入式實(shí)時(shí)軟件系統(tǒng)包含BIOS,通過(guò)一系列固定指令序列執(zhí)行系統(tǒng)初始化工作,如,轉(zhuǎn)換處理器狀態(tài)、初始化RAM變量、設(shè)置異常中斷向量、定義系統(tǒng)入口點(diǎn)等,通過(guò)加載嵌入式軟件系統(tǒng),設(shè)置程序計(jì)數(shù)器的程序指令,從而便于系統(tǒng)任務(wù)調(diào)度。
4 結(jié)束語(yǔ)
嵌入式實(shí)時(shí)軟件在計(jì)算機(jī)軟件設(shè)計(jì)中的應(yīng)用,在底層硬件和應(yīng)用軟件構(gòu)建虛擬視圖,通過(guò)嵌入式系統(tǒng)的分層結(jié)構(gòu),重點(diǎn)實(shí)現(xiàn)計(jì)算機(jī)軟件系統(tǒng)的具體應(yīng)用功能,為底層硬件和高層應(yīng)用設(shè)置系統(tǒng)接口,簡(jiǎn)化計(jì)算機(jī)軟件系統(tǒng)設(shè)計(jì),滿足系統(tǒng)的實(shí)時(shí)性要求,提高計(jì)算機(jī)軟件設(shè)計(jì)的靈活性和可擴(kuò)展性,增強(qiáng)系統(tǒng)功能。
參考文獻(xiàn):
[1]宮婷.計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的應(yīng)用探究[J].中國(guó)外資,2013(23):280.
[2]馬宇馳.計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的應(yīng)用探析[J].信息通信,2014(04):104.
[3]余耀.解析計(jì)算機(jī)軟件設(shè)計(jì)中嵌入式實(shí)時(shí)軟件的應(yīng)用[J].中國(guó)新技術(shù)新產(chǎn)品,2014(08):14.
作者簡(jiǎn)介:曹道柱(1980-),男,江蘇南京人,助理工程師,本科,研究方向:計(jì)算機(jī)軟件。
作者單位:江蘇聯(lián)宏自動(dòng)化系統(tǒng)工程有限公司,南京 210000