ARM虛擬化

ARM目前採用的是硬件輔助虛擬化的方式,即在處理器模式上增加了EL2級別,將hypervisor運行在EL2上,那爲什麼需要這麼做呢?

1、虛擬化在業界上有一種說法叫做“經典可虛擬化模型”,也就是要求cpu的敏感指令屬於特權指令的一個子集,這樣在VM裏訪問敏感指令的時候就會觸發異常並被hypersiver捕獲;

2、ARM(x86也類似)的模式是不符合“經典可虛擬化模型”的,也就是說ARM有很多敏感指令都不屬於特權指令,因此ARM的虛擬化實現主要有兩種方式:

 1)、修改Guest操作系統,將其敏感指令替換成特權指令,並在hypervisor中模擬其敏感指令的運行;

 2)、通過硬件輔助虛擬化,將hypervisor與VM kernel運行在不同的模式下,VM運行在一個受控模式,hypervisor可以配置哪些敏感指令是否觸發異常;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章