嵌入式系統關(guān)鍵技術(shù)分析與開(kāi)發(fā)應用
關(guān)鍵詞:嵌入式系統 嵌入式處理器 微內核 內存管理單元 藍牙系統
引 言
在當前數字信息技術(shù)和網(wǎng)絡(luò )技術(shù)高速發(fā)展的后PC(Post-PC)時(shí)代,嵌入式系統已經(jīng)廣泛地滲透到科學(xué)研究、工程設計、軍事技術(shù)、各類(lèi)產(chǎn)業(yè)和商業(yè)文化藝術(shù)以及人們的日常生活等方方面面中。隨著(zhù)國內外各種嵌入式產(chǎn)品的進(jìn)一步開(kāi)發(fā)和推廣,嵌入式技術(shù)越來(lái)越和人們的生活緊密結合。
1970年左右出現了嵌入式系統的概念,此時(shí)的嵌入式系統很多都不采用操作系統,它們只是為了實(shí)現某個(gè)控制功能,使用一個(gè)簡(jiǎn)單的循環(huán)控制對外界的控制請求進(jìn)行處理。當應用系統越來(lái)越復雜、利用的范圍越來(lái)越廣泛的時(shí)候,每添加一項新的功能,都可能需要從頭開(kāi)始設計。沒(méi)有操作系統已成為一個(gè)最大的缺點(diǎn)了。
C語(yǔ)言的出現使操作系統開(kāi)發(fā)變得簡(jiǎn)單。從上世紀80年代開(kāi)始,出現了各種各樣的商用嵌入式操作系統百家爭鳴的局面,比較著(zhù)名的有VxWorks、pSOS和Windows CE等等,這些操作系統大部分是為專(zhuān)有系統而開(kāi)發(fā)的。另外,源代碼開(kāi)放的嵌入式Linux,由于其強大的網(wǎng)絡(luò )功能和低成本,近來(lái)也得到了越來(lái)越多的應用。
1 嵌入式系統的技術(shù)特點(diǎn)
嵌入式系統通常包括構成軟件的基本運行環(huán)境的硬件和操作系統兩部分。嵌入式系統的運行環(huán)境和應用場(chǎng)合決定了嵌入式系統具有區別于其它操作系統的一些特點(diǎn)。
(1)嵌入式處理器 嵌入式處理器可以分為三類(lèi):嵌入式微處理器、嵌入式微控制器、嵌入式DSP(Digital Signal Processor)。嵌入式微處理器就是和通用計算機的微處理器對應的CPU。在應用中,一般是將微處理器裝配在專(zhuān)門(mén)設計的電路板上,在母板上只保留和嵌入式相關(guān)的功能即可,這樣可以滿(mǎn)足嵌入式系統體積小和功耗低的要求。目前的嵌入式處理器主要包括:PowerPC、Motorola 68000、ARM系列等等。
嵌入式微控制器又稱(chēng)為單片機,它將CPU、存儲器(少量的RAM、ROM或兩者都有)和其它外設封裝在同一片集成電路里。常見(jiàn)的有8051。
嵌入式DSP專(zhuān)門(mén)用來(lái)對離散時(shí)間信號進(jìn)行極快的處理計算,提高編譯效率和執行速度。在數字濾波、FFT、譜分析、圖像處理的分析等領(lǐng)域,DSP正在大量進(jìn)入嵌入式市場(chǎng)。
(2)微內核結構
大多數操作系統至少被劃分為內核層和應用層兩個(gè)層次。內核只提供基本的功能,如建立和管理進(jìn)程、提供文件系統、管理設備等,這些功能以系統調用方式提供給用戶(hù)。一些桌面操作系統,如Windows、Linux等,將許多功能引入內核,操作系統的內核變得越來(lái)越大。內核變大使得占用的資源增多,剪裁起來(lái)很麻煩。
大多數嵌入式操作系統采用了微內核結構,內核只提供基本的功能,比如:任務(wù)的調度、任務(wù)之間的通信與同步、內存管理、時(shí)鐘管理等。其它的應用組件,比如網(wǎng)絡(luò )功能、文件系統、GUI系統等均工作在用戶(hù)態(tài),以系統進(jìn)程或函數調用的方式工作。因而系統都是可裁減的,用戶(hù)可以根據自己的需要選用相應的組件。
(3)任務(wù)調度
在嵌入式系統中,任務(wù)即線(xiàn)程。大多數的嵌入式操作系統支持多任務(wù)。多任務(wù)運行的實(shí)現實(shí)際是靠CPU在多個(gè)任務(wù)之間切換、調度。每個(gè)任務(wù)都有其優(yōu)先級,不同的任務(wù)優(yōu)先級可能相同也可能不同。任務(wù)的調度有三種方式:可搶占式調度、不可搶占式調度和時(shí)間片輪轉調度。不可搶占式調度是指,一個(gè)任務(wù)一旦獲得CPU就獨占CPU運行,除非由于某種原因,它決定放棄CPU的使用權;可搶占式調度是基于任務(wù)優(yōu)先級的,當前正在運行的任務(wù)可以隨時(shí)讓位給優(yōu)先級更高的處于就緒態(tài)的其它任務(wù);當兩個(gè)或兩個(gè)以上任務(wù)有同樣的優(yōu)先級,不同任務(wù)輪轉地使用CPU,直到系統分配的CPU時(shí)間片用完,這就是時(shí)間片輪轉調度。
目前,大多數嵌入式操作系統對不同優(yōu)先級的任務(wù)采用基于優(yōu)先級的搶占式調度法,對相同優(yōu)先級的任務(wù)則采用時(shí)間片輪轉調度法。
(4)硬實(shí)時(shí)和軟實(shí)時(shí)
有些嵌入式系統對時(shí)間的要求較高,稱(chēng)之為實(shí)時(shí)系統。有兩種類(lèi)型的實(shí)時(shí)系統:硬實(shí)時(shí)系統和軟實(shí)時(shí)系統。軟實(shí)時(shí)系統并不要求限定某一任務(wù)必須在一定的時(shí)間內完成,只要求各任務(wù)運行得越快越好;硬實(shí)時(shí)系統對系統響應時(shí)間有嚴格要求,一旦系統響應時(shí)間不能滿(mǎn)足,就可能會(huì )引起系統崩潰或致命的錯誤,一般在工業(yè)控制中應用較多。
(5)內存管理
針對有內存管理單元(MMU)的處理器設計的一些桌面操作系統,如Windows、Linux,使用了虛擬存儲器的概念。虛擬內存地址被送到MMU。在這里,虛擬地址被映射為物理地址,實(shí)際存儲器被分割為相同大小的頁(yè)面,采用分頁(yè)的方式載入進(jìn)程。一個(gè)程序在運行之前,沒(méi)有必要全部裝入內存,而是僅將那些當前要運行的部分頁(yè)面裝入內存運行。 大多數嵌入式系統針對沒(méi)有MMU的處理器設計,不能使用處理器的虛擬內存管理技術(shù),采用的是實(shí)存儲器管理策略。因而對于內存的訪(fǎng)問(wèn)是直接的,它對地址的訪(fǎng)問(wèn)不需要經(jīng)過(guò)MMU,而是直接送到地址線(xiàn)上輸出,所有程序中訪(fǎng)問(wèn)的地址都是實(shí)際的物理地址;而且,大多數嵌入式操作系統對內存空間沒(méi)有保護,各個(gè)進(jìn)程實(shí)際上共享一個(gè)運行空間。一個(gè)進(jìn)程在執行前,系統必須為它分配足夠的連續地址空間,然后全部載入主存儲器的連續空間。
由此可見(jiàn),嵌入式系統的開(kāi)發(fā)人員不得不參與系統的內存管理。從編譯內核開(kāi)始,開(kāi)發(fā)人員必須告訴系統這塊開(kāi)發(fā)板到底擁有多少內存;在開(kāi)發(fā)應用程序時(shí),必須考慮內存的分配情況并關(guān)注應用程序需要運行空間的大小。另外,由于采用實(shí)存儲器管理策略,用戶(hù)程序同內核以及其它用戶(hù)程序在一個(gè)地址空間,程序開(kāi)發(fā)時(shí)要保證不侵犯其它程序的地址空間,以使得程序不至于破壞系統的正常工作,或導致其它程序的運行異常;因而,嵌入式系統的開(kāi)發(fā)人員對軟件中的一些內存操作要格外小心。
(6)內核加載方式
嵌入式操作系統內核可以在Flash上直接運行,也可以加載到內存中運行。Flash的運行方式,是把內核的可執行映像燒寫(xiě)到Flash上,系統啟動(dòng)時(shí)從Flash的某個(gè)地址開(kāi)始執行。這種方法實(shí)際上是很多嵌入式系統所采用的方法。內核加載方式是把內核的壓縮文件存放在Flash上,系統啟動(dòng)時(shí)讀取壓縮文件在內存里解壓,然后開(kāi)始執行。這種方式相對復雜一些,但是運行速度可能更快,因為RAM的存取速率要比Flash高。
由于嵌入式系統的內存管理機制,嵌入式操作系統對用戶(hù)程序采用靜態(tài)鏈接的形式。在嵌入式系統中,應用程序和操作系統內核代碼編譯、鏈接生成一個(gè)二進(jìn)制影像文件來(lái)運行。
2 嵌入式系統開(kāi)發(fā)相關(guān)技術(shù)
相對于在Windows環(huán)境下的開(kāi)發(fā)應用程序,嵌入式系統開(kāi)發(fā)有著(zhù)很多的不同。不同的硬件平臺和操作系統帶來(lái)了許多附加的開(kāi)發(fā)復雜性。 2.1 嵌入式開(kāi)發(fā)過(guò)程
在嵌入式開(kāi)發(fā)過(guò)程中有宿主機和目標機的角色之分:宿主機是執行編譯、鏈接、定址過(guò)程的計算機;目標機指運行嵌入式軟件的硬件平臺。首先須把應用程序轉換成可以在目標機上運行的二進(jìn)制代碼。這一過(guò)程包含三個(gè)步驟:編譯、鏈接、定址。編譯過(guò)程由交叉編譯器實(shí)現。所謂交叉編譯器就是運行在一個(gè)計算機平臺上并為另一個(gè)平臺產(chǎn)生代碼的編譯器。常用的交叉編譯器有GNU C/C++(gcc)。編譯過(guò)程產(chǎn)生的所有目標文件被鏈接成一個(gè)目標文件,稱(chēng)為鏈接過(guò)程。定址過(guò)程會(huì )把物理存儲器地址指定給目標文件的每個(gè)相對偏移處。該過(guò)程生成的文件就是可以在嵌入式平臺上執行的二進(jìn)制文件。 嵌入式開(kāi)發(fā)過(guò)程中另一個(gè)重要的步驟是調試目標機上的應用程序。嵌入式調試采用交叉調試器,一般采用宿主機-目標機的調試方式,它們之間由串行口線(xiàn)或以太網(wǎng)或BDM線(xiàn)相連。交叉調試有任務(wù)級、源碼級和匯編級的調試,調試時(shí)需將宿主機上的應用程序和操作系統內核下載到目標機的RAM中或直接燒錄到目標機的ROM中。目標監控器是調試器對目標機上運行的應用程序進(jìn)行控制的代理(Debugger Agent),事先被固化在目標機的Flash、ROM中,在目標機上電后自動(dòng)啟動(dòng),并等待宿主機方調試器發(fā)來(lái)的命令,配合調試器完成應用程序的下載、運行和基本的調試功能,將調試信息返回給宿主機。 2.2 向嵌入式平臺移植軟件
大部分嵌入式開(kāi)發(fā)人員選用的軟件開(kāi)發(fā)模式是先在PC機上編寫(xiě)軟件,再進(jìn)行軟件的移植工作。在PC機上編寫(xiě)軟件時(shí),要注意軟件的可移植性,選用具有較高移植性的編程語(yǔ)言(如C語(yǔ)言),盡量少調用操作系統函數,注意屏蔽不同硬件平臺帶來(lái)的字節順序、字節對齊等問(wèn)題。以下是我們在移植協(xié)議棧過(guò)程中的一些體會(huì )。
2.2.1 字節順序
字節順序是指占內存多于一個(gè)字節類(lèi)型的數據在內存中的存放順序,通常有小端、大端兩種字節順序。小端字節序指低字節數據存放在內存低地址處,高字節數據存放在內存高地址處;大端字節序是高字節數據存放在低地址處,低字節數據存放在高地址處?;赬86平臺的PC機是小端字節序的,而有的嵌入式平臺則是大端字節序的。因而對int、uint16、uint32等多于1字節類(lèi)型的數據,在這些嵌入式平臺上應該變換其存儲順序。通常我們認為,在空中傳輸的字節的順序即網(wǎng)絡(luò )字節序為標準順序,考慮到與協(xié)議的一致以及與同類(lèi)其它平臺產(chǎn)品的互通,在程序中發(fā)數據包時(shí),將主機字節序轉換為網(wǎng)絡(luò )字節序,收數據包處將網(wǎng)絡(luò )字節序轉換為主機字節序。
2.2.2 字節對齊
有的嵌入式處理器的尋址方式?jīng)Q定了在內存中占2字節的int16、uint16等類(lèi)型數據只能存放在偶數內存地址處,占4字節的int32 、uint32 等類(lèi)型數據只能存放在4的整數倍的內存地址處;占8字節的類(lèi)型數據只能存放在8的整數倍的內存地址處;而在內存中只占1字節的類(lèi)型數據可以存放在任意地址處。由于這些限制,在這些平臺上編程時(shí)有很大的不同。首先,結構體成員之間會(huì )有空洞,比如這樣一個(gè)結構:
typedef struct test{
char a;
uint16 b;
}TEST
結構TEST在單字節對齊的平臺上占內存三個(gè)字節,而在以上所述的嵌入式平臺上有可能占三個(gè)或四個(gè)字節,視成員a的存儲地址而定。當a存儲地址為偶數時(shí),該結構占四個(gè)字節,在a與b之間存在一個(gè)字節的空洞。對于通信雙方都是對結構成員操作的,這種情況不會(huì )出錯,但如果有一方是逐字節讀取內容的(通信協(xié)議大都如此),就會(huì )錯誤地讀到其它字節的內容。其次,若對內存中數據以強制類(lèi)型轉換的方式讀取,字節對齊的不同會(huì )引起數據讀取的錯誤。因為假如指針指在基數內存地址處,我們想取得占內存兩個(gè)字節的數據存放在uint16型的變量中,強制類(lèi)型轉換的結果是取得了該指針所指地址與前一地址處的數據,并沒(méi)有按照我們的愿望取該指針所指地址與后一地址處的數據,這樣就導致了數據讀取的錯誤。 解決字節對齊有許多方法,比如可以在GCC的項目管理文件MakeFile中增加編譯選項--pack-struct;但這種方法只能去除結構中的空洞,并不能解決強制類(lèi)型轉換引起的錯誤。為了增強軟件的可移植性以及和同類(lèi)其它平臺產(chǎn)品的互通性,我們在收數據包處增加了拆包的函數,發(fā)數據包處增加了組包的函數。這兩個(gè)函數解決了字節序的問(wèn)題,也解決了字節對齊的問(wèn)題。即組包時(shí)根據參數中的格式字符串將內存中的不同數據類(lèi)型的某段數據放在指定地址處,組成包發(fā)給下層;拆包時(shí),根據參數中的格式字符串將收到的內存中的數據存放在不同類(lèi)型的變量或結構成員中。在函數中針對不同的數據類(lèi)型作不同的處理。 2.2.3 位 段
由于位段的空間分配方向因硬件平臺的不同而不同,對X86平臺,位段是從右向左分配的;而一些嵌入式平臺,位段是從左向右分配的。分配順序的不同導致了數據存取的錯誤。解決這一問(wèn)題的一種方法是采用條件編譯的方式,針對不同的平臺定義順序不同的位段;也可以在前面所述的兩個(gè)函數中加上對位段的處理。
2.2.4 代碼優(yōu)化
嵌入式系統對應用軟件的質(zhì)量要求更高,因而在嵌入式開(kāi)發(fā)中尤其須注意對代碼進(jìn)行優(yōu)化,盡可能地提高代碼的效率,減少代碼的大小。雖然現代C和C++編譯器都提供了一定程度的代碼優(yōu)化,但大部分由編譯器執行的優(yōu)化技術(shù)僅涉及執行速度和代碼大小的平衡,不可能使程序既快又小,因而必須在編寫(xiě)嵌入式軟件時(shí)采取必要的措施。
(1)提高代碼的效率
?、賡witch-case 語(yǔ)句。在程序中經(jīng)常會(huì )使用switch-case語(yǔ)句,每一個(gè)由機器語(yǔ)言實(shí)現的測試和跳轉僅僅是為了決定下一步要做什么,就浪費了處理器時(shí)間。為了提高速度,可以把具體的情況按照它們發(fā)生的相對頻率排序。即把最可能發(fā)生的情況放在第一,最不可能發(fā)生的情況放在最后,這樣會(huì )減少平均的代碼執行時(shí)間。
?、?nbsp;全局變量。使用全局變量比向函數傳遞參數更加有效率,這樣做去除了函數調用前參數入棧和函數完成后參數出棧的需要。當然,使用全局變量會(huì )對程序有一些負作用。
(2)減小代碼的大小
嵌入式系統編程應避免使用標準庫例程,因為很多大的庫例程設法處理所有可能的情況,所以占用了龐大的內存空間,因而應盡可能地減少使用標準庫例程。
(3)避免內存泄漏
用戶(hù)內存空間(堆)為RAM中全局數據和任務(wù)堆??臻g都分配后的剩余空間,為了使程序能有足夠的內存運行,必須在申請的內存不用后及時(shí)地將其釋放,以確保再次申請時(shí)能有空間。如果程序中存在內存泄漏(即申請內存后沒(méi)有及時(shí)釋放)的情況,程序最終會(huì )因為沒(méi)有足夠的內存空間而無(wú)法運行。 3 嵌入式系統的廣泛應用
嵌入式系統的應用前景是非常廣泛的,人們將會(huì )無(wú)時(shí)無(wú)處不接觸到嵌入式產(chǎn)品,從家里的洗衣機、電冰箱,到作為交通工具的自行車(chē)、小汽車(chē),到辦公室里的遠程會(huì )議系統等等。特別是以藍牙為代表的小范圍無(wú)線(xiàn)接入協(xié)議的出現,使嵌入式無(wú)線(xiàn)電的概念悄然興起。當嵌入式的無(wú)線(xiàn)電芯片的價(jià)格可被接受時(shí),它的應用可能會(huì )無(wú)所不在。在家中、辦公室、公共場(chǎng)所,人們可能會(huì )使用數十片甚至更多這樣的嵌入式無(wú)線(xiàn)電芯片,將一些電子信息設備甚至電氣設備構成無(wú)線(xiàn)網(wǎng)絡(luò );在車(chē)上、旅途中,人們利用這樣的嵌入式無(wú)線(xiàn)電芯片可以實(shí)現遠程辦公、遠程遙控,真正實(shí)現把網(wǎng)絡(luò )隨身攜帶。下面介紹幾種具體的應用。
(1)嵌入式移動(dòng)數據庫
所謂的移動(dòng)數據庫是支持移動(dòng)計算的數據庫,有兩層含義:① 用戶(hù)在移動(dòng)的過(guò)程中可以聯(lián)機訪(fǎng)問(wèn)數據庫資源。② 用戶(hù)可以帶著(zhù)數據庫移動(dòng)。典型的應用場(chǎng)合有在開(kāi)著(zhù)的救護車(chē)上查詢(xún)最近的醫院。該系統由前臺移動(dòng)終端、后臺同步服務(wù)器組成,移動(dòng)終端上有嵌入式實(shí)時(shí)操作系統和嵌入式數據庫。中國人民大學(xué)正在開(kāi)發(fā)該系統,他們和Hopen公司合作,開(kāi)發(fā)了前臺移動(dòng)終端"小精靈"。
(2)嵌入式系統在智能家居網(wǎng)絡(luò )中的應用
智能家居網(wǎng)絡(luò )(E-Home)指在一個(gè)家居中建立一個(gè)通信網(wǎng)絡(luò ),為家庭信息提供必要的通路;在家庭網(wǎng)絡(luò )操作系統的控制下,通過(guò)相應的硬件和執行機構,實(shí)現對所有家庭網(wǎng)絡(luò )上家電和設備的控制和監測。其網(wǎng)絡(luò )結構的組成必然有家庭網(wǎng)關(guān)。家庭網(wǎng)關(guān)主要實(shí)現控制網(wǎng)絡(luò )和信息網(wǎng)絡(luò )的信號綜合并與外界接口,以便作遠程控制和信息交換。不論是網(wǎng)關(guān)還是各家電上的控制模塊,都需有嵌入式操作系統。這些操作系統必須具有內嵌式、實(shí)時(shí)性好、多用戶(hù)的特點(diǎn)。南京東大移動(dòng)互聯(lián)技術(shù)有限公司研制的智能多媒體家庭網(wǎng)關(guān),就是以嵌入式Linux作為該嵌入式設備的操作系統,設備之間的相互通信遵從藍牙通信協(xié)議,可以支持多個(gè)設備同時(shí)接入到固定電話(huà)網(wǎng)、國際互聯(lián)網(wǎng)等其它外部網(wǎng)絡(luò )。
(3)嵌入式語(yǔ)音芯片
嵌入式語(yǔ)音芯片基于嵌入式操作系統,采用語(yǔ)音識別和語(yǔ)音合成、語(yǔ)音學(xué)層次結構體系和文本處理模型等技術(shù);可以應用在手持設備、智能家電等多個(gè)領(lǐng)域,賦予這些設備人性化的交互方式和便利的使用方法;也可應用于玩具中,實(shí)現聲控玩具、仿真寵物、與人對話(huà)的玩具;也能應用于車(chē)載通信設備實(shí)現人機交流。該芯片應用在移動(dòng)通信設備中,比如,手機上短消息來(lái)時(shí),我們不必費力地去看,而是可以聽(tīng)到聲音。 (4)基于小范圍無(wú)線(xiàn)通信協(xié)議的嵌入式產(chǎn)品
以藍牙為代表的小范圍無(wú)線(xiàn)接入協(xié)議與嵌入式系統的結合,必將推動(dòng)嵌入式系統的廣泛應用。近來(lái),基于這些協(xié)議的嵌入式產(chǎn)品層出不窮,包括各種電話(huà)系統、無(wú)線(xiàn)公文包、各類(lèi)數字電子設備以及在電子商務(wù)中的應用。這些產(chǎn)品以其微型化和低成本的特點(diǎn)為它們在家庭和辦公室自動(dòng)化、電子商務(wù)、工業(yè)控制、智能化建筑物和各種特殊場(chǎng)合的應用開(kāi)辟了廣闊的前景。
東南大學(xué)移動(dòng)通信國家重點(diǎn)實(shí)驗室以及依托實(shí)驗室建立的南京東大移動(dòng)互聯(lián)技術(shù)有限公司,從1998年開(kāi)始跟蹤藍牙技術(shù),在香港特區政府創(chuàng )新科技基金、江蘇省"十五"重大科技攻關(guān)以及國家"十五"科技攻關(guān)的資助下,先后設計和研制了多種基于藍牙技術(shù)的嵌入式產(chǎn)品。其中包括符合Bluetooth V1.1標準的嵌入式PSTN網(wǎng)關(guān)和語(yǔ)音終端。它們基于藍牙"三合一電話(huà)"應用模型,選用了中國科學(xué)院凱思昊鵬軟件技術(shù)工程有限公司提供的Hopen OS作為嵌入式開(kāi)發(fā)的軟件平臺,選用華邦的W90221作為硬件平臺。語(yǔ)音終端能通過(guò)PSTN網(wǎng)關(guān)以無(wú)線(xiàn)的方式接入到PSTN網(wǎng)絡(luò )中,實(shí)現和PSTN網(wǎng)用戶(hù)的互通。還有符合Bluetooth V1.1標準的嵌入式局域網(wǎng)接入點(diǎn),它基于藍?quot;局域網(wǎng)接入"應用模型,選用嵌入式Linux操作系統作為軟件平臺,選用Motorola公司的CodeFire 5272作為硬件平臺。通過(guò)該接入點(diǎn),終端用戶(hù)可以自由地接入到Internet,可以同時(shí)支持多個(gè)終端用戶(hù)連接到Internet。其它一些嵌入式產(chǎn)品包括智能多媒體家庭網(wǎng)關(guān)、遠程抄表系統、信息家電等等。
結 語(yǔ)
以上重點(diǎn)介紹了嵌入式系統的特點(diǎn)、嵌入式產(chǎn)品的開(kāi)發(fā)和應用。我們在開(kāi)發(fā)過(guò)程中體會(huì )到:嵌入式系統開(kāi)發(fā)和以前從事的開(kāi)發(fā)工作實(shí)質(zhì)上并無(wú)區別,唯一改變的是每個(gè)硬件平臺都是獨特的,這一個(gè)不同點(diǎn)導致了許多附加的開(kāi)發(fā)復雜性,因而,在嵌入式開(kāi)發(fā)過(guò)程中要格外注意軟件創(chuàng )建過(guò)程;而且,在開(kāi)發(fā)嵌入式產(chǎn)品之前要對選用的嵌入式硬件平臺有較多的了解,具備相應的硬件知識,和硬件工程師密切配合;在選用嵌入式操作系統和硬件平臺時(shí)要根據所要開(kāi)發(fā)的應用的需要以及成本等方面的考慮選擇合適的系統和平臺。
在科技快速發(fā)展的今天,嵌入式產(chǎn)品將會(huì )越來(lái)越多地被廣泛應用。我們相信,只要遵循嵌入式產(chǎn)品的開(kāi)發(fā)規律,適應市場(chǎng)的需求,就一定能開(kāi)發(fā)出越來(lái)越多的嵌入式產(chǎn)品。
評論