Archive:HypervisorDevelopment

= Hypervisor Development =

This page is a repository of information relating to Hypervisor Development in Fedora.

Links & Resources

 * Xen Project
 * fedora-xen mailing list
 * [http:/// Herbert Xu's hypercall docs] (coming soon)
 * [http:/// Steven Rostedt's hv docs] (coming soon)
 * Red Hat Emerging Technologies includes cool bleeding edge virtualization stuff
 * paravirt queue mercurial repo containing paravirt ops patches and Rusty's   lhype  project
 * Credit Scheduler Documentation
 * CKRM v/s Xen CPU Scheduler
 * Xen benchmarks from Bull (not comprehensive, but interesting)
 * Virtualization hardware extensions useful basic info on Pacifica & VT

Papers

 * Scheduling Algorithms and Operating Systems Support for Real-Time Systems, 1994, Krithi Ramamritham, John A. Stankovic. (covers EDF)
 * K. J. Duda, D. R. Cheriton. Borrowed-Virtual-Time (BVT) Scheduling: Supporting Latency-sensitive Threads in a General-purpose Scheduler.

Task Ownership Legend

 * jm - JamesMorris
 * hx - HerbertXu
 * sct - StephenTweedie
 * sr - StevenRostedt

Add yourself to the above if you wish to participate. Once you select a task to work on, add your initials (in bold) next to it below. To add a new item, discuss it first on the fedora-xen mailing list then update this page.

Current Items (FC7)

 * Security audit [hx] 
 * Network performance [hx] 
 * Analyze & document Credit Scheduler, identify issues and potential improvements [sr] 
 * lhype [jm] 

Future Items

 * Enforce binary interface versioning for HV & VMs
 * SMP scalablility ^1^
 * Investigate re-writing timer code using latest Linux kernel ideas (sr ?)
 * XSM (jm ?)
 * Investigate NAPI-like mitigation within the HV
 * May need to add HV heap ballooning
 * NUMA functionality (upstream ?)
 * ia64
 * ppc64
 * big pages (upstream work)
 * MSI (upstream work)
 * PM (upstream work)
 * Virtualized block I/O ^2^
 * Migration from 32 to 64-bit host (investigate some time, probably very difficult)
 * PAE > 16GB ?
 * Xen Share ?

^1^ Andrew Theurer from IBM presented a paper at OLS on a number of SMP scalability issues. The big ones were writeable pagetables (with his tests it appears to be slower than emulation even on UP); page table lock contention and global counter when writing to CR3.

^2^ sct: Initially, just the normal virtual disk front/back-end pair. For FC5, and certainly for RHEL-5, ideally we'd like to have something that looks like a real SCSI block device. ie. that supports proper SCSI ID inquiries from domU etc.