Xen is an open source virtual machine capable of running an sevreal OSes beneath it. One of the early contributions of Xen was its use of paravirtualization. Xen needs to capture all interaction with the OS, and older x86 systems made this impossible as some instructions which should have been privileged were not, such as sidt. Other VMs solved this problem by using binary translation, a way of catching these instructions before they executed and replacing them. This is an expensive operation and Xen improved it by rewriting the binaries in the OS before they were installed. This one cost penalty was negligible compared to the savings incurred when running the VMs.
Thankfully, today processors provide a special mode for hyper visor VMs such as Xen to use. Due to the open source status of Xen, major vendors such as Intel and AMD contributed the code as it provided a good reference for others to use. This makes the VMs even faster.
I also appreciated the use of a separate domain for the controlling of the VMs running in Xen. This separation helps security by removing potential vectors of attack from the OSes being virtualized by Xen.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment