Linux江湖20 虛擬機器體驗之KVM篇

2021-06-28 19:32:54 字數 1082 閱讀 6627

很顯然,這種完全以軟體模擬硬體的形式雖然功能強大,但是效能難以滿足使用者的需要。模擬出的硬體的效能和物理硬體的效能相比,必然會大打折扣。為了提高虛擬機器軟體的效能,開發者們各顯神通。其中,最常用的辦法就是在主作業系統中通過核心模組開乙個洞,通過這個洞將虛擬機器中的操作直接對映到物理硬體上,從而提高虛擬機器中執行的作業系統的效能。如下圖:

其實virtualbox也是採取的這種核心模組加速的模式。我之所以這麼說,是因為在安裝virtualbox時,它會要求安裝dkms。如下圖:

kvm和qemu是相輔相成的,qemu可以使用kvm核心模組加速,而kvm需要使用qemu執行虛擬機器。從上圖可以看到,如果要使用ubuntu的包管理軟體安裝kvm,其實安裝的就是qemu-kvm。而qemu-kvm並不是乙個什麼很複雜的軟體包,它只包含很少量幾個檔案,如下圖:

用man命令檢視一下它的文件,發現qemu-kvm包不僅包含的檔案很少,而且它的可執行檔案kvm也只是對qemu-system-x86_64命令的乙個簡單包裝,如下圖:

那麼問題來了,kvm核心模組究竟是由哪個包提供的呢?其實,自從linux 2.6開始,kvm就已經被加入核心了。如果非要找出kvm核心模組kvm.ko是由哪個包提供的,可以用如下命令考察一下:

可以看出,使用kvm加速後,虛擬機器中的winxp執行速度提公升了不少,開機只用了34秒。我將解析度調整為1366*768,圖形介面執行也很流暢,不管是開啟ie瀏覽器還是office辦公軟體都沒有問題,再也沒有出現cpu使用率飆公升到100%的情況。

2 虛擬機器體驗之KVM篇

很顯然,這種完全以軟體模擬硬體的形式雖然功能強大,但是效能難以滿足使用者的需要。模擬出的硬體的效能和物理硬體的效能相比,必然會大打折扣。為了提高虛擬機器軟體的效能,開發者們各顯神通。其中,最常用的辦法就是在主作業系統中通過核心模組開乙個洞,通過這個洞將虛擬機器中的操作直接對映到物理硬體上,從而提高虛...

1 虛擬機器體驗之QEMU篇

說起虛擬機器,大家都不陌生。需要使用虛擬機器的場景也非常的多,比如有志於寫作業系統的同志,往往需要乙個虛擬機器來執行和除錯他寫的系統 再比如喜歡研究網路體系結構的朋友,需要在自己的電腦上虛擬出n個系統組成各種各樣的網路。這個需要電腦的配置夠強大才行,幸好本人的電腦夠。還比如用windows的想玩li...

Linux入門學習教程 虛擬機器體驗之KVM篇

很顯然,這種完全以軟體模擬硬體的形式雖然功能強大,但是效能難以滿足使用者的需要。模擬出的硬體的效能和物理硬體的效能相比,必然會大打折扣。為了提高虛擬機器軟體的效能,開發者們各顯神通。其中,最常用的辦法就是在主作業系統中通過核心模組開乙個洞,通過這個洞將虛擬機器中的操作直接對映到物理硬 件上,從而提高...