心理

當前位置 /首頁/完美生活/心理/列表

kvm三個組件及應用

kvm三個組件及應用

KVM虛擬化架構及三種模式

1、 客戶模式(guestOS):VM中的OS爲GuestOS

客戶機在操作系統中運行的模式,客戶機分爲內核模成和用戶模式

2、用戶模式:

爲用戶提供虛擬機管理的用戶空間工具以及代表用戶執行I/O, Qemu工作在此模式下(Qemu的主要功能)

3、linux內核模式

模擬CPU、內存,實現客戶模式切換,處理從客戶模式的推出,KVM即運行在此模式下

KVM原理

1、 Guest:客戶機系統,包括CPU (vCPU) 、內存、驅動(Console、 網卡、I/O設備驅動等)

被KVM置於一種受限制的CPU模式下運行。

2、KVM內核模塊模擬處理器和內存以支持虛擬機運行

3、Qemu主要處理I/O以及爲客戶提供一 個用戶空間/dev/kvm工具libvirt來進行虛擬機管理

ioctl(定義)專用於設備輸入輸出操作的系統調用

libvirt: KVM管理工具

以上構成一個完整的虛擬化平臺

簡單理解:

KVM驅動提供處理器、內存的虛擬化,以及客戶機I/O的攔截,guest的I/O被攔截後,交由Qemu處理

Qemu利用接口libkvm調用(ioctl)虛擬機設備接口/dev/kvm來分配資源、管理、維護虛擬機

KVM工作流程

用戶模式的Qemu利用接口libkvm 通過 ioctl系統調用進入內核模式。KVM驅動爲虛擬機創建虛擬CPU和虛擬內存,然後執行VMLAU-NCH指令進入客戶模式,裝載Guest OS並運行。Guest OS運行過程中如果發生異常,則暫停Guest OS的運行並保存當前狀態同時退出到內核模式來處理這些異常。

內核模式處理這些異常時如果不需要V/O則處理完成後重新進入客戶模式。如果需要V/O則進入到用戶模式,則由Qemu來處理I/O,處理完成後進入內核模式,再進入客戶模式

TAG標籤:kvm 組件 #