53 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| xv6 is a re-implementation of Dennis Ritchie's and Ken Thompson's Unix
 | |
| Version 6 (v6).  xv6 loosely follows the structure and style of v6,
 | |
| but is implemented for a modern x86-based multiprocessor using ANSI C.
 | |
| 
 | |
| ACKNOWLEDGMENTS
 | |
| 
 | |
| xv6 is inspired by John Lions's Commentary on UNIX 6th Edition (Peer
 | |
| to Peer Communications; ISBN: 1-57398-013-7; 1st edition (June 14,
 | |
| 2000)). See also http://pdos.csail.mit.edu/6.828/2016/xv6.html, which
 | |
| provides pointers to on-line resources for v6.
 | |
| 
 | |
| xv6 borrows code from the following sources:
 | |
|     JOS (asm.h, elf.h, mmu.h, bootasm.S, ide.c, console.c, and others)
 | |
|     Plan 9 (entryother.S, mp.h, mp.c, lapic.c)
 | |
|     FreeBSD (ioapic.c)
 | |
|     NetBSD (console.c)
 | |
| 
 | |
| The following people have made contributions: Russ Cox (context switching,
 | |
| locking), Cliff Frey (MP), Xiao Yu (MP), Nickolai Zeldovich, and Austin
 | |
| Clements.
 | |
| 
 | |
| We are also grateful for the bug reports and patches contributed by Silas
 | |
| Boyd-Wickizer, Mike CAT, Nelson Elhage, Nathaniel Filardo, Peter Froehlich,
 | |
| Yakir Goaran, Shivam Handa, Bryan Henry, Jim Huang, Anders Kaseorg, kehao95,
 | |
| Eddie Kohler, Imbar Marinescu, Yandong Mao, Hitoshi Mitake, Carmi Merimovich,
 | |
| Joel Nider, Greg Price, Ayan Shafqat, Eldar Sehayek, Yongming Shen, Cam Tenny,
 | |
| Rafael Ubal, Warren Toomey, Stephen Tu, Pablo Ventura, Xi Wang, Keiichi
 | |
| Watanabe, Nicolas Wolovick, Jindong Zhang, and Zou Chang Wei.
 | |
| 
 | |
| The code in the files that constitute xv6 is
 | |
| Copyright 2006-2016 Frans Kaashoek, Robert Morris, and Russ Cox.
 | |
| 
 | |
| ERROR REPORTS
 | |
| 
 | |
| If you spot errors or have suggestions for improvement, please send email to
 | |
| Frans Kaashoek and Robert Morris (kaashoek,rtm@csail.mit.edu).  If you have
 | |
| suggestions for improvements, please keep in mind that the main purpose of xv6
 | |
| is as a teaching operating systems for MIT's 6.828. For example, we are in
 | |
| particular interested in simplifications and clarifications, instead of
 | |
| suggestions for new systems calls, more portability, etc.
 | |
| 
 | |
| BUILDING AND RUNNING XV6
 | |
| 
 | |
| To build xv6 on an x86 ELF machine (like Linux or FreeBSD), run "make".
 | |
| On non-x86 or non-ELF machines (like OS X, even on x86), you will
 | |
| need to install a cross-compiler gcc suite capable of producing x86 ELF
 | |
| binaries.  See http://pdos.csail.mit.edu/6.828/2016/tools.html.
 | |
| Then run "make TOOLPREFIX=i386-jos-elf-".
 | |
| 
 | |
| To run xv6, install the QEMU PC simulators.  To run in QEMU, run "make qemu".
 | |
| 
 | |
| To create a typeset version of the code, run "make xv6.pdf".  This
 | |
| requires the "mpage" utility.  See http://www.mesa.nl/pub/mpage/.
 | 
