在軟件應用的王國里,嵌入式軟件應用就像是那些小個子的哺乳動物,在各種各樣的企業軟件們像巨型恐龍那樣在陽光下大搖大擺的游走的時候,它們在灌木叢里東竄西竄,做著自己最拿手的事情,躲避著別人的目光。
雖然這不是一個太完美的比喻,但嵌入式軟件的現狀就是如此,它們可以在任何稀奇古怪的地方出現。在最近的投票調查中它們出現在了一些更讓人意想不到的地方,包括浮標系統和藍牙電能表、CAT掃描機、內窺鏡、脈搏血氧儀、高壓焊接系統、網絡控制的洗衣控制系統以及汽車碰撞試驗的彈射器中。
嵌入式箱子里的操作系統是什么呢?當然,是Linux在這個領域當老大。或許我應該并不應該感到奇怪,因為Linux似乎在很久以前就已經取得了這種“事實上”的地位。事實上,我們的調查發現市場份額看上去較為平均,排在第二位的是像VxWorks、Microwave OS9和QNX這些商業操作系統,然后是其他開源操作系統,最后是Windows Embedded。
好了,我們不用為了微軟的又一次落后而幸災樂禍太久,值得看一下的是人們為什么喜歡選擇特定的嵌入式操作系統。從開發者的角度看來,在選擇開發工具時,對可用性的關注遠遠超過其他選項。但是,當選擇操作系統時,對穩定性的要求要遠遠領先于其他特性和功能。
在評估嵌入式操作系統時,以下哪些特點最重要?穩定性在調查中排名最高,下面依次是網絡、實時數據流、資源使用效率、能耗管理效率、數字設備集成,以及安全從Tony的評論中我們可以看到,嵌入式開發可不是件容易的事。
“真正的程序員要保證一切正常工作!嵌入式開發的最大挑戰就是讓一切工作起來,包括工具和模擬器。錯誤調試器、碰撞電路模擬器還有置入調試解決方案所有這些都是經驗豐富的嵌入式軟件工程師的戰場。”
這條評論正說到了點子上,嵌入式系統開發確實是你死我活的搏斗。如果你的高壓焊接系統、內窺鏡或者汽車彈射器突然停止工作,你可沒有打技術支持電話的機會。
這也讓我們對“微軟”的問題有了一些更深的見解。從直接的調查反饋看來,對Windows Embedded和CE的負面看法似乎并非是歷史遺留問題或者是來自道聽途說。也就是說,即使它們現在已經比以前好的多了,微軟依然需要面臨怎樣去說服別人的挑戰。
在評估嵌入式操作系統時哪些運行/管理標準最重要?許可費用排在了第一位,下面依次是可維護性、長期支出、產業支持、技術人員,以及廠商
涉及到運行和管理標準時,許可費用高居列表的第一項,當然應用的可維護性/可管理性的重要性也相當高,這再次支持了“工作就是一切”的原則。最底部的是對主要廠商支持的需要,雖然在這里看似很合理,但和我們在非嵌入式應用中期望看到的又是一個不同的景象。
最后一點,讓我們哭笑不得的是,有一部分人告訴我們應該有“根本不需要操作系統”這個選項。公平地說,這部分的人的存在讓許多調查結果打上一些折扣。當然對于那些即使是其他領域的細心的開發者和IT經理來說,從這些構建并且部署良好的隱蔽的嵌入式系統中或許可以學到很多。