金北武
摘要:作為軟件開發(fā)領(lǐng)域應(yīng)用最廣泛的開發(fā)系統(tǒng)的嵌入式系統(tǒng),它的開發(fā)環(huán)境構(gòu)建的完善不僅有助于升級(jí)改造各類軟件的目標(biāo),而且對(duì)軟件功能的完善有著顯著的幫助,使軟件開發(fā)可以更好地符合當(dāng)今用戶的繁多而復(fù)雜的需求。由此為方向,討論了嵌入式軟件開發(fā)環(huán)境的構(gòu)建,而且通過闡述嵌入式軟件相關(guān)的內(nèi)容,從大體設(shè)計(jì)的思想、構(gòu)建的過程、系統(tǒng)功能這三個(gè)大方面細(xì)致而又完整地介紹了嵌入式軟件開發(fā)環(huán)境的總體構(gòu)建過程。
關(guān)鍵詞:嵌入式軟件;環(huán)境構(gòu)建;交叉編譯;開發(fā)環(huán)境
引言 :眾所周知嵌入式應(yīng)用軟件開發(fā)系統(tǒng)的資源是相對(duì)緊缺的,所以是沒有辦法獨(dú)立編譯的程序,因此當(dāng)設(shè)置嵌入式軟件開發(fā)過程,交叉編譯的一般選擇方法,也就是說,在主機(jī)上進(jìn)行各種各樣的編碼,編譯工作,并且在嵌入式系統(tǒng)中編譯應(yīng)用程序使其能夠進(jìn)行正確運(yùn)行驗(yàn)證,供下載、安裝。這與一般意義上的PC應(yīng)用程序的開發(fā)是截然不同的,在操作環(huán)境上有可想而知的特殊。為了保證完美實(shí)施嵌入式軟件的開發(fā)工作,圍繞嵌入式軟件開發(fā)環(huán)境構(gòu)建而進(jìn)行得更加完善的研究和探討就顯得十分必要。
1.嵌入式軟件的特點(diǎn);能否實(shí)現(xiàn)嵌入式系統(tǒng)功能的關(guān)鍵就是看其嵌入式系統(tǒng)應(yīng)用軟件,其主要特點(diǎn)如下:
1.1 軟件開發(fā)環(huán)境和運(yùn)行環(huán)境不同 嵌入式系統(tǒng)軟件的開發(fā)通常采用交叉編譯的方法,即軟件的開發(fā)是在通用計(jì)算機(jī)上進(jìn)行的,而軟件的運(yùn)行環(huán)境是在嵌入式專用設(shè)備上。開放環(huán)境被視為宿主平臺(tái),操作環(huán)境是目標(biāo)平臺(tái),相應(yīng)的測(cè)試稱為宿主測(cè)試和交叉測(cè)試。
1.2 缺乏可視性 嵌入式軟件可視性的缺乏主要表現(xiàn)在兩個(gè)方面:(1)數(shù)據(jù)可視性:嵌入式系統(tǒng)通常不顯示設(shè)備和存儲(chǔ)設(shè)備,只有在線實(shí)時(shí)觀察或數(shù)據(jù)傳輸給主機(jī)才能分析結(jié)果;因?yàn)榍度胧杰浖拈_發(fā)環(huán)境和他的運(yùn)行環(huán)境不相同,一方面無法實(shí)時(shí)觀察到程序的運(yùn)行效果,另一方面,程序在仿真環(huán)境和目標(biāo)設(shè)備中的運(yùn)行效果可能會(huì)有所不同。
1.3 實(shí)時(shí)性要求較高 在多任務(wù)嵌入式系統(tǒng)中,對(duì)不同重要性的任務(wù)進(jìn)行合理調(diào)度是保證每個(gè)任務(wù)及時(shí)執(zhí)行的關(guān)鍵,單靠提高處理器速度是無法完成和改進(jìn)的,這種任務(wù)調(diào)度只能通過優(yōu)化編寫的系統(tǒng)軟件來實(shí)現(xiàn)。因此,實(shí)時(shí)性是系統(tǒng)軟件的基本要求。
2.開發(fā)嵌入式軟件所需的具備知識(shí)
(1)理論基礎(chǔ)知識(shí):(1)微機(jī)原理與接口技術(shù),單片機(jī)原理與接口技術(shù)。(2)嵌入式基本原理,單片機(jī)包括STM32、MSP430等。嵌入式FPGA:設(shè)計(jì)邏輯、更改協(xié)議、算法設(shè)計(jì)等。嵌入式DSP:DSP其算法開發(fā)與驅(qū)動(dòng)開發(fā)等等。嵌入式的ARM:驅(qū)動(dòng)與應(yīng)用程序開發(fā)、加載程序開發(fā)和系統(tǒng)內(nèi)核等等。(3)嵌入式專業(yè)性應(yīng)用基礎(chǔ)。有關(guān)多媒體和數(shù)字信息處理的常識(shí)包括聲音、圖像,另外相關(guān)通信軟件的常識(shí)包括隨機(jī)性信號(hào)自適應(yīng)基礎(chǔ)、通信基本原理等,最后還有相關(guān)控制領(lǐng)域的常識(shí)包括控制原理和人工智能等。
(2)硬件方面的基本知識(shí)與基本技能;(1)電路與電子技術(shù)基礎(chǔ):電路分析理論基礎(chǔ)、模電與數(shù)電基礎(chǔ)、微處理器技術(shù)和電子元器件理論知識(shí)。(2)電路圖的識(shí)別與測(cè)繪。(3) PCB的基礎(chǔ):PCB映射和加工等等。(4)指令系統(tǒng)可以選擇精簡指令系統(tǒng)(精簡指令集計(jì)算機(jī),簡稱RISC)或復(fù)雜指令系統(tǒng)(復(fù)雜指令集計(jì)算機(jī),簡稱CISC)。通過在數(shù)據(jù)通道中將其他麻煩的指令清除,RISC保證了指令的快速執(zhí)行,并且節(jié)省了指令運(yùn)行所需的時(shí)間,提高了命令運(yùn)行的效率,使嵌入式系統(tǒng)硬件設(shè)計(jì)更加容易
3.嵌入式軟件開發(fā)環(huán)境構(gòu)建
3.1 設(shè)計(jì)思路構(gòu)建嵌入式軟件開發(fā)環(huán)境的前提是要根據(jù)目標(biāo)軟件的需要、特性等來進(jìn)行較為詳細(xì)的考慮,再根據(jù)嵌入式軟件的大致開發(fā)設(shè)計(jì)思想,以確保所設(shè)計(jì)軟件開發(fā)環(huán)境可以達(dá)到運(yùn)用時(shí)工作的預(yù)期以及工作目的的要求,因此,在設(shè)計(jì)嵌入式軟件開發(fā)環(huán)境構(gòu)建的大體思路無非是集中于以下幾點(diǎn):一是保證通用性,即所設(shè)計(jì)的環(huán)境能滿足嵌入式軟件開發(fā)環(huán)境對(duì)現(xiàn)在各種BSP、RTOS等的開發(fā)需求;達(dá)到增加嵌入式軟件的功能的,第四,所構(gòu)建的嵌入式軟件開發(fā)環(huán)境一定要滿足到支持市面上的編譯語言,如C語言等,來確保計(jì)算機(jī)語言編寫軟件的多元化的功能,確保嵌入式軟件運(yùn)行的效率。
3.2 構(gòu)建流程首先,一個(gè)虛擬工作站是不可或缺的,在工作站中構(gòu)建一個(gè)虛擬機(jī)。然后輸入啟動(dòng)命令來啟動(dòng)SSH、FTP等系統(tǒng)網(wǎng)絡(luò)服務(wù),緊接著創(chuàng)造一個(gè)SSH的主框架。將SSH調(diào)整并設(shè)置為boot,將VSFTP安裝,下面檢測(cè)并創(chuàng)建相應(yīng)的服務(wù),輸入正確的用戶名和其對(duì)應(yīng)的password,接著輸入命令sudoyum install -ysubversion安裝SVN,檢查核對(duì)所安裝版本的法律信息。安裝交叉編譯工具鏈,設(shè)置環(huán)境變量vi/etc/profile。裝置Hudson,保證服務(wù)器上軟件安置的具體路徑為/usr/local/tomcat/hudson,以及軟件構(gòu)建工作路徑/home/ Hudson /為了便于維護(hù),可以分別對(duì)Hudson的以上兩目錄進(jìn)行操作和工作調(diào)配。執(zhí)行具有根權(quán)限的客戶端命令usec,結(jié)束時(shí),裝置Boost庫以提供C語言用于之后軟件開發(fā)環(huán)境的所需的源代碼,確保之后軟件開發(fā)中一系列操作的完美進(jìn)行。
4結(jié)語:
根據(jù)以上的歸納,讓我們對(duì)嵌入式系統(tǒng)以及在其基礎(chǔ)上開發(fā)的各種嵌入式軟件的大體樣貌有了全新的認(rèn)知。它具有的知識(shí)面廣、技術(shù)種類多、工作任務(wù)重等特點(diǎn)。在構(gòu)建嵌入式軟件開發(fā)環(huán)境時(shí),需要的是各類專業(yè)技術(shù)人員聚集在一起,齊心協(xié)力,集思廣益,還要要求嵌入式軟件開發(fā)背后的資源支持,在達(dá)到完善的開發(fā)環(huán)境體系下,使各類軟件的開發(fā)有更好的知識(shí)與理論基礎(chǔ)。
參考文獻(xiàn)
[1]麥先根,田丹,霍峰.基于 Eclipse 平臺(tái)的嵌入式軟件集成開發(fā)環(huán)境目標(biāo)機(jī)通信管理[J]. 航空計(jì)算技術(shù),2018,44(3):105-108,112.
[2]李小航.基于虛擬技術(shù)的嵌入式軟件開發(fā)環(huán)境的構(gòu)建與實(shí)踐[J]. 電腦知識(shí)與技術(shù),2019,6(32):9037-9038,9040.
[3]潘石.基于構(gòu)件的嵌入式軟件仿真開發(fā)環(huán)境模型研究[J].信息與電腦(理論版),2019(9):43-44.
[4]張魯峰,熊志輝,李思昆.基于虛擬微處理器的嵌入式軟件開發(fā)與系統(tǒng)驗(yàn)證環(huán)境[J].計(jì)算機(jī)研究與發(fā)展,2020(11):1657-1661.