07/17 星系主題:探討第三代 microkernel + hypervisor (microhypervisor) by Jserv
報名網址:http://registrano.com/events/d39369
hypervisor.org
簽到
sting@itri.org.tw
jserv
Ben6
C.C. Huang 黃呈章 cc.huang@jorjin.com.tw
Y. Chao
Kito Cheng
Anndy
tomjpsun
Definition Kernel
- Monolithic Kernel
- Micro kernel
Key Man: Liedtke
--> 1993 year : L4
= Concepts =
Tasks
- Represnet domain of protection and isolation
3 management operations
- Map/Unmap
- Grant
- Flush
Performance bottleneck of Mach due to IPC
MAP Reference
- 對應到硬體的Paging 來提高效能
Security:
ACL control --> Capability Based
Recursive Address Space
1995 "優雅的設計"
Memory allocation is users' responsibility
Bug-free kernel?
http://www.linuxfordevices.com/c/a/News/NICTA-sel4-OK-Labs-OKL4/
一個很大的突破:把資源抽象化為cabilities
cability table / cability handler
Everything is a cability
seL4
- Revised IPC
- AsyncEP
interrupt object
Asynchronous (功耗較小)
* avoid blocking
* receiver can poll and wait
okL4 source code download link:
- http://wiki.ok-labs.com/Release/3.0
VM -- ( VM Exit ) --> Hypervisor
Hypervisor -- ( VM Entry ) --> VM
VMCS for Guest OS <-> Hypervisor switching (similar to context switching?)
NOVA Hypervisor
- 9000 LOC for MicroHypervisor
- http://os.inf.tu-dresden.de/~us15/nova/
L4Ka -> FIASCO -> FIASCO.OC
- http://os.inf.tu-dresden.de/L4/
- http://os.inf.tu-dresden.de/fiasco/
The NOVA Microhypervisor 簡報:
http://os.inf.tu-dresden.de/Studium/MkK/SS2012/10_nova.pdf
簡報與code實作是完全一致的。 (令人非常感動啊!)
Source Code
https://github.com/IntelLabs/NOVA
- Entry of NOVA code reading: ioapic.cpp
use kernel object to seach code
ex: tss.cpp, vmm.cpp
GPU 還沒有做出
L4Re -- POSIX Driver
NOVA debuging by L4ka
- NICTA
SDR : Software Defined Radio
ARM
big.Little viedeo for introduction
Linaro
- QEMU ARM fast-modeling
- cortex-a15 + a9/a7
ARM virtualiz(s)er
x86 Virtualization種類: