1. 程式人生 > >LINUX的XEN和KVM到底區別在什麼地方?

LINUX的XEN和KVM到底區別在什麼地方?

有個幾個重要區別:
1. KVM內置於Linux,是核心模組;xen是Linux的一個應用。所以KVM可以直接利用Linux來做一些在xen中需要利用hypervisor來做的事情,比如任務排程,記憶體管理等等。所以相比之下,KVM更輕量,更易管理,並且版本更新也可以隨著核心的更新。

2. 從架構中
KVM
<img src="https://pic1.zhimg.com/e4f5b20e348b6b5cc8d85a587f1041e4_b.png" data-rawwidth="769" data-rawheight="633" class="origin_image zh-lightbox-thumb" width="769" data-original="https://pic1.zhimg.com/e4f5b20e348b6b5cc8d85a587f1041e4_r.png">qemu通過libkvm應用程式介面,用fd通過ioctl向裝置驅動來發送建立,執行虛機的命令。裝置驅動kvm接下來解析命令。

qemu通過libkvm應用程式介面,用fd通過ioctl向裝置驅動來發送建立,執行虛機的命令。裝置驅動kvm接下來解析命令。
虛機執行時,有三種模式:
-客戶模式:執行非io的客戶程式碼,虛機在這個模式下執行;
-使用者模式:代表使用者執行io操作,qemu執行在這個模式;
-核心模式:實現客戶模式的切換,,kvm工作在這個模式。

XEN
<img src="https://pic1.zhimg.com/1a2e759a10cbaa7acc70b20d53cb0874_b.png" data-rawwidth="1300" data-rawheight="1064" class="origin_image zh-lightbox-thumb" width="1300" data-original="https://pic1.zhimg.com/1a2e759a10cbaa7acc70b20d53cb0874_r.png">domain0做為對hypervisor的擴充,提供對整個平臺的管理,直接擁有系統硬體輸入輸出裝置。domain1是一個裝置驅動域,擁有部分物理裝置。從domain2開始,是普通的使用者虛擬化域,不具有任何物理裝置,而是通過虛擬裝置向位於domain0的後端裝置驅動程式申請服務,從而實現對裝置的訪問。
domain0做為對hypervisor的擴充,提供對整個平臺的管理,直接擁有系統硬體輸入輸出裝置。domain1是一個裝置驅動域,擁有部分物理裝置。從domain2開始,是普通的使用者虛擬化域,不具有任何物理裝置,而是通過虛擬裝置向位於domain0的後端裝置驅動程式申請服務,從而實現對裝置的訪問。

相關推薦

LINUX的XENKVM到底區別在什麼地方

有個幾個重要區別: 1. KVM內置於Linux,是核心模組;xen是Linux的一個應用。所以KVM可以直接利用Linux來做一些在xen中需要利用hypervisor來做的事情,比如任務排程,記憶體管理等等。所以相比之下,KVM更輕量,更易管理,並且版本更新也可以隨著核心的更新。 2. 從架構中KVM

徹徹底理解C++中指針引用的區別

c++ 區別 include 分享 sin style void png alt #include<iostream> using namespace std; void test(int **p) {   int a=2;   *p=&a;   

Java中堆棧的區別在什麼地方

堆和棧都是Java用來在RAM中存放資料的地方。 堆 (1)Java的堆是一個執行時資料區,類的物件從堆中分配空間。這些物件通過new等指令建立,通過垃圾回收器來銷燬。 (2)堆的優勢是可以動態地分配記憶體空間,需要多少記憶體空間不必事先告訴編譯器,因為它是在執行時動態

說一下 session cookie的區別?你在專案中都有哪些 地方使用了?

Session和cookie都是會話(Seesion)跟蹤技術。Cookie通過在客戶端記錄資訊確定使用者身份,Session通過在伺服器端記錄資訊確定使用者身份。但是 Session的實現依賴於Coo

物聯網通訊與普通簡訊通訊的區別要注意的地方

CMPP3.0中號碼欄位增加到32位,還增加了號碼型別欄位,可能是為了擴充套件不同型別的卡。 Dest_terminal_Id 32*DestUsr_tl Octet String 接收簡訊的MSISDN號碼。 Dest_terminal_ty

自頂向下向上的歸併排序區別

歸併排序中最基本的操作是“歸併”,即將兩個(2-路歸併)或兩個以上的有序陣列組合成一個更大的有序陣列。按照歸併順序的不同,歸併排序可以分為自頂向下和自底向上兩類。 自頂向下的歸併排序進行的操作主要就是對陣列的拆分與合併。通過層層拆分得到單元素陣列,天生

