ALS 2000 Abstract
Plex86: an i80x86 Virtual Machine
Kevin Lawton, MandrakeSoft, Inc.
Abstract
What is virtualization ?
It is desirable to be able to run multiple operating systems simultaneously:
-in order to simultaneously run application software written for dierent operating systems
-in order to debug system software using a fully equipped host debugging environment
-in order to consolidate management of a great number of heterogeneous PC environments in an enterprise to a small set of virtual machine servers.
One could attempt to emulate the complete hardware
environment | BOCHS
-Pro: works on any platform, emulators are portable
-Con: this is very slow
One could attempt to emulate the API of the different
operating systems | WINE, UML
-This requires the host platform to be the same as the platform of the emulated operating system
-The emulated API needs to be fully documented, which is not the case for most commercial systems
The intermediate solution is virtualization | plex86
-Emulate instructions in the guest OS which access
features which can not be used concurrently with the
host OS
*The peripheral devices
*System instructions
-Create an environment which will allow all other
instructions to be executed natively by the processor
View the full text of this paper in
PDF form, and
PostScript form.
If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.
To become a USENIX Member, please see our Membership Information.
|