Intro
vmware esx
page color 和我知道的page color一样吗
Denali project
Virt. Interface
H.W. Resources
Mem
xen在顶端64MB
CPU
处理int 0x80的方法:https://wiki.xenproject.org/wiki/Xen_FAQ_Design_and_in_Depth
仅仅只有page fault涉及ring0特权指令吗?
Unfortunately it is not possible to apply the same technique to the page fault handler be- cause only code executing in ring 0 can read the faulting address from register CR2; page faults must therefore always be delivered via Xen so that this register value can be saved for access in ring 1.
Device
Cost of Porting
Project Control and Management
System call interrupt based [i386]: During booting process, linux kernel of a domU register's its IDT with Xen Hypervisor via HYPERVISOR_set_trap_table(trap_table); [arch/i386/kernel/traps-xen.c]. Xen maintains two IDT's, one global IDT (its own) and other per domain IDT. Xen uses global IDT to register the entire trap handler except for system call handler (int 0x80). When a VM gets scheduled, its system call handler (from per domain IDT table) is registered with the processor. Hence when a domain/VM executes a system call, its own handler is executed.
Detailed Design
Control Transfer: Hypercalls & Events
Data Transfer: IO Rings
描述的不清楚。全局有几个Rings?谁申请,谁分配?如何区分不同domain?
Subsystem Virt.
CPU Sched.
Timers
Virt. Addr. Tran.
Read only page table
Page table update through hypercall
Phys. Mem.
Network
Disk
Building a New Domain
Evaluation
Benchmarks
- SPEC INT2000: Computation intensive
- processor
- memory system
- compiler quality
- Linux build time: 7% in system:
- file IO
- scheduling
- memory management
- Open Source Database Benchmark
- socket communication
- dbench
- file system operations
- SPEC WEB99: Web server: Page requests
- 30% dyn. content generation
- 16% HTTP POST
- 0.5% CGI script
- file system, network.
OS Benchmarks
- lmbench:操作系统各个部件的小测试
- ttcp:网络传输
Concurrent Virt. Machine
- SMP多进程vsXen多domain单线程
Perf. Isolation
其他domain的异常行为是否影响正常domain性能,微小。