物聯(lián)網(wǎng)(IoT)是一個(gè)跨越很多行業(yè)的技術(shù)發(fā)展趨勢(shì),包括可穿戴設(shè)備、智能電表、智能家電及汽車等設(shè)備。隨著大家對(duì)聯(lián)網(wǎng)設(shè)備及其提供信息的依賴不斷增加,服務(wù)時(shí)間、可靠性等因素對(duì)其成功和整個(gè)物聯(lián)網(wǎng)生態(tài)系統(tǒng)起著關(guān)鍵作用。智能家電及車載信息娛樂音響主機(jī)代表了一大類同時(shí)需要互聯(lián)性和高度可靠執(zhí)行性的物聯(lián)網(wǎng)系統(tǒng)。
智能家電如洗衣機(jī)有一個(gè)豐富的用戶界面(UI),能夠處理任何數(shù)量的指令。該設(shè)備可以通過智能手機(jī)進(jìn)行遙控,連接輸電網(wǎng)絡(luò),定點(diǎn)在電費(fèi)比較便宜的非高峰時(shí)段洗滌。當(dāng)然洗衣機(jī)必須能夠很好、很可靠地執(zhí)行一項(xiàng)功能--洗衣功能。工業(yè)系統(tǒng)有更加嚴(yán)格的實(shí)時(shí)控制要求,保證實(shí)時(shí)控制和其他重要操作能夠獨(dú)立于更高級(jí)別的功能運(yùn)行,這點(diǎn)很重要。
汽車行業(yè)也在投資聯(lián)網(wǎng)汽車,如收集遠(yuǎn)程信息處理數(shù)據(jù)以及通過可更新和可下載的應(yīng)用程序(Apps)提供車載信息娛樂系統(tǒng)(IVI)來滿足消費(fèi)者的期望。汽車制造商面臨大量的審查以確保車載信息娛樂系統(tǒng)是安全的。應(yīng)用程序下載不能干擾車載信息娛樂系統(tǒng)更關(guān)鍵的功能,如后置攝像頭的視頻。在這種情況下,像Android操作系統(tǒng)可能是提供應(yīng)用程序的可行性選擇,而車載信息娛樂系統(tǒng)的核心系統(tǒng)可基于Linux平臺(tái)。類似的通用操作系統(tǒng)工業(yè)環(huán)境還可能包括一個(gè)實(shí)時(shí)操作系統(tǒng)(RTOS)實(shí)行關(guān)鍵的實(shí)時(shí)控制功能,而Linux,即通用操作系統(tǒng)(OS),可提供用戶界面和監(jiān)督數(shù)據(jù)通信。
在實(shí)時(shí)操作系統(tǒng)下通過使用MMU/MPU實(shí)現(xiàn)代碼模塊獨(dú)立
一個(gè)實(shí)時(shí)操作系統(tǒng)與一個(gè)獨(dú)立的模式,如MentorGraphics的Nucleus實(shí)時(shí)操作系統(tǒng),能夠利用可在諸多系統(tǒng)芯片設(shè)備上應(yīng)用的內(nèi)存管理單元(MMU)來獨(dú)立和保護(hù)代碼模塊。圖1說明了實(shí)時(shí)控制任務(wù)如何可以共享內(nèi)核的受保護(hù)存儲(chǔ)區(qū),而其他軟件任務(wù)分為各自的受保護(hù)存儲(chǔ)區(qū)。互聯(lián)功能和遠(yuǎn)程更新共享相同的區(qū)域,而用戶界面和其他應(yīng)用程序任務(wù)被分配到另一個(gè)獨(dú)立區(qū)域。獨(dú)立應(yīng)用子系統(tǒng)的方法可防止互聯(lián)功能或用戶界面應(yīng)用子系統(tǒng)破壞內(nèi)核或者實(shí)時(shí)控制操作。
用一個(gè)進(jìn)程模式分離連接性和遠(yuǎn)程更新的控制
使用實(shí)時(shí)操作系統(tǒng)優(yōu)于通用操作系統(tǒng)的一個(gè)好處就是其內(nèi)核的實(shí)時(shí)特性。實(shí)時(shí)操作系統(tǒng)提供嚴(yán)格的實(shí)時(shí)調(diào)度,保證優(yōu)先級(jí)任務(wù)的運(yùn)行。進(jìn)程模式實(shí)時(shí)操作系統(tǒng)能保證確定的實(shí)時(shí)調(diào)度,并增加了存儲(chǔ)保護(hù)。存儲(chǔ)保護(hù)并不改變?nèi)蝿?wù)的優(yōu)先級(jí)和系統(tǒng)反應(yīng)。圖2顯示了應(yīng)用程序(任務(wù)7)和遠(yuǎn)程更新任務(wù)在分開的獨(dú)立存儲(chǔ)區(qū)域能夠在同一優(yōu)先級(jí)執(zhí)行而控制和連接任務(wù)可在更高的優(yōu)先級(jí)執(zhí)行。這在很大程度上有別于通用操作系統(tǒng)中程序的執(zhí)行方式。在受保護(hù)的實(shí)時(shí)操作系統(tǒng)環(huán)境下,開發(fā)人員可以自由地調(diào)整任務(wù)的優(yōu)先級(jí),而無需將其合并到一個(gè)共同的存儲(chǔ)區(qū)域。
基于實(shí)時(shí)操作系統(tǒng)的進(jìn)程模式還允許進(jìn)程模塊(一個(gè)共同的獨(dú)立存儲(chǔ)區(qū)域內(nèi)任務(wù)和庫功能的集合)在系統(tǒng)運(yùn)行時(shí)不斷加載和卸載。這除了能明顯更新系統(tǒng)外,還可以允許開發(fā)人員不斷地重新配置設(shè)備,使其具備不同的操作模式,切換不同的任務(wù)分離和優(yōu)先級(jí)配置。
通過類型1的虛擬機(jī)Hypervisor實(shí)現(xiàn)多OS系統(tǒng)的應(yīng)用
在今天嵌入式設(shè)備中具備的多核處理器可提供更強(qiáng)大的處理能力和連接選項(xiàng)。這些設(shè)備使多個(gè)操作系統(tǒng)的整合成為引進(jìn)互聯(lián)性的可行安全方法,同時(shí)確保更重要的功能的執(zhí)行。即使是在非常注重安全的行業(yè),如汽車業(yè),消費(fèi)者現(xiàn)在也期待車載信息娛樂系統(tǒng)可提供智能手機(jī)和平板電腦所具備的應(yīng)用程序。
在物聯(lián)網(wǎng)和車聯(lián)網(wǎng)出現(xiàn)以前,安全性和可靠性是通過物理分離實(shí)現(xiàn)的,通過同一或獨(dú)立的面板上多個(gè)單獨(dú)的處理器以確保設(shè)計(jì)的穩(wěn)健性。有了現(xiàn)在的整合的嵌入式系統(tǒng),引入連接性的一個(gè)推薦的方法是使用多個(gè)操作系統(tǒng),由類型1Hypervisor實(shí)行分離,實(shí)際上分離和虛擬化設(shè)備資源,確保必要的汽車功能優(yōu)先于連接應(yīng)用程序的功能。
圖3說明了一個(gè)Hypervisor,如MentorGraphics的Hypervisor,如何被用于汽車信息娛樂系統(tǒng),該系統(tǒng)的連接應(yīng)用程序功能是Android的而其他車載信息娛樂系統(tǒng)則是基于Linux的。
一個(gè)Hypervisor不僅僅是如圖3所示的簡單分離,它還提供了一種機(jī)制限制周邊設(shè)備進(jìn)入特定的應(yīng)用程序域。就車載信息娛樂系統(tǒng)而言,我們可能想要限制對(duì)車載CAN總線的使用,只允許車載信息娛樂系統(tǒng)接入CAN數(shù)據(jù),而聯(lián)網(wǎng)的Android應(yīng)用程序接入數(shù)據(jù)只能通過進(jìn)程間通信(IPC)和基于Linux車載信息娛樂系統(tǒng)應(yīng)用程序。同時(shí),我們想要Linux和Android都可以使用本地的記憶卡查看媒體文件。圖4說明了一個(gè)Hypervisor如何允許我們直接映射及準(zhǔn)虛擬化外圍設(shè)備。這使得開發(fā)者能夠限制訪問CAN總線及實(shí)現(xiàn)如記憶卡等其它資源的共享。
用一個(gè)Hypervisor來分離和共享外圍設(shè)備
在真實(shí)場(chǎng)景中測(cè)試可靠性
到現(xiàn)在為止我們已經(jīng)說明了設(shè)計(jì)物聯(lián)網(wǎng)系統(tǒng)的兩種可能的方法,實(shí)時(shí)操作系統(tǒng)的使用和類型1Hypervisor。當(dāng)然多種不同的變更和理想的方法還要取決于具體的設(shè)備。然而所有連接系統(tǒng)都會(huì)受益于某種程度的測(cè)試以確保其實(shí)地操作的正確性。對(duì)連接設(shè)備的自動(dòng)化安全峰值測(cè)試和壓力測(cè)試就是一個(gè)例子,說明協(xié)議?;蜻^程控制功能的失敗是可以檢測(cè)的。此外,設(shè)備的功能性健康是可以在模擬攻擊中確定的。應(yīng)該執(zhí)行的其他測(cè)試包括發(fā)送無效或分散的數(shù)據(jù)包,執(zhí)行測(cè)試框架,探測(cè)已知的軟件棧的漏洞。執(zhí)行這些測(cè)試可以增加連接設(shè)備在實(shí)際應(yīng)用中的魯棒性。
可更新性設(shè)計(jì)
移動(dòng)設(shè)備的用戶熟知需經(jīng)常性升級(jí)設(shè)備,修補(bǔ)漏洞,添加安全更新或增加設(shè)備性能--所有這些都毫不費(fèi)力地通過“空中下載技術(shù)”來完成?;趯?shí)時(shí)操作系統(tǒng)的進(jìn)程模式和使用類型1Hypervisor都能促進(jìn)嵌入式系統(tǒng)的設(shè)計(jì),該系統(tǒng)可以一種安全的方式通過空中下載技術(shù)實(shí)現(xiàn)更新。通過分離可不斷加載和卸載的應(yīng)用子系統(tǒng),這兩種方法可隨著時(shí)間的推移更新特定子系統(tǒng),修復(fù)漏洞或在開發(fā)和實(shí)際應(yīng)用時(shí)解決可靠性問題。
結(jié)論
物聯(lián)網(wǎng)設(shè)備的廣度和相關(guān)功能經(jīng)常需要開發(fā)人員集成來自多種途徑的代碼,包括國內(nèi)的,商業(yè)的和開源的。所有這些都會(huì)增加對(duì)物聯(lián)網(wǎng)(IoT)聯(lián)網(wǎng)設(shè)備的靈敏度和可靠性的負(fù)面沖擊。使用包含進(jìn)程模式的實(shí)時(shí)操作系統(tǒng)來分離應(yīng)用子系統(tǒng)和使用類型1Hypervisor來整合多個(gè)操作系統(tǒng)對(duì)于在應(yīng)用程序和系統(tǒng)中引進(jìn)互聯(lián)性是有效途徑,因后者在執(zhí)行過程中需要較高水平或可靠性。
除了選擇合適的系統(tǒng)架構(gòu)和技術(shù)方法,設(shè)計(jì)師還必須及時(shí)添加額外的測(cè)試來確保正確的操作,考慮設(shè)備的整個(gè)操作生命周期,具備快速,無縫,盡可能輕松地更新設(shè)備軟件的能力。
公司總部地址:8005S.W.BoeckmanRoad,Wilsonville,Oregon97070-7777。
上市公司(納斯達(dá)克代碼:MENT)
成立于1981年,總部位于俄勒岡州威爾遜維爾市
全球設(shè)有70多個(gè)分公司或辦事處
已在中國上海、北京、深圳設(shè)立分支機(jī)構(gòu)
公司網(wǎng)址-www.mentor.comwww.mentorg.com.cn
欲了解有關(guān)MentorGraphics汽車解決方案的更多信息,請(qǐng)?jiān)L問http://automotive.cn.mentor.com或發(fā)送電郵至auto_china@mentor.com。
消息來源MentorGraphics
掃描二維碼到微信
企業(yè)聯(lián)系信息
SunnyGong,+86-6101-7226,sunny_gong@mentor.com