48 lines
		
	
	
	
		
			1.7 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			48 lines
		
	
	
	
		
			1.7 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
| 
								 | 
							
								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.
							 |