張芮

關鍵詞:軟件架構;嵌入式軟件;開發模式
1引言
隨著科技的快速發展,關于嵌入式軟件開發技術水平也得到了良好的提升。所謂嵌入式軟件,主要是嵌入式系統中的重要環節,模塊化特性較為突出,可以較好地保證系統自身功能性。然而,因為多方面因素的影響,如今嵌入式軟件的開發以及架構構建中還存在一定的不足,所以為了能夠更好地開展嵌入式軟件開發以及架構構建,需要做好合理性分析。
2嵌入式軟件
這一類軟件主要指的是圍繞硬件嵌入的操作系統和開發工具軟件。如今,對于這類軟件的開發設計,所涵蓋的內容有傳感器、微處理器以及控制器等。針對嵌入式系統進行的研究,目前涉及得較為全面。從特征上來看,這類軟件的突出表現有:有較高的可靠性、適用性以及程序代碼較為精簡等。嵌入式軟件形式能夠使軟硬件之間形成緊密耦合,從而可以靈活多樣化地嵌入系統。
3軟件開發及架構構建問題
在進行軟件開發的過程中,出于對系統資源消耗節約的考慮,進行軟件編碼日寸,通常會優先考慮用戶使用嵌入式軟件時的問題來進行研發。基于此,設計開發出來的軟件在功能多樣化方面就會受到一定的制約,無法有效滿足用戶對軟件功能多元化的需求。因此,軟件開發技術人員在進行開發和架構構建時,需要統籌其中的問題,并明確相關的軟件設計開發思路。有關技術人員在落實這一項工作時,需要解決軟件自身問題,同時需要滿足用戶提出的功能多樣化要求,最大限度地保證開發軟件在穩定性和兼容性方面都有良好的表現。針對這類問題,軟件開發人員在編寫嵌入式軟件的系統中間層代碼時,需要合理地增加新的代碼,確保處理的科學性,以使軟件在實際使用時能夠有較好的性能和較高的效率。另外,嵌入式軟件在操作和實際應用中,因為功能對接口驅動方面會存在相應的差別,基于這一問題的考慮,在進行軟件開發時,對其兼容性需要進行逐步改進和優化,對于部分硬件接口,可以進行系統驅動層代碼的重新編寫。
4嵌入式軟件開發模式分析
這類軟件開發的形式,與桌面軟件進行比較,還存在一定的不同。具體來講,對于嵌入式軟件進行的研發,涉及的內容需要進行統籌規劃,并且對于其中的問題要進行有序解決。比如,關于代碼的編譯,其硬件系統不同,編譯植入也需要有科學的應對,注意其兼容性以及穿插性互譯。基于此,其為軟件開發人員帶來較大的挑戰。如果沒有獲得良好的解決,開發出的軟件系統在應用時就不夠靈活,無法有效地適應市場發展需求。為了能夠使信息資源的傳遞和交換得到最大化的實現,軟件開發時,可以借助多平臺研發條件以及配套交付方式進行,以提高研發的質量,同時滿足用戶對軟件功能的需求。如今,這樣的方式對該類軟件的開發起到了良好的推動作用。
針對這類軟件進行開發的初級階段,最主要的是準備工作,開發涉及的內容包含相關設施和有關研發環境。同時,對于技術人員來講,最重要的是需要依托模擬設備的反饋模塊對相關代碼進行逐步調試。而在這一環節中,相關人員最重要的是針對其應用程序開展編譯工作,然后通過初始運行的方式對系統相應的性能進行檢測,依照檢測獲得的結果進行改進和優化。系統開發中如果遇到漏洞和缺陷,技術人員就需要針對其修改有關的程序代碼,這樣反復不斷修正,以使系統逐步完善。上述工作完成后,接下來進行模擬設備的反饋,技術人員針對代碼進行檢測時,需要注意做好相應的分類,同時在分完類別的前提下開展集成化編譯,并進行有關運行和調試工作。這樣的編譯方式最開始是編人目標系統中,開展試運行工作,然后對于調試過程形成完整的評估數據,通過數據報告的分析,找出其中存在的問題,技術人員會針對其問題進行編碼的改進和優化。
5嵌入式軟件的開發方法
5.1結構化設計方法
這樣的設計與開發方式主要分為單一化和多樣化的任務形式。前一種形式設計主要遵循結構化原則,相應地處理不同時間的模式,然后以此為核心達到循環調用的目的。后者的設計形式主要遵循模塊劃分的原則,對相應的模塊進行綜合化使用。不過,因為這種設計方法在各方面都有較高的要求,所以,對嵌入式軟件進行開發時,應用得比較謹慎。
5.2面向對象設計方法
這種方法比較貼近人類的思維模式,在實際應用的過程中,對象存在訪問需求時,以相應信息為基礎,這樣開展的設計工作就會有更高的安全性。并且,采取這一設計開發方式,針對較大規模的應用程序設計,也可以獲得良好的效果,軟件結構可以更好地體現其功能性,同時有關軟件也會有更加可靠的維護性和擴展性。
6軟件架構
6.1應用架構
這一類軟件的應用架構主要劃分為不同的層級,其中包含接人層、應用層以及基礎層。一般來講,對這類軟件進行結構的功能性設計時,用戶可以使用的方法主要有三種,可以使用手機設備、計算機設備以及遠程遙控,以達到對相關數據的管理以及安全控制,借助通信、采集等方式,應用層面可以對相應的硬件設備進行有效控制,如電子電器、儀表等,從而能夠較好地滿足用戶功能需求。圖1是嵌入式軟件應用架構圖。
對于嵌入式軟件的不同層面,經過代碼的協調處理,可以使相應的設備實現預設功能,通過接口和有關設備連接,并且在不同設備的作用下,系統整體運行得以實現。在接人層,接收到這一方面的需求時,其系統功能以及接人端的需求都要進行科學的配置,以確保軟件系統能夠達到相應的要求。而對于微內核層,最重要的是系統需要達到調控任務的目的,并且依照存儲以及分配的功能,使系統軟件當中的應用程序組件可以得到循環再利用,這樣的開發設計能夠使其投入運行后,在系統資源方面可以更好地降低損耗,繼而使軟件在開展工作時能夠有更高的質量和效率。另外,在面對用戶時,需要考慮的是有關服務功能需求,主要是讓軟件的使用范圍得以良好的擴展。再者,有關操作層面,從功能的角度來講,通常是注重硬件的集成,對于軟件接口需要達到統一,由此軟件在進行移植時,其成功的概率才會更高。而在這一個過程中,關于軟件的設計開發能夠充分地展現代碼的重復化特征。因此,在對芯片進行代碼編譯時,需要針對其不同的種類,相互對應。基于此,具有同一功能的代碼經過重復化的使用后,相對應的時間消耗會有較大的減少,同時軟件系統在運行方面會有良好的效率和性能[1]。
6.2函式庫
6.2.1媒體庫
對于該類軟件的這部分架構,主要是為了向用戶提供有關音頻、視頻等信息。用戶可以借助相應的操作系統進行收集以及分析,同時有關應用可以得到相應的預警提示,使得有關應用程序可以得到可靠的安全防控,進而達到有效處理。
6.2.2Web
軟件架構這一部分,主要是開發設計網頁瀏覽器,以便能夠對相應的引擎進行良好的使用,這樣其瀏覽器的內核可以得到有效保障,軟件在應用方面才會有更好的體現。
6.2.3SSL
這一部分的研發和構建,通常是為了能夠確保在具體進行信息傳遞時,能夠有更好的安全性,并且借助相應的數據加密技術,達到對數據的安全保護處理。因此,在軟件系統運行中,如果存在網絡信息交易,就能有較高的穩定性。借助SSL技術,也能夠為有關數據通信安全帶來可靠的支持。如今,在使用有關的傳輸協議時,對于軟件層級中的數據可以進行有效壓縮。同時,在這一技術協議下,在對相關數據進行傳輸時,各方的身份都可以得到有效驗證,從而可以達到數據傳輸中有關算法的可靠加密[2]。
6.2.4內存數據庫
軟件架構中的數據管理,通常會牽涉內存數據庫的建立。這里的研發設計,主要是采取開源數據庫設計方式.使用FDB,SQL等協議,開展相應的架構構建。其中,在開展SQL的設計中,主要通過C語言的方式,在編寫對應的引擎時,可以達到輕量化的目標,而且也能夠展現其獨立性特點,盡可能地減小其受外界因素的影響程度。此外,對SQL進行使用時,也會盡可能地避免其受外鍵的影響。而且,從技術的角度來講,這部分的開發設計需要以數據庫層級為基礎,以獨立化的邏輯進行設計,即便是針對多個進程進行使用,也可以得到有效的處置。同時,對一樣的數據進行讀取時,只需要將其中之一寫入就可以達到目的。基于此,數據庫或者某個程序在進行運行使用時,可以展現其獨立性的特點。軟件系統假如存在單獨的指令控制,可以避免出現其他類別的讀寫操作。
6.3Linux內核
6.3.1系統調用接口
設計出的架構層級,這一部分主要負責在相應的條件下運行用戶有關函數調用的請求。但是實際來講,對于這一部分的接口,在進行系統結構的設計時,對其結構種類會有一定的依賴性。同時,如果處理器具有一樣的型號,在實際的開發設計中,可能會遇到部分問題。在進行軟件架構的設置時,有關函數調用可以使用多路形式。
6.3.2進程管理
架構構建中這一部分的開發設計最重要的是面對軟件運行的進程進行相應的管理。其中,對于各部分進程,主要是在執行器程序中進行。從系統的內核角度來講,各個進程組成處理器的線程,從而能夠形成虛擬化的空間。這部分架構的功能,在進行開發設計時,要能夠實現對活動進程的良好處理,并且也要能夠達到處理器共享需求。現階段,在有關的研發中,通常都是使用新型的調度算法進行分析[3]。
6.3.3內存管理
軟件架構中的這一部分設計主要是針對計算機的內存,發揮的效用非常關鍵。所以,在實際進行設置的過程中,通常會體現出系統的實際性能。開展相應的開發設計工作時,需要在相應范圍的資源內,建立虛擬地址。對于不同的內存管理子系統,其功能性的良好展現,需要可靠的使用函數實現交互調用[4]。
6.3.4虛擬文件系統
針對這部分軟件架構的建設,最關鍵的是為其建立科學的接口,進而使系統在應用時更加可靠。這部分架構系統的設計,針對的是系統整體的文件緩沖區域,使其能夠有一個具有高穩定性的函數集。對這一部分進行有效處理后,能夠使相應的數據有更加可靠的保證。同日寸,在這樣的情況下,有關設備在進行訪問時,也會得到對應的處置。緩沖區域由于能夠進行相應的緩存,可以達到更好的驅動效果。這樣特定化的設備具有更加可靠的接口,軟件系統在運行時就會有較高的穩定性[5]。
7結束語
隨著我國信息技術的快速發展,嵌入式軟件在各類信息化設備中得以應用,有關嵌入式軟件的開發模式以及架構研究得到了廣泛關注。本文對此開展了分析與探討工作,提供了一種較為普適的嵌入式軟件開發模式及架構,能夠為嵌入式軟件的持續優化升級打好基礎,提高嵌入式軟件開發水準。