寫個作業,虛擬化相關的主題都還滿有趣的,不過暫時想不到能在自己的專案中有什麼應用XD
一、虛擬機器監視器(Hypervisor)
一般來說,虛擬機器 (VM) 架構由虛擬化層(Hypervisor layer)的位置加以區分有兩種典型的類別:
- 裸機虛擬化(Bare-Metal) : 虛擬機管理程序直接運行在主機的硬體(如 CPU、記憶體、磁碟和網路介面)來控制硬體和管理客體作業系統上。
- 主機式虛擬化(Host) : 虛擬機管理程序運行在傳統的作業系統上,就像其他電腦程式那樣運行。
半虛擬化與全虛擬化指的是廠商在解決 x86 CPU 特權等級,運用不同的技術,解決敏感指令不能被虛擬化的問題,與 Bare-Metal 或 Hosted 安裝方式無關。
二、裸機虛擬化架構
Hypervisor 支援在裸機裝置上進行硬體層級的虛擬化。Hypervisor 軟體直接位於實體硬體和 OS 之間,而此虛擬化層就稱為 VMM 或 Hypervisor。
- 微核心 Hypervisor :只包含基本和不變的功能 (例如實體記憶體管理和處理器排程)。 裝置驅動程式和其他可變的元件則在 Hypervisor 之外。
- 整合型 Hypervisor :會實作上述所有功能,包括裝置驅動程式的功能。
三、Jailhouse hypervisor
由德國西門子公司發起的一項以 GPLv2 釋出的輕量級虛擬化技術,沿用 Linux 核心的機制,得以在 Linux 以外,執行即時作業系統(RTOS)或裸機(bare-metal)環境(跑裸機環境要與linux合作)。
linux 早有許多虛擬化的工具,例如:KVM, VirtualBox, Xen, VMware, lguest, hobbyst Xvisor,而使用 Jailhouse 的特點是輕量且安全。
與其他虛擬化不同的是,Jailhouse 提出一個能夠隔離執行 (partitioning) 的 hypervisor,在工業控制與即時領域有需求。詳見:http://www.slideshare.net/jserv/realtime-linux (從 Page 103 開始看)
(感謝jserv的熱心回饋 : D)
安裝和設定:
https://github.com/siemens/jailhouse
https://ntuoss.hackpad.com/Jailhouse-hypervisor-for-x86_64-4ZGvEiCbKgU
https://ntuoss.hackpad.com/HW2-Jailhouse-Hypervisor-cC90xmupcmM
最後就可以跑囉~
References
雲端運算: 虛擬化類別
https://technet.microsoft.com/zh-tw/magazine/hh802393.aspx
wiki - Hypervisor
https://zh.wikipedia.org/wiki/Hypervisor
wiki - QEMU
https://zh.wikipedia.org/wiki/QEMU
關於 Hypervisor 的問與答
http://vlife.pixnet.net/blog/post/18754670-%E9%97%9C%E6%96%BC-hypervisor-%E7%9A%84%E5%95%8F%E8%88%87%E7%AD%94
透過Bare Metal玩Raspberry Pi
http://www.makezine.com.tw/make2599131456/bare-metalraspberry-pi