cookie session 的區別詳解

重復 處理方式 一行 所有 有效 依據 是把 存儲 一個 二者的定義: 當你在瀏覽網站的時候,WEB 服務器會先送一小小資料放在你的計算機上,Cookie 會幫你在網站上所打的文字或是一些選擇, 都紀錄下來。當下次你再光臨同一個網站,WEB 服務器會先看看有沒有它上次留下的

JS中isPrototypeOf hasOwnProperty 的區別

另一個 strong 是否 指定 不同 名稱 功能 成員 eof 1、isPrototypeOf isPrototypeOf是用來判斷指定對象object1是否存在於另一個對象object2的原型鏈中,是則返回true,否則返回false。 格式如下: object1.is

struts1struts2的區別

mvc 項目 專註 邏輯 表單 類對象 區別 action 層次 struts是Apache基金會的一個開源項目。struts提供了通用的MVC:模型層(專註於業務邏輯(數據的存儲、處理))、視圖層(數據在瀏覽器端的顯示)、控制層(連接模型層與視圖層)、 MVC架構:層次分

Statement, PreparedStatementCallableStatement的區別

通過 請求 簡單 state 頁面請求 對象 以及 最好 功能 Statement用於執行不帶參數的簡單SQL語句,並返回它所生成的結果,每次執行SQL豫劇時,數據庫都要編譯該SQL語句。 Satatement stmt = conn.getStatement(); st

清空文件內容命令之echo/dev/null區別

linux 字符串 null 定向 我們知道清空文件內容有很多種方法我們只談論echo "" 和 /dev/null這兩種有什麽區別一、黑洞設備/dev/null是什麽?在 Linux 中, null 設備基本上被用來丟棄某個進程不再需要的輸出流,或者作為某個輸入流的空白文件,這些通常可以利用

JSON.parse()eval()的區別

如果 字符串 擔心 並且 spa 區別 color 操作 插入 JSON.parse()之可以解析json格式的數據,並且會對要解析的字符串進行格式檢查,如果格式不正確則不進行解析,而eval()則可以解析任何字符串,eval是不安全的。 比如下面的字符串: var

hrefsrc的區別

方式 並且 資源 per frame 資源下載 為什麽 link 存在 href和src的區別 [標簽]src和href之間存在區別,能混淆使用。src用於替換當前元素,href用於在當前文檔和引用資源之間確立聯系。 src是source的縮寫,指向外部資源的位置,指向

left join on 的區別

wid color left join where 單表查詢 不同 決定 width aaa SQL中on條件與where條件的區別 在使用left jion時,on和where條件的區別如下: 1、 on條件是在生成臨時表時使用的條件,它不管on中的條件是否為

em、rempx的區別

版本 很好 浮點 調整 簡化 分辨 related 開心 大小 1、em與px的問題 px是何物? px像素(Pixel)。相對長度單位。像素px是相對於顯示器屏幕分辨率而言的。(引自CSS2.0手冊) em是相對長度單位。相對於當前對象內文本的字體尺寸。如當前對行內文本

mdevudev的區別

logs htm tails net 區別 csdn targe blank cnblogs http://blog.csdn.net/hunanchenxingyu/article/details/40432275 http://www.cnblogs.com/lidab

HashMapHashtable的區別

性能 刪除 影響 之間 fail 創建 允許 hashmap 以及 HashMap和Hashtable都實現了Map接口,但決定用哪一個之前先要弄清楚它們之間的分別。主要的區別有:線程安全性,同步(synchronization),以及速度。 HashMap幾乎可以等價於

攔截器過濾器的區別

str span line 實現 沒有 內部 不依賴 resp left 攔截器和過濾器都可以用來實現橫切關註功能,其區別主要在於: 1、攔截器是基於java反射機制的,而過濾器是基於函數回調的。 2、過濾器依賴於servlet容器,而攔截器不依賴於servlet容器。 3

線程同步互斥的區別

之間 方法 無法 spa lock zed 模式 col 一定的 互斥是指某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。 同步是指在互斥的基礎上(大多數情況),通過其它機制實現訪問者對資源的有序訪問。

cnpm install -S 與cnpm install -D (dependenciesdevDependencies的區別

ive optional package bsp 後者 pack cti enc date npm install takes 3 exclusive, optional flags which save or update the package version in y