智能連接的電子設(shè)備(二):硬/軟件發(fā)展趨勢帶來的挑戰(zhàn)
Mike Hall 2011/03/21
本文是Mike Hall署名文章系列的第二篇,探討硬件、軟件與新興科技發(fā)展趨勢等是如何影響嵌入式設(shè)備開發(fā)者的。
在上一篇文章里,我們探討了如何實(shí)現(xiàn)嵌入式設(shè)備的互聯(lián)性,以及有線、無線與手持設(shè)備網(wǎng)絡(luò)的利弊。但是我們并未探討什么是基礎(chǔ)設(shè)備,以及軟、硬件的發(fā)展趨勢會如何影響設(shè)備開發(fā)者。本文在此將重點(diǎn)討論軟、硬件以及新興科技的發(fā)展趨勢,還有這些對于嵌入式設(shè)備的開發(fā)者又意味著什么。
圖:微軟Windows Embedded事業(yè)部首席軟件架構(gòu)師 Mike Hall
在過去的50年間,我們見證了計(jì)算技術(shù)的發(fā)展:從大型主機(jī)到互聯(lián)的臺式電腦再到智能連接設(shè)備。嵌入式硬件也經(jīng)歷了類似的發(fā)展過程:從簡單的4比特、8比特、16比特的計(jì)算設(shè)備,到32比特的單核與多核芯片,再到為某些類別嵌入式設(shè)備而設(shè)計(jì)的64比特多核芯片。作為單核的延伸,多核這種發(fā)展趨勢加入了互聯(lián)性,因此一臺設(shè)備可以成為分布式嵌入式系統(tǒng)的一部分,而不是像過去那樣僅僅是一臺獨(dú)立的設(shè)備。編寫一個(gè)運(yùn)行在單核CPU上的單線程進(jìn)程相當(dāng)簡單。然而,開發(fā)多線程的代碼就要復(fù)雜得多。如果我們再進(jìn)一步,想要開發(fā)多線程的代碼,并在多核的機(jī)器上運(yùn)行,而且每個(gè)內(nèi)核的負(fù)載能保持平衡,那么開發(fā)者的工作就會更復(fù)雜。如果你覺得這樣還不夠,那就把你的設(shè)備變成分布式嵌入式系統(tǒng)的一部分吧,這樣嵌入式開發(fā)者就會被忙得焦頭爛額。
新興技術(shù)的發(fā)展趨勢
軟件領(lǐng)域的發(fā)展趨勢與此類似。幾年前,大部分軟件是用匯編語言編寫的。這么做非常耗時(shí),如果打印在折疊紙上的話,大約是每行6個(gè)字符,每頁共132列。這樣其他人就很難看懂代碼,也不容易調(diào)試或解碼。從匯編語言到更高級的語言,比如C/C++,極大地提高了開發(fā)者的效率,而且源代碼也因此更容易看懂了!編程效率的提高,不但是因?yàn)楦呒壍木幊陶Z言,也因?yàn)橛辛岁P(guān)聯(lián)的執(zhí)行時(shí)間函數(shù)庫。例子之一就是,在開發(fā)一款Windows應(yīng)用程序時(shí),使用Windows基礎(chǔ)庫(Windows Foundations Classes)要比使用原始的Win32編程語言簡單得多。今天,編程語言并不局限于C#,框架也不局限于Microsoft .NET Framework,而是在繼續(xù)發(fā)展。這些框架促進(jìn)了應(yīng)用程序的迅猛發(fā)展,并且通過提供一系列的輔助庫,大大減輕了開發(fā)者的負(fù)擔(dān)。這樣,開發(fā)者們就可以關(guān)注于如何寫代碼才能使自己的應(yīng)用程序獨(dú)一無二,而不是大量原始的、基礎(chǔ)要素幫助運(yùn)行應(yīng)用程序。
還有一個(gè)發(fā)展趨勢是注重用戶體驗(yàn)(請注意,我說的并不是用戶界面)。這個(gè)領(lǐng)域已經(jīng)有了許多佼佼者,尤其是Windows Embedded Compact 7 CTP與Silverlight的加入,增強(qiáng)與提高了用戶的交互和體驗(yàn)。用戶體驗(yàn)包含了大量用戶輸入與輸出的方式。如果我們讓時(shí)光倒流30年,主要的用戶體驗(yàn)就是命令提示符與鍵盤。時(shí)光倒流20年的話,那時(shí)的圖形用戶界面就是鍵盤與鼠標(biāo)。而今天,用戶們可以根據(jù)設(shè)備的類型與使用場景,體驗(yàn)到更加身臨其境的用戶體驗(yàn)與輸入-輸出方式。盡管某些設(shè)備使用的是2D圖像、鍵盤與鼠標(biāo),另外一些設(shè)備可能使用語音來輸入輸出;還有些設(shè)備也許會使用3D硬件加速圖像與觸控、手勢和多點(diǎn)觸控。
本文的重點(diǎn)就是,開發(fā)者們需要選用合適的編程語言與框架來建立他們的設(shè)備體驗(yàn)。這一過程包括許多事情,有處理多核或分布式系統(tǒng)編程,與基于云的服務(wù)的交互,以及建立身臨其境的用戶體驗(yàn)。
電子工程專輯
相關(guān)閱讀: