引 言 延鋒Xim21智能座艙的大腦域控制器上使用了QNX Hypervisor方案, 極大的簡(jiǎn)化了硬件拓?fù)?,且可以讓軟件部署變得更靈活、安全和高效。那到底什么是Hypervisor,如何理解應(yīng)用QNX Hypervisor?本文就此進(jìn)行簡(jiǎn)單的介紹。 什么是Hypervisor 簡(jiǎn)單的來說, Hypervisor是運(yùn)行在物理服務(wù)器和操作系統(tǒng)之間的中間層軟件,將操作系統(tǒng)和硬件剝離的方法,使得多個(gè)操作系統(tǒng)可以共享一個(gè)硬件系統(tǒng)。Hypervisor虛擬化并提升了系統(tǒng)的穩(wěn)定性和安全性,提高了閑置資源的利用率。而類比到我們PC機(jī)上, Hypervisor可以看作類似于Vmware的虛擬機(jī)管理程序。 通常將Hypervisor分為兩種不同的類型,基于裸機(jī)的Type 1型和基于主機(jī)的Type 2型。其技術(shù)實(shí)現(xiàn)區(qū)別在于,基于裸機(jī)的Hypervisor直接運(yùn)行在硬件上,而基于主機(jī)的Hypervisor,則是運(yùn)行在主操作系統(tǒng)上。在汽車智能座艙中,Type 1型的Hypervisor得到了更加廣泛的應(yīng)用,Xim21智能座艙使用的QNX Hypervisor則屬于Type 1型。 為什么需要Hypervisor 未來汽車電子架構(gòu)勢(shì)必會(huì)從分布式模塊到集中式控制轉(zhuǎn)變,而座艙域控制器是向集中化發(fā)展前進(jìn)的關(guān)鍵武器,而Hypervisor技術(shù)則是域控制器進(jìn)行集中管理的重要基石。 在智能座艙域控制器中,由于針對(duì)不同功能有不同級(jí)別的要求,從而需要不同的操作系統(tǒng)來支持。比如QNX負(fù)責(zé)儀表,保證儀表功能;Android系統(tǒng)提供信息娛樂功能,RTOS提供實(shí)時(shí)性功能。而基于Hypervisor的系統(tǒng)架構(gòu),則能靈活的配置出多個(gè)不同的操作系統(tǒng),運(yùn)行在一個(gè)域控制器上,并能高效的協(xié)調(diào)域控制器里的不同功能,通信和協(xié)作。Hypervisor 技術(shù)的引入,使得硬件和軟件資源可以按照產(chǎn)品需求,靈活的在不同的GUEST OS中分配。 QNX Hypervisor QNX Hypervisor是一款用于實(shí)時(shí)互聯(lián)嵌入式系統(tǒng)的實(shí)時(shí) 1 類虛擬化解決方案,QNX Hypervisor充分利用了硬件虛擬化功能來執(zhí)行內(nèi)存,CPU內(nèi)核,PCI配置以及虛擬機(jī)之間的中斷隔離。將硬件設(shè)備分配給特定的虛擬機(jī),從而將這些設(shè)備從所有其他虛擬機(jī)中隱藏。還支持基于VirtIO的塊設(shè)備,控制臺(tái)和網(wǎng)絡(luò)以及其他用于設(shè)備共享的半虛擬化驅(qū)動(dòng)程序。 一個(gè)QNX Hypervisor是由Hypervisor微內(nèi)核,虛擬化外設(shè),以及多個(gè)客戶機(jī)組成的。 通過QNX Hypervisor,可以安全地整合多個(gè)操作系統(tǒng),使其在同一SoC上共存,使用獨(dú)特的QNX OS微內(nèi)核體系結(jié)構(gòu)構(gòu)建,并將安全關(guān)鍵組件與非安全關(guān)鍵組件分開。與安全相關(guān)的組件在一個(gè)操作系統(tǒng)上運(yùn)行,而非安全相關(guān)的組件則在虛擬機(jī)上的另一個(gè)操作系統(tǒng)上運(yùn)行。通過具有最高安全合規(guī)性和預(yù)認(rèn)證水平的管理程序技術(shù),可以減少安全認(rèn)證時(shí)間和成本。 安全隔離 利用POSIX和VirtIO等標(biāo)準(zhǔn),QNX Hypervisor提供了將安全關(guān)鍵組件與非安全關(guān)鍵組件分離和隔離的功能。使用QNX Hypervisor根據(jù)系統(tǒng)要求混合虛擬和主機(jī)環(huán)境。主機(jī)環(huán)境是支持虛擬機(jī)的服務(wù)域。獨(dú)立的隔離客戶操作系統(tǒng)。 設(shè)備共享 開發(fā)功能齊全的虛擬機(jī)管理程序環(huán)境,在來賓和主機(jī)之間共享圖形,音頻,觸摸屏等支持未修改的Android,Linux,QNX和其他OS的安全共存和控制,通過遵循具有自適應(yīng)分區(qū)的基于優(yōu)先級(jí)的虛擬CPU(vCPU)共享模型以最大化計(jì)算吞吐量,QNX Hypervisor提供了高性能的虛擬化環(huán)境。建立可靠的系統(tǒng)而不會(huì)浪費(fèi)資源,確保共享CPU時(shí),較高優(yōu)先級(jí)的來賓OS將搶占較低優(yōu)先級(jí)的來賓OS,滿足嵌入式零停機(jī)生產(chǎn)系統(tǒng)的精度要求。 QNX 技術(shù)支持客戶操作系統(tǒng)共享 GPU 設(shè)備,由此可以允許虛擬機(jī)(客戶操作系統(tǒng))渲染圖形輸出,輸出到遠(yuǎn)程獨(dú)立和專用外部顯示器。 虛擬機(jī)間通信 在多個(gè)虛擬機(jī)中運(yùn)行的應(yīng)用程序必須協(xié)同工作才能交付嵌入式設(shè)備的服務(wù)。QNX Hypervisor支持虛擬機(jī)之間的共享內(nèi)存訪問,共享文件訪問以及高速TCP / IP / UDP網(wǎng)絡(luò)連接,以允許在多個(gè)虛擬機(jī)中運(yùn)行的應(yīng)用程序進(jìn)行高效通信。 QNX客戶機(jī) QNX Hypervisor支持QNXNeutrino?OS,Linux和Android操作系統(tǒng),以及其他未修改的操作系統(tǒng),RTOS和實(shí)時(shí)執(zhí)行程序。 QNX Hypervisor實(shí)現(xiàn)為經(jīng)過業(yè)界驗(yàn)證的基于QNX Neutrino微內(nèi)核的RTOS的虛擬化擴(kuò)展,繼承QNX操作系統(tǒng)的所有實(shí)時(shí)性和穩(wěn)定性。通過使用QNX Hyperviosr簡(jiǎn)化系統(tǒng)配置和資源分配,提高開發(fā)效率,有效減少產(chǎn)品開發(fā)周期,并能通過硬件集成來降低成本。 |
|