我在網路上爬了一些文,目前對於vt-x與KVM的基本認知如下:
1. vt-x:
Intel開發的一種使CPU支援虛擬化的技術,將VMM放在VMX root operation;
將guest OS放在VMX non-root operation,兩者皆為ring 0,故guest OS
可以直接使用ring 0的指令,無須像傳統那樣要先經由VMM轉譯,故能有效
提昇執行效能。
2. KVM:
Linux的kernel包含KVM,故當host OS(linux)安裝好時,KVM也跟著kernel
一起被安裝好(因為它就是kernel的一部分),當guest OS運行時,由於kernel
支援KVM,所以每個VM對於host OS而言,相當於一般process且guest OS能直接使用
ring 0的指令,無須經過轉譯。
--------------------------------------
問題:
那這樣KVM跟其他支援vt-x的虛擬系統,兩者運行於同一台CPU支援vt-x的硬體上,
KVM的優點為何? 兩者的guest OS不是都能直接使用ring 0嗎? 那這樣KVM
真的有比較快嗎?
---------------------------------------
謝謝回答^^
--
1. vt-x:
Intel開發的一種使CPU支援虛擬化的技術,將VMM放在VMX root operation;
將guest OS放在VMX non-root operation,兩者皆為ring 0,故guest OS
可以直接使用ring 0的指令,無須像傳統那樣要先經由VMM轉譯,故能有效
提昇執行效能。
2. KVM:
Linux的kernel包含KVM,故當host OS(linux)安裝好時,KVM也跟著kernel
一起被安裝好(因為它就是kernel的一部分),當guest OS運行時,由於kernel
支援KVM,所以每個VM對於host OS而言,相當於一般process且guest OS能直接使用
ring 0的指令,無須經過轉譯。
--------------------------------------
問題:
那這樣KVM跟其他支援vt-x的虛擬系統,兩者運行於同一台CPU支援vt-x的硬體上,
KVM的優點為何? 兩者的guest OS不是都能直接使用ring 0嗎? 那這樣KVM
真的有比較快嗎?
---------------------------------------
謝謝回答^^
--
All Comments