<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 采用微內核架構的嵌入式系統虛擬化技術(shù)

采用微內核架構的嵌入式系統虛擬化技術(shù)

作者: 時(shí)間:2018-09-12 來(lái)源:網(wǎng)絡(luò ) 收藏

虛擬機環(huán)境的架構分析

本文引用地址:http://dyxdggzs.com/article/201809/388935.htm

  在計算領(lǐng)域,虛擬化是一個(gè)廣義的術(shù)語(yǔ),通常是指對于計算資源的一種抽象。通過(guò)虛擬化,可使計算資源復雜的實(shí)際物理特性對于應用程序或終端用戶(hù)加以隱藏[1]。這種過(guò)程既可以讓單一的物理資源(如一臺服務(wù)器,一個(gè)存儲設備或一個(gè)操作系統)表現為多個(gè)可用的虛擬資源,也可以讓多個(gè)物理資源(如多臺服務(wù)器或多個(gè)存儲設備)表現為單一的可用虛擬資源[2],甚至可以將多個(gè)物理資源加以整合并分化出多個(gè)可用的虛擬資源。

  圖1 虛擬機架構: 管理層架構與主機操作系統架構之間的比較

  VMware Workstation[3]是一款傳統的基于主機操作系統架構的虛擬機,并將虛擬機管理器運行于高特權級以使用特權級指令。這類(lèi)虛擬機一般是針對特定的平臺架構設計的,可以使同一平臺架構下的各種操作系統如同應用程序那樣高效地運行在同一主機操作系統之上。但是,這種應用模型也有一個(gè)非常嚴重的缺陷――主機操作系統,作為一切的基礎,會(huì )占用一定的系統資源并大大增加系統達到可信計算所需要驗證的代碼量。

  由于像英特爾這樣的硬件制造商開(kāi)發(fā)出了新一代的硬件,如今像Xen[4]這樣的虛擬機管理層已經(jīng)可以以極小的虛擬化開(kāi)銷(xiāo)支持未經(jīng)修改的操作系統的高效運行?;诠芾韺蛹軜嫷奶摂M機所面臨的問(wèn)題是管理層所提供的抽象往往過(guò)于粗粒度以至于很難對細小的軟件組件進(jìn)行有效地描述。而對于運行在特權級的虛擬機管理邏輯部分――超級虛擬機(Super VM)也是這樣。它往往運行在一個(gè)商業(yè)操作系統軟件之上以提供對各虛擬機的管理服務(wù)。而一旦發(fā)生錯誤,則將很有可能因此波及到別的虛擬機[5]。

  擁有的操作系統被設計用以構成一個(gè)可自由裁減的系統并且易于保證其可信計算基礎,系統所定義的操作系統和用戶(hù)態(tài)應用程序之間的接口與硬件平臺的接口很相近,這樣既保證了操作系統的功能性,又避免了操作系統的代碼過(guò)于冗長(cháng),十分適合用以構建一個(gè)良好的虛擬機環(huán)境。有些人使用像L4Linux[6]這樣經(jīng)過(guò)修改的客戶(hù)操作系統使其運行在高效的微內核之上。但是此類(lèi)修改很難被應用到所有的商業(yè)操作系統上致使其應用范圍受到嚴格的限制。

 據此,一種頗為可行的方法是有效地利用微內核操作系統的特點(diǎn),將基于主機操作系統架構的虛擬化和基于管理層的虛擬化融合到一起,結合特權指令部分和一個(gè)用戶(hù)態(tài)虛擬機管理器來(lái)克服彼此的缺陷。如此,加之利用像L4這樣高性能的微內核操作系統,我們可以最終獲得在效率,功能性和安全性三方面取得均衡的虛擬機環(huán)境。

  基于

  圖2 基于的虛擬機的系統結構

  本架構(圖2)設計中,我們將主要針對特定的平臺架構(即英特爾x86架構),以L(fǎng)4微內核系統作為基礎,利用硬件的支持以構建高效、安全的虛擬機。

  不同于一般的虛擬機,我們將系統劃分為兩個(gè)部分:一個(gè)必要的擁有特權指令權限的內核態(tài)虛擬機描述部分以運行指令和請求資源,和一個(gè)用戶(hù)態(tài)的虛擬機資源控制單元以處理各類(lèi)事件并實(shí)現管理。

  內核態(tài)虛擬機的抽象將主要要通過(guò)兩方面完成:一,以L(fǎng)4任務(wù)機制為基礎,利用其地址空間的控制功能以提供必要的隔離性。二,對線(xiàn)程機制進(jìn)行增強,形成特殊的虛擬CPU線(xiàn)程,用以模擬每個(gè)處理器。

 除此之外,構建虛擬機還需要完善內存頁(yè)表的訪(fǎng)問(wèn),中斷的處理以及文件系統。這些則需要通過(guò)內核態(tài)的虛擬機描述部分與用戶(hù)態(tài)的虛擬機管理器協(xié)同完成。同時(shí)還需要利用用戶(hù)態(tài)虛擬機管理器建立一系列的管理和調試接口。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>