上海2014年7月10日電 /美通社/ -- 物聯(lián)網(wǎng)(IoT)是一個跨越很多行業(yè)的技術(shù)發(fā)展趨勢,包括可穿戴設(shè)備、智能電表、智能家電及汽車等設(shè)備。隨著大家對聯(lián)網(wǎng)設(shè)備及其提供信息的依賴不斷增加, 服務(wù)時(shí)間、可靠性等因素對其成功和整個物聯(lián)網(wǎng)生態(tài)系統(tǒng)起著關(guān)鍵作用。智能家電及車載信息娛樂音響主機(jī)代表了一大類同時(shí)需要互聯(lián)性和高度可靠執(zhí)行性的物聯(lián)網(wǎng)系統(tǒng)。
智能家電如洗衣機(jī)有一個豐富的用戶界面(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ú)立于更高級別的功能運(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ǒng)工業(yè)環(huán)境還可能包括一個實(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ú)立
一個實(shí)時(shí)操作系統(tǒng)與一個獨(dú)立的模式,如 Mentor Graphics 的 Nucleus 實(shí)時(shí)操作系統(tǒng),能夠利用可在諸多系統(tǒng)芯片設(shè)備上應(yīng)用的內(nèi)存管理單元(MMU)來獨(dú)立和保護(hù)代碼模塊。圖1說明了實(shí)時(shí)控制任務(wù)如何可以共享內(nèi)核的受保護(hù)存儲區(qū),而其他軟件任務(wù)分為各自的受保護(hù)存儲區(qū)?;ヂ?lián)功能和遠(yuǎn)程更新共享相同的區(qū)域,而用戶界面和其他應(yīng)用程序任務(wù)被分配到另一個獨(dú)立區(qū)域。獨(dú)立應(yīng)用子系統(tǒng)的方法可防止互聯(lián)功能或用戶界面應(yīng)用子系統(tǒng)破壞內(nèi)核或者實(shí)時(shí)控制操作。
使用實(shí)時(shí)操作系統(tǒng)優(yōu)于通用操作系統(tǒng)的一個好處就是其內(nèi)核的實(shí)時(shí)特性。實(shí)時(shí)操作系統(tǒng)提供嚴(yán)格的實(shí)時(shí)調(diào)度,保證優(yōu)先級任務(wù)的運(yùn)行。進(jìn)程模式實(shí)時(shí)操作系統(tǒng)能保證確定的實(shí)時(shí)調(diào)度,并增加了存儲保護(hù)。存儲保護(hù)并不改變?nèi)蝿?wù)的優(yōu)先級和系統(tǒng)反應(yīng)。圖2顯示了應(yīng)用程序(任務(wù)7)和遠(yuǎn)程更新任務(wù)在分開的獨(dú)立存儲區(qū)域能夠在同一優(yōu)先級執(zhí)行而控制和連接任務(wù)可在更高的優(yōu)先級執(zhí)行。這在很大程度上有別于通用操作系統(tǒng)中程序的執(zhí)行方式。在受保護(hù)的實(shí)時(shí)操作系統(tǒng)環(huán)境下, 開發(fā)人員可以自由地調(diào)整任務(wù)的優(yōu)先級,而無需將其合并到一個共同的存儲區(qū)域。
基于實(shí)時(shí)操作系統(tǒng)的進(jìn)程模式還允許進(jìn)程模塊(一個共同的獨(dú)立存儲區(qū)域內(nèi)任務(wù)和庫功能的集合)在系統(tǒng)運(yùn)行時(shí)不斷加載和卸載。這除了能明顯更新系統(tǒng)外,還可以允許開發(fā)人員不斷地重新配置設(shè)備,使其具備不同的操作模式,切換不同的任務(wù)分離和優(yōu)先級配置。
通過類型1的虛擬機(jī) Hypervisor 實(shí)現(xiàn)多 OS 系統(tǒng)的應(yīng)用
在今天嵌入式設(shè)備中具備的多核處理器可提供更強(qiáng)大的處理能力和連接選項(xiàng)。這些設(shè)備使多個操作系統(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ú)立的面板上多個單獨(dú)的處理器以確保設(shè)計(jì)的穩(wěn)健性。有了現(xiàn)在的整合的嵌入式系統(tǒng),引入連接性的一個推薦的方法是使用多個操作系統(tǒng),由類型1 Hypervisor 實(shí)行分離,實(shí)際上分離和虛擬化設(shè)備資源,確保必要的汽車功能優(yōu)先于連接應(yīng)用程序的功能。
圖3說明了一個 Hypervisor,如 Mentor Graphics 的 Hypervisor,如何被用于汽車信息娛樂系統(tǒng),該系統(tǒng)的連接應(yīng)用程序功能是 Android 的而其他車載信息娛樂系統(tǒng)則是基于 Linux 的。
一個 Hypervisor 不僅僅是如圖3所示的簡單分離,它還提供了一種機(jī)制限制周邊設(shè)備進(jìn)入特定的應(yīng)用程序域。就車載信息娛樂系統(tǒng)而言,我們可能想要限制對車載 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說明了一個 Hypervisor 如何允許我們直接映射及準(zhǔn)虛擬化外圍設(shè)備。這使得開發(fā)者能夠限制訪問CAN總線及實(shí)現(xiàn)如記憶卡等其它資源的共享。
在真實(shí)場景中測試可靠性
到現(xiàn)在為止我們已經(jīng)說明了設(shè)計(jì)物聯(lián)網(wǎng)系統(tǒng)的兩種可能的方法,實(shí)時(shí)操作系統(tǒng)的使用和類型1 Hypervisor。當(dāng)然多種不同的變更和理想的方法還要取決于具體的設(shè)備。然而所有連接系統(tǒng)都會受益于某種程度的測試以確保其實(shí)地操作的正確性。對連接設(shè)備的自動化安全峰值測試和壓力測試就是一個例子,說明協(xié)議?;蜻^程控制功能的失敗是可以檢測的。此外,設(shè)備的功能性健康是可以在模擬攻擊中確定的。應(yīng)該執(zhí)行的其他測試包括發(fā)送無效或分散的數(shù)據(jù)包,執(zhí)行測試框架,探測已知的軟件棧的漏洞。執(zhí)行這些測試可以增加連接設(shè)備在實(shí)際應(yīng)用中的魯棒性。
可更新性設(shè)計(jì)
移動設(shè)備的用戶熟知需經(jīng)常性升級設(shè)備,修補(bǔ)漏洞,添加安全更新或增加設(shè)備性能 -- 所有這些都毫不費(fèi)力地通過“空中下載技術(shù)”來完成?;趯?shí)時(shí)操作系統(tǒng)的進(jìn)程模式和使用類型1 Hypervisor 都能促進(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è)的和開源的。所有這些都會增加對物聯(lián)網(wǎng)(IoT)聯(lián)網(wǎng)設(shè)備的靈敏度和可靠性的負(fù)面沖擊。使用包含進(jìn)程模式的實(shí)時(shí)操作系統(tǒng)來分離應(yīng)用子系統(tǒng)和使用類型1 Hypervisor 來整合多個操作系統(tǒng)對于在應(yīng)用程序和系統(tǒng)中引進(jìn)互聯(lián)性是有效途徑, 因后者在執(zhí)行過程中需要較高水平或可靠性。
除了選擇合適的系統(tǒng)架構(gòu)和技術(shù)方法,設(shè)計(jì)師還必須及時(shí)添加額外的測試來確保正確的操作,考慮設(shè)備的整個操作生命周期,具備快速,無縫,盡可能輕松地更新設(shè)備軟件的能力。
###
作者簡介
Kamran Shah 是 Mentor Graphics 嵌入式軟件部市場總監(jiān)。他充當(dāng)多個技術(shù)角色,包括產(chǎn)品營銷,產(chǎn)品管理和研發(fā)。在他的整個職業(yè)生涯中,Kamran 引領(lǐng)了嵌入式系統(tǒng)開發(fā)領(lǐng)域的創(chuàng)新,包括異構(gòu)目標(biāo)、軟件定義無線電系統(tǒng)和基于云的開發(fā)工具和服務(wù)。Kamran 獲得了15項(xiàng)專利,于1999年畢業(yè)于德克薩斯 A&M 大學(xué),取得計(jì)算機(jī)工程學(xué)士學(xué)位。
關(guān)于 Mentor Graphics
Mentor Graphics 公司是電子硬件和軟件設(shè)計(jì)解決方案(EDA)的全球領(lǐng)導(dǎo)者,為世界上較成功的通信、半導(dǎo)體,計(jì)算機(jī),消費(fèi)電子,汽車電子和國防軍工公司提供優(yōu)質(zhì)產(chǎn)品、咨詢服務(wù)和支持, 可加快客戶電子及機(jī)械產(chǎn)品的研發(fā)速度,提高產(chǎn)品質(zhì)量,增加成本效益。工程師可借助公司不斷推出的新產(chǎn)品及解決方案,應(yīng)對日趨復(fù)雜的電路板及芯片設(shè)計(jì)領(lǐng)域面臨的挑戰(zhàn)。Mentor Graphics 公司擁有業(yè)內(nèi)最為豐富的頂級產(chǎn)品線,提供完整的 SOC/IC/FPGA/PCB/SI 設(shè)計(jì)工具和服務(wù),并且是唯一一家擁有嵌入式軟件解決方案的 EDA 公司。公司成立于1981年,目前有超過70家分公司分布世界各地。
公司總部地址:8005 S.W. Boeckman Road, Wilsonville, Oregon 97070-7777。
欲了解有關(guān) Mentor Graphics 汽車解決方案的更多信息,請?jiān)L問 http://automotive.cn.mentor.com 或發(fā)送電郵至 auto_china@mentor.com。
Photo - http://photos.prnasia.com/prnh/20140709/0861404824-a
Photo - http://photos.prnasia.com/prnh/20140709/0861404824-b
Photo - http://photos.prnasia.com/prnh/20140709/0861404824-c
Photo - http://photos.prnasia.com/prnh/20140709/0861404824-d