不同于一般形式的軟件編程,嵌入式系統(tǒng)編程建立在特定的硬件平臺(tái)上,勢(shì)必要求其編程語(yǔ)言具備較強(qiáng)的硬件直接操作能力。無(wú)疑,匯編語(yǔ)言具備這樣的特質(zhì)。但是,歸因于匯編語(yǔ)言開發(fā)過(guò)程的復(fù)雜性,它并不是嵌入式系統(tǒng)開發(fā)的一般選擇。而與之相比,C語(yǔ)言--一種"高級(jí)的低級(jí)"語(yǔ)言,則成為嵌入式系統(tǒng)開發(fā)的最佳選擇。筆者在嵌入式系統(tǒng)項(xiàng)目的開發(fā)過(guò)程中,一次又一次感受到C語(yǔ)言的精妙,沉醉于C語(yǔ)言給嵌入 式開發(fā)帶來(lái)的便利。
C非常靈活,而且可隨心所欲。這種自由賦予C非常強(qiáng)大的功能,有經(jīng)驗(yàn)的用戶可以掌握;C是一個(gè)相對(duì)小的語(yǔ)言,但是它經(jīng)久耐用;C有時(shí)被認(rèn)為是“高級(jí)匯編語(yǔ)言”;低級(jí)(位操作)編程也容易實(shí)現(xiàn);松類型(不象其它高級(jí)語(yǔ)言);C是結(jié)構(gòu)化編程語(yǔ)言;C允許你創(chuàng)建你腦海中已有的任何任務(wù)。
通過(guò)運(yùn)用嵌入式軟件環(huán)境,《嵌入式軟件基礎(chǔ):C語(yǔ)言與匯編的融合》介紹多線程程序設(shè)計(jì)、可搶占式系統(tǒng)與非可搶占式系統(tǒng)、共享資源和調(diào)度,從而為操作系統(tǒng)、實(shí)時(shí)系統(tǒng)、計(jì)算機(jī)網(wǎng)絡(luò)及基于多處理器的設(shè)計(jì)等后續(xù)課程提供了堅(jiān)實(shí)的基礎(chǔ)。
一提到信息時(shí)代的主要特征,許多人腦中可能浮現(xiàn)出個(gè)人電腦、互聯(lián)網(wǎng)、各種各樣的軟件、游戲以及光盤等。其實(shí),這個(gè)時(shí)代更加無(wú)孔不入的是各種電子設(shè)備,幾乎所有的電子設(shè)備都包含一個(gè)或幾個(gè)嵌入式系統(tǒng)。雖然我們未必意識(shí)到隱藏在這些電子設(shè)備中的嵌入式系統(tǒng)的存在,但我們確實(shí)生活在嵌入式系統(tǒng)的包圍之中,從我們的手表、微波爐、洗衣機(jī)等一直到最近逐漸流行起來(lái)的手機(jī)、數(shù)碼相機(jī)、數(shù)碼攝像機(jī)(DV)、汽車中的GPS定位系統(tǒng)。前不久爆發(fā)的第二次海灣戰(zhàn)爭(zhēng)中,給世人留下深刻印象的美軍精確制導(dǎo)導(dǎo)彈、無(wú)人偵察飛機(jī)等,都是嵌入式系統(tǒng)的典型應(yīng)用。在航天領(lǐng)域,美國(guó)宇航局(NASA)用于外星探測(cè)的火星探測(cè)器已經(jīng)成為大型復(fù)雜且可靠的嵌入式系統(tǒng)的經(jīng)典之作。
從專業(yè)或工程師的角度看,民用市場(chǎng)嵌入式系統(tǒng)大概分為三類應(yīng)用:消費(fèi)類電子設(shè)備,電信,還有微機(jī)的外設(shè)等,可謂市場(chǎng)廣闊。嵌入式系統(tǒng)一般將軟件系統(tǒng)及硬件系統(tǒng)合而為一, 自成一套系統(tǒng),具有天然的防盜版性;且其硬件平臺(tái)和軟件平臺(tái)五花八門,遠(yuǎn)沒(méi)有像Microsoft、Intel之于個(gè)人電腦市場(chǎng)之壟斷。所以,業(yè)界不少人對(duì)于中國(guó)嵌入式軟件的發(fā)展寄予厚望。