| Welcome, friend reader, to lguest. | |
| Lguest is an adventure, with you, the reader, as Hero. I can't think of many | |
| 5000-line projects which offer both such capability and glimpses of future | |
| potential; it is an exciting time to be delving into the source! | |
| But be warned; this is an arduous journey of several hours or more! And as we | |
| know, all true Heroes are driven by a Noble Goal. Thus I offer a Beer (or | |
| equivalent) to anyone I meet who has completed this documentation. | |
| So get comfortable and keep your wits about you (both quick and humorous). | |
| Along your way to the Noble Goal, you will also gain masterly insight into | |
| lguest, and hypervisors and x86 virtualization in general. | |
| Our Quest is in seven parts: (best read with C highlighting turned on) | |
| I) Preparation | |
| - In which our potential hero is flown quickly over the landscape for a | |
| taste of its scope. Suitable for the armchair coders and other such | |
| persons of faint constitution. | |
| II) Guest | |
| - Where we encounter the first tantalising wisps of code, and come to | |
| understand the details of the life of a Guest kernel. | |
| III) Drivers | |
| - Whereby the Guest finds its voice and become useful, and our | |
| understanding of the Guest is completed. | |
| IV) Launcher | |
| - Where we trace back to the creation of the Guest, and thus begin our | |
| understanding of the Host. | |
| V) Host | |
| - Where we master the Host code, through a long and tortuous journey. | |
| Indeed, it is here that our hero is tested in the Bit of Despair. | |
| VI) Switcher | |
| - Where our understanding of the intertwined nature of Guests and Hosts | |
| is completed. | |
| VII) Mastery | |
| - Where our fully fledged hero grapples with the Great Question: | |
| "What next?" | |
| make Preparation! | |
| Rusty Russell. |