新四季網

分布式i/o資源虛擬化技術的實現方法

2023-06-12 20:07:31

專利名稱:分布式i/o資源虛擬化技術的實現方法
技術領域:
本發明主要涉及計算機虛擬化技術中的i/o虛擬化領域。主要採用最新的硬 件和軟體相結合的虛擬化技術,將分布於多主機的i/o資源進行虛擬化和整合,
為上層客戶作業系統構建一個全局虛擬I/0空間,實現客戶作業系統對分布式1/0
資源的全局管理和使用。屬於計算機技術領域。
背景技術:
虛擬化的關鍵問題是如何處理客戶(Guest)作業系統中的敏感指令。不同的虛 擬化方法採取不同的處理方式,目前廣泛研究和使用的有三種方法-
全虛擬化(Full-Virtualization)方法該方法提供了物理硬體的完整模擬, 採用軟體模擬技術處理敏感指令,在虛擬層中完整地構造一個和物理硬體相當的 環境,Guest作業系統可以不加任何修改地運行於虛擬環境中。該方法的優點是 很明顯的,即Guest作業系統可以不加任何修改地在虛擬機上直接運行,同時也 具有很好的靈活性和擴展性。然而這種技術的缺陷也很明顯,最大的問題就是每 條特權指令的執行都要引起用戶模式與特權模式的切換,導致虛擬機的運行效率 很低。典型的伺服器虛擬化系統VMwareESXServer和IBM system/370都採用了 全虛擬化方法。
半虛擬化(Para-Vi加alization)方法該方法通過修改Guest原始碼中涉及 到的敏感指令,用超級調用(hypercall)來代替特權指令,讓儘可能多的指令直 接運行在物理處理器上。典型的伺服器虛擬化系統XEN成功地使用了部分虛擬化 方法。Xen通過用超級調用來"包裝"多條特權指令的執行,Guest作業系統通 過超級調用讓VMM執行特權指令,這樣就可以減少模式切換,提高執行效率。 這個方法的效率可達到非虛擬化的常規執行效率的90%以上,但是,為之付出的 代價也很大,需對Guest作業系統代碼進行相當大範圍的修改,移植成本較高, 而且隨著Guest作業系統的升級,其維護成本也很高。此外,將新處理器特性集 成到hypervisor API的代價也比完全虛擬化方法要大得多。
預虛擬化(Pre-Virtualization)方法德國Karlsruhe大學、澳大利亞新南威
3爾士大學和IBM共同提出了預虛擬化方法。這是一種提供工具支持的半自動 Guest系統構造方法,利用彙編器的支持,對Guest系統的代碼進行掃描,將其 中的部分特權指令進行靜態替換,對無法靜態處理的指令採用profile方法動態 地尋找並手工替換。這個方法的指導思想是採用編譯工具支持,儘可能地增加可 以直接執行的指令,減少需要模擬的指令。採用這個方法基於微內核作業系統 L4或者開源Linux構造虛擬機,可以運行經過靜態翻譯和人工修改的Linux Guest OS,其運行效率也可達到非虛擬化的常規執行效率的90%以上。該方法中 Guest代碼需要人工幹預的彙編級半自動掃描和替換修改,也就是說依然需要獲 得原始碼,至少是彙編代碼。
近年來伺服器取得了巨大的發展,從伺服器體系結構的角度來看,商用服務 器呈現出兩個主流的發展方向,艮Pscale-up (向上擴展)和scale-out (向外擴展)。 所謂scale-up,通常是指將多個處理器和存儲器等系統資源緊密耦合在單個服務 器中,對其整體系統能力的擴展是通過在單個伺服器中增加處理器和內存等資源 來實現。scale-up系統一般具有較大的共享內存空間、緊密耦合的內部連接等基 本特徵,適於支持具有多個依賴性線程或進程的應用,如資料庫應用等。代表性 的體系結構包括SMP (Symmetric Multiprocessor) 、 NUMA(Non UniformMemory Access Architecture)及CC-NUMA(Coherent-CacheNUMA)等,典型的產品包括 IBM的p系列伺服器、HP的Superdome系列伺服器以及SUN的Fire E20K/E25K系列伺服器等。 一般來說,scale-up系統可提供較高的性能和整機 效率、簡單易用的編程模型以及單一系統映像,具有較高的可編程性,易於管理 和維護,但存在成本偏高、可擴展性有限等缺點。
所謂scale-out,通常是指將多臺小規模的中低端伺服器鬆散連接成一個服務 器系統,對其整體系統能力的擴展是通過在系統中增加相同或類似配置的中低端 伺服器結點來實現。Scale-out系統一般具有分布的非共享內存空間、鬆散耦合 的外部連接等基本特徵,適於支持具有多個非依賴性線程或進程的應用,如Web 應用等。代表性的體系結構包括Cluster (機群)、MPP (Massively ParallelProcessing)等,典型的產品主要是以低端X86伺服器為結點,通過以太 網或Infiniband等商用網絡互連而成的機群伺服器,如IBM的Cluster1350、深騰 6800及天梭10K/20K等。 一般來說,scale-out系統具有實現成本低、可擴展性 好等優勢,但不支持單一系統映像,存在整機應用效率偏低、編程相對複雜、管 理和維護成本較高等問題。
目前,從伺服器體系結構的角度來看,伺服器I/0虛擬化技術的發展也是基 於scale-up和scale-out這兩種趨勢,同時虛擬化技術目前是通過兩個方向來幫助服 務器更加合理地分配資源 一個方向是"分",即把一個物理的伺服器虛擬成若干個獨立的邏輯伺服器;另一個方向是"合",就是把若干個分散的物理伺服器虛擬 為一個大的邏輯伺服器。
VMware和Xen分別採用全虛擬化(Full-Virtualization)和半虛擬化 (Para-Virtualization)技術。全虛擬化是在虛擬層中採用軟體完全模擬物理1/0 設備,但對每條特權指令的執行都會引起用戶模式和特權模式的切換,導致1/0 訪問效率低下。半虛擬化通過修改Guest原始碼,用超級調用(hypercall)來代 替特權指令,讓儘可能多的指令直接運行在處理器上。這種方式雖然提高了1/0 訪問的效率,但卻需要對Guest作業系統代碼進行大範圍修改。VMware和Xen均 是虛擬單個物理I/0設備成多個邏輯I/0設備,與本論文的方向不同,但其為客戶 作業系統提供虛擬I/0設備信息的方式可以借鑑。同時,近期在Xen模型下進行直 接I/0訪問的研究也比較多,雖處於理論研究階段,本論文也可以借鑑。
Virtual Multiprocessor項目是東京大學開發的基於IA-32機群的分布式 VMM, Virtual Multiprocessor採用了半虛擬化的技術,通過對客戶作業系統的修 改使其與Virtual Multiprocessor協作完成任務。Virtual Multiprocessor運行於用戶 態,客戶作業系統的I/O設備均以文件的形式存放在宿主作業系統中。若要對物 理I/0設備進行訪問,則需要執行宿主作業系統的系統調用,因而效率低下。整 個項目仍處於實驗室階段。
vNUMA項目vNUMA是澳大利亞新南威爾斯大學開發的基於IA-64機群的 分布式VMM,其直接運行於硬體層之上。客戶作業系統(Linux)通過半虛擬化的 方式與vNUMA協作。vNUMA的主要目標在於提供透明的分布式共享存儲用於 科學計算。vNUMA只能對啟動節點進行I/0操作,大大限制了其對大量I/0資 源的利用率,使得整個系統I/0能力低下。目前仍處於實驗室階段。
硬體虛擬化技術隨著虛擬化技術研究的蓬勃興起和虛擬機應用快速普及, 為了佔領此技術領域的優勢地位,兩大處理器廠商Intel和AMD針對IA-32體系 架構的處理器進行了擴展,從硬體上支持虛擬化技術。Intel針對IA-32架構的硬 件虛擬化技術稱為VT-x (Virtual Technology), AMD針對IA-32架構的硬體虛擬 化技術稱為SVC (Safe Virtual Machine)。
以Intel的VT-x為例,它對IA32體系結構進行了如下擴展。
1、 增加了一種新的處理器工作模式,稱為VMX (Virtual Machine Extensions) 模式,用於運行虛擬機系統。其中又分為兩個子操作模式,即VMX根(root) 操作模式和VMX非根(not root)操作模式,VMX根操作模式用於運行VMM, VMX非根操作模式用於運行虛擬機VM,這兩種模式都能夠支持四個特權級
(ring0-ring3)。
2、 定義了兩種模式切換。由根模式進入非根模式的切換,稱為VM entry由非根模式進入根模式的切換,稱為VMexit。
3、 增加一個控制結構VMCS (Virtual Machine Control Structure),用於保存 根模式和非根模式的上下文、控制虛擬機運行的相關信息以及控制VM entry和 VMexit過程的相關信息。
4、 增加IO條用於控制虛擬機的新指令。
通過配置VMCS可以實現所需的虛擬化策略,使得客戶軟體在執行敏感指令 或發生異常時能夠切換到虛擬機監控器VMM,由VMM根據退出原因相應地做 出處理。
在VT-x技術支持下,可以簡化VMM的設計,可以在不使用二進位動態翻 譯技術的情況下,實現全虛擬化,即客戶作業系統和應用軟體可以不經修改地運 行於虛擬機中。

發明內容
1目的
本發明的目的是提供一種分布式I/0資源虛擬化技術的實現方法,它是針對 近年來大規模計算機系統I/0資源管理複雜,使用效率低等局限因素,提出一種 有效管理和使用分布式I/O資源的方法。
2技術方案
本發明一種分布式I/0資源虛擬化技術的實現方法,其技術方案如下 分布式I/0資源虛擬化技術實現的是分布式虛擬機監控(Distributed Virtual Machine Monitor)(簡稱DVMM)的一個子模塊。DVMM的整體邏輯視圖如圖l 所示,DVMM直接運行於向外擴展(scale-out)架構的硬體之上,為上層客戶操 作系統呈現具有向外擴展(scale-up)架構特性的虛擬機。DVMM的模塊結構圖 如圖2所示,DVMM的結構圖如圖2所示,圖中以兩個節點為例。DVMM主要包 括如下模塊初始化模塊,eBIOS模塊,指令集虛擬化模塊,1/0虛擬化模塊,中 斷虛擬化模塊,內存虛擬化模塊和通信模塊。
.本發明主要實現DVMM中的I/0虛擬化模塊。1/0虛擬化模塊通過I/0虛擬化 技術,實現分布式I/0資源的整合,為客戶作業系統提供全局的虛擬I/0環境。同 時客戶作業系統不需要做任何修改。
下面介紹分布式I/0資源虛擬化技術的具體實現方法,以後簡稱分布式I/0資 源虛擬化技術為系統。系統的實現用到了DVMM其他模塊的輔助,包括分布式共享內存(DSM)技術、DVMM的通信模塊和VT-x技術。DSM是DVMM的內存 虛擬化模塊實現的技術,通信模塊是建立在裸機之上的跨物理節點的通信機制, VT-x技術是指令集虛擬化模塊的所應用的技術,具體請見Intel技術手冊。
系統的邏輯示意圖如圖3所示,圖中以兩個物理節點為例。系統中各個物理 節點機在邏輯上存在主次之分,圖3中左側為主節點,右側為從節點,主節點提 供虛擬的I/0設備模型,I/0設備模型用欽件模擬I/0設備資源呈現給上層客戶操作 系統,同時通過設備驅動訪問主節點的物理I/0設備。系統在各個節點的實現架 構完全相同,僅是邏輯上存在主次之分,故系統可任選一物理節點設為主節點, 其它節點為從節點。
在客戶作業系統運行過程中,當客戶作業系統在主節點執行I/0指令時,直 接訪問主節點的I/0設備模型,當戶作業系統在從節點執行I/0指令時,需要跨 節點訪問主節點的I/O設備模型。DSM技術掌控系統所有的訪存過程,根據這 種需求系統將對I/O設備的訪問分為以下三種指令
(1) 非訪存類I/0指令即IN, OUT這兩種基於I/0埠訪問的非字符串 I/O指令,不需要訪存。通過DVMM通信模塊將指令發送到主節點執行並返回 結果這種方式實現。
(2) 訪存類I/O指令即INS, OUTS這兩種字符串I/O指令,以及對MMIO 進行訪問的需要訪問物理內存的彙編指令。通過DVMM的DSM模塊和通信模 塊輔助實現。
G)DMA指令DMA控制指令是非字符串I/0指令,DMA指令執行時存 在大量的訪存操作。故通過DVMM的DSM模塊和通信模塊輔助實現。 2.1分布式I/0資源虛擬化技術 本節介紹系統的具體實現結構。圖4以兩個物理節點為例介紹系統的整體實 現結構。
如圖4所示,左側為主節點,右側為從節點。主從節點的模塊構件完全一樣, 只是執行的具體流程不同。當客戶作業系統的設備驅動程序在主節點引起虛擬機 退出後,處理器進入根模式,虛擬機退出模塊保存虛擬機退出時的CPU狀態信 息,然後進行指令解析,將解析後的I/0操作指令信息保存在I/0請求(ioreq) 數據結構中。然後將ioreq直接交給主節點的I/O設備模型模塊,主節點的I/O 設備模型模塊根據ioreq中的信息對這個I/O指令進行模擬執行,並且將指令返 回的信息保存在ioreq結構中,然後虛擬機進入模塊將ioreq結構中的信息更新 到虛擬機退出時的CPU狀態信息中,隨後進入虛擬機,處理器進入非根模式, 客戶作業系統繼續運行。
當客戶作業系統在從節點引起虛擬機退出後,I/O虛擬化模塊將此I/O指令分成三類分別進行處理非訪存類I/O指令,訪存類I/O指令,DMA指令。後面 將會講到從節點處理這三類I/O指令的具體實現方式。 以下部分是各個子模塊的功能說明
(1) 虛擬機退出
當客戶作業系統執行VT-x所定義的特權指令時,會引起VT-x陷入,處理器 從非根模式進入根模式。對於I/O虛擬化模塊,這些特權指令包括所有的對I/O 設備的訪問指令。PIO指令通過設置VT-x的捕獲指令條件來完成,MMIO訪問 指令通過影子頁表機制引發缺頁來進入根模式。VMCS結構會保存根操作和非根 操作的上下文、控制虛擬機運行的信息以及控制VM entry和VM exit的信息。 但這時需要對VM的cpu通用寄存器狀態信息進行保存。虛擬機退出模塊就是保 存cpu通用寄存器狀態信息到特定數據結構中。
(2) 虛擬機進入
虛擬機進入是虛擬機退出的一個相反過程,處理器從根模式返回到非根模式 時,需要將根模式運行中對cpu通用寄存器狀態信息進行的拷貝回客戶作業系統 中。具體實現與虛擬機退出模塊相同。
(3) 指令解析
指令解析模塊根據VT-x中虛擬機退出時所保存的VMCS結構和保存的cpu 通用寄存器狀態信息。從中讀取此次I/0操作指令的相關標誌位,對此I/0指令 進行解析,並保存在ioreq數據結構中。ioreq結構包含一條I/O指令的基本信息, 具體結構與XEN3.2.0中ioreq數據結構相同。
(4) 判斷主節點
主節點和從節點DVMM 1/0虛擬化模塊的結構完全相同,僅是處理某些I/0 指令的執行過程不同,故需要判斷節點是否為主節點,從而採取不同的處理方式 來處理I/0指令。
判斷主節點是依據DVMM系統中eBIOS模塊在客戶作業系統啟動時提供的 全局資源表來完成的。
(5) 1/0設備模型
I/O設備模型模塊是用軟體完全模擬真實的物理設備,本系統中僅模擬一些最 基本的I/0設備,這包括BIOS, ACPI, APIC,硬碟,顯示器,滑鼠,鍵盤, DMA控制器等設備。客戶作業系統可以向對真實物理設備訪問那樣訪問這些虛 擬設備。客戶作業系統僅能訪問到這些虛擬設備。同時I/0設備模型模塊還通過 設備驅動完成虛擬設備到真實物理設備的訪問過程。這個模塊主要借鑑了 XEN 設備模型的實現技術。
下面介紹系統中三種I/O指令訪問模式的具體實現方式。2. 1.1非訪存類I/O指令訪問模式
非訪存類I/O指令即IN, OUT這兩種基於I/O埠訪問的I/O指令。對於從 節點發起的i/o埠訪問,論文採用指令傳輸、遠程執行、結果返回這種方式實 現從節點對主節點虛擬設備I/O埠的訪問。
以兩個物理節點系統為例,非訪存類I/O指令訪問模式實現方案如圖5所示
如上圖所示,左側為主節點,右側為從節點,從節點為請求節點。當客戶操 作系統引起從節點虛擬機退出後,將此指令解析並保存到ioreq結構中,然後調 用DVMM通信模塊將此ioreq結構發送到主節點。同時置遠程操作位。遠程操 作位的作用是,如果從節點未從主節點接收到此處理後ioreq結構,則從節點此 次I/0操作不能完成,虛擬機不能進入。
主節點運行一個跨節點I/O請求服務例程,這個例程處理來自於各個從節點 的ioreq請求,並對不同的ioreq請求採取不同的處理措施,如非訪存類I/O指令 的ioreq請求和DMA的ioreq請求。
對於非訪存類I/O指令的ioreq,主節點處理非訪存ioreq程序對此ioreq進行 模擬執行,即對I/0設備模型中虛擬設備I/0埠進行訪問操作。將返回的數據 寫到ioreq結構中,同時將此ioreq結構發回請求節點。
請求節點接受到此ioreq結構後,將此ioreq結構中客戶作業系統需要的信息 寫到CPU狀態信息保存結構中,然後引起虛擬機進入。此次從節點發起的非訪 存類I/0指令就執行完成。
2丄2訪存類I/O指令訪問模式
訪存類I/O指令即INS, OUTS這兩種字符串I/O指令,以及以MMIO方 式進行訪問時需要訪問MMIO物理內存的彙編指令。
因為系統中所有對於內存的訪問均由DSM統籌處理,所以訪存類I/O指令執 行時必須經過DSM。圖6為從節點發起的一個訪存類I/O指令的執行過程
如圖6所示,當客戶作業系統引起從節點虛擬機退出後,解析此訪存類I/O 指令。發送DSM請求,此請求主要是讓DSM將所要訪問的頁面定住(pin), 防止DSM將此頁面遷往其他節點,或者其他節點的程序訪問此頁面。
當DSM模塊pin住此頁面之後,處理訪存ioreq模塊會執行此訪存I/O指令, 訪問I/O設備模型的虛擬設備I/O內存,同樣將對cpu狀態信息的修改保存在ioreq 結構中,然後請求DSM執行unpin操作,解除對頁面的pin。隨後將ioreq結構 中的信息更新到CPU狀態信息保存結構中,然後引起虛擬機進入。這次訪存I/0 指令就執行完畢。
DSM在pin和unpin頁面的過程中,有可能需要訪問的頁面不在本地,如圖 5所示,DSM需要pin的虛擬內存的頁面在主節點物理內存上。對於這種情況,DSM會調用DVMM通信模塊,將主節點物理內存的目標頁面拷貝到請求節點 物理內存中,然後I/O設備模型就可以對此頁面進行訪問了。這個過程是由DSM 完成的,論文實現模塊不需要關心這個過程,只需要調用DSM定義的接口就行。
因為對於跨節點物理內存的訪問等問題均由DSM解決,所以對於訪存類1/0 指令的執行過程來說,主節點和從節點均一樣。
2丄3 DMA指令訪問模式I/O指令
本文所指的DMA指令主要是IDE硬碟的DMA指令。DMA控制指令也是非 字符串I/O指令,DMA執行過程中需要大量訪存操作。圖7示意了從節點發起 的一個IDE DMA指令的執行過程
如圖示從節點發起一個IDEDMA指令,主節點的跨節點I/0請求服務例程 接收到這個DMA ioreq之後,調用主節點處理DMA ioreq模塊進行處理。然後 IDE DMA處理模塊被調用執行。
IDE DMA處理模塊訪問I/O設備模型,將主節點物理IDE硬碟的目標數據拷 貝到I/O設備模型的虛擬IDE硬碟DMA緩衝區中,然後將此緩衝區中的數據拷 貝到客戶作業系統運行的虛擬內存的目標區域中。隨後發送此DMA ioreq發送 回請求節點,更新CPU相關信息。隨後引起請求節點虛擬機進入,結束此次跨 節點的IDE DMA指令操作。
IDE DMA處理模塊在將虛擬IDE硬碟DMA緩衝區中的數據拷貝到虛擬內存 的過程中,需要請求DSM模塊pin住目標虛擬內存區域,此操作完成之後,同 樣需要unpin此虛擬內存區域。
綜上所述,本發明一種分布式I/0資源虛擬化技術的實現方法,其具體步驟
如下-
步驟一實現分布式虛擬機監視器系統DVMM中的I/0虛擬化模塊。總體系統的 實現平臺是聯想萬全R510伺服器,處理器為Xeon3230。
步驟二總體結構中的基本功能模塊包括虛擬機退出,虛擬機進入,指令解析, 判斷主節點,I/O設備模型。這些模塊實現過程中用到的現有技術如VT-x, DSM, XEN虛擬化技術;輔助技術為可以在裸機之上的跨物理節點的通信機制。 步驟三在以上基本功能模塊的基礎上實現三種基本的I/0訪問方式非訪存類 1/0指令,訪存類I/0指令,DMA指令。主要技術點在這三種訪問方式的跨節點 過程是怎麼完成的。
步驟四三種基本的I/0指令訪問的跨節點實現方式 *非訪存類I/0指令主要技術步驟為請求節點將指令通過底層通信傳輸到目標節點,然後在目
標節點執行指令,隨後將執行結果返回給請求節點。 *訪存類I/0指令
主要技術步驟為解析訪存類I/0指令,分析出需要訪問的內存地址,如果
此次訪存需要跨節點,則調用DSM將需要訪問的內存遷移到請求節點,這
樣進行節點內部訪問 * DMA指令
主要技術步驟為對於DMA控制器的訪問指令為非訪存類I/0指令,請求
節點採用上述方法將指令傳輸到目標節點執行並返回結果;控制指令給
DMA控制器發出內存訪問操作命令,DMA控制器需要從設備向內存寫大量 數據,這個過程同樣需要調用DSM進行內存的操作,方式與上述訪存類1/0 指令相同。
本發明主要實現DVMM中的I/0虛擬化模塊。1/0虛擬化模塊通過I/0虛擬化 技術,實現分布式I/0資源的整合,為客戶作業系統提供全局的虛擬I/0環境。同 時客戶作業系統不需要做任何修改。
3優點與功效
有效的管理和利用大規模的計算機系統的I/O資源,可以提高系統的整體性 能,減少系統I/0資源浪費,同時減輕系統的運行和維護成本,提高系統可用性。 本文所述分布式I/O資源訪問的方法,可以實現客戶作業系統對分布式I/O資源 對全局的、有效的管理和利用,同時探索一條未來伺服器中I/0技術發展的可行 道路。


圖l整個系統結構示意圖
圖2兩節點的DVMM模塊示意圖
圖3分布式I/0資源虛擬化邏輯示意圖
圖4分布式I/0資源虛擬化實現結構示意圖
圖5非訪存類I/O指令訪問模式實現方案示意圖
圖6訪存類I/O指令訪問模式實現方案示意圖
圖7 DMA指令訪問模式實現方案示意圖具體實施例方式
見圖l、圖2、圖3、圖4、圖5、圖6、圖7所示,其具體實施步驟如下-步驟一實現分布式虛擬機監視器系統DVMM中的I/0虛擬化模塊,總體系統 的實現平臺是聯想萬全R510伺服器,處理器為Xeon3230。 步驟二總體結構中的基本功能模塊包括虛擬機退出,虛擬機進入,指令解析, 判斷主節點,I/O設備模型。這些模塊實現過程中用到的現有技術如VT-x, DSM, XEN虛擬化技術;輔助技術為可以在裸機之上的跨物理節點的通信機制。 步驟三在以上基本功能模塊的基礎上實現三種基本的I/0訪問方式非訪存類 1/0指令,訪存類I/0指令,DMA指令。主要技術點在這三種訪問方式的跨節點 過程是怎麼完成的。
步驟四三種基本的I/0指令訪問的跨節點實現方式 *非訪存類I/0指令
主要技術步驟為請求節點將指令通過底層通信傳輸到目標節點,然後在目
標節點執行指令,隨後將執行結果返回給請求節點。 *訪存類I/0指令
主要技術步驟為解析訪存類I/0指令,分析出需要訪問的內存地址,如果
此次訪存需要跨節點,則調用DSM將需要訪問的內存遷移到請求節點,這
樣進行節點內部訪問 * DMA指令
主要技術步驟為對於DMA控制器的訪問指令為非訪存類I/0指令,請求 節點採用上述方法將指令傳輸到目標節點執行並返回結果;控制指令給 DMA控制器發出內存訪問操作命令,DMA控制器需要從設備向內存寫大量 數據,這個過程同樣需要調用DSM進行內存的操作,方式與上述訪存類1/0 指令相同。
權利要求
1. 一種分布式I/O資源虛擬化技術的實現方法,其特徵在於該方法步驟如下步驟一實現分布式虛擬機監視器系統DVMM中的I/O虛擬化模塊,總體系統的實現平臺是聯想萬全R510伺服器,處理器為Xeon3230;步驟二總體結構中的基本功能模塊包括虛擬機退出,虛擬機進入,指令解析,判斷主節點,I/O設備模型,這些模塊實現過程中用到的現有技術如VT-x,DSM,XEN虛擬化技術;輔助技術為可以在裸機之上的跨物理節點的通信機制;步驟三在以上基本功能模塊的基礎上實現三種基本的I/O訪問方式非訪存類I/O指令,訪存類I/O指令,DMA指令,主要技術點在這三種訪問方式的跨節點過程是怎麼完成的;步驟四三種基本的I/O指令訪問的跨節點實現方式;●非訪存類I/O指令主要技術步驟為請求節點將指令通過底層通信傳輸到目標節點,然後在目標節點執行指令,隨後將執行結果返回給請求節點;●訪存類I/O指令主要技術步驟為解析訪存類I/O指令,分析出需要訪問的內存地址,如果此次訪存需要跨節點,則調用DSM將需要訪問的內存遷移到請求節點,這樣進行節點內部訪問;●DMA指令主要技術步驟為對於DMA控制器的訪問指令為非訪存類I/O指令,請求節點採用上述方法將指令傳輸到目標節點執行並返回結果;控制指令給DMA控制器發出內存訪問操作命令,DMA控制器需要從設備向內存寫大量數據,這個過程同樣需要調用DSM進行內存的操作,方式與上述訪存類I/O指令相同。
全文摘要
本發明是提供一種分布式I/O資源虛擬化技術的實現方法,它是針對近年來大規模計算機系統I/O資源管理複雜,使用效率低等局限因素,提出一種有效地管理和使用分布式I/O資源的方法。本發明的要點就是實現分布式虛擬機監視器系統DVMM中的I/O虛擬化模塊,I/O虛擬化模塊通過I/O虛擬化技術,對三種I/O指令訪問跨節點的實現,從而實現了分布式I/O資源的整合,為客戶作業系統提供全局的虛擬I/O環境。本發明探索出一條未來伺服器中I/O技術發展的可行道路。
文檔編號G06F13/10GK101425046SQ200810225089
公開日2009年5月6日 申請日期2008年10月28日 優先權日2008年10月28日
發明者劉忠麟, 蕭 張, 彭近兵, 李響山, 簫 王, 祝明發, 肖利民 申請人:北京航空航天大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