xv6-65oo2/README

50 lines
1.9 KiB
Plaintext
Raw Normal View History

2006-09-04 11:52:36 +00:00
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.
2007-08-29 18:18:57 +00:00
ACKNOWLEDGMENTS
2006-09-07 20:28:53 +00:00
2007-08-28 19:30:23 +00:00
xv6 is inspired by John Lions's Commentary on UNIX 6th Edition (Peer
2006-09-04 11:52:36 +00:00
to Peer Communications; ISBN: 1-57398-013-7; 1st edition (June 14,
2015-11-13 16:14:31 +00:00
2000)). See also http://pdos.csail.mit.edu/6.828/2014/xv6.html, which
2006-09-04 11:52:36 +00:00
provides pointers to on-line resources for v6.
2006-09-04 11:52:36 +00:00
xv6 borrows code from the following sources:
JOS (asm.h, elf.h, mmu.h, bootasm.S, ide.c, console.c, and others)
2011-09-02 18:00:33 +00:00
Plan 9 (entryother.S, mp.h, mp.c, lapic.c)
2006-09-03 15:10:33 +00:00
FreeBSD (ioapic.c)
2006-09-04 11:52:36 +00:00
NetBSD (console.c)
2006-09-03 15:10:33 +00:00
2012-08-28 18:11:23 +00:00
The following people have made contributions:
2006-09-03 15:10:33 +00:00
Russ Cox (context switching, locking)
Cliff Frey (MP)
Xiao Yu (MP)
Nickolai Zeldovich
Austin Clements
2006-09-03 15:10:33 +00:00
In addition, we are grateful for the bug reports and patches contributed by
Silas Boyd-Wickizer, Peter Froehlich, Shivam Handa, Anders Kaseorg, Eddie
Kohler, Yandong Mao, Hitoshi Mitake, Carmi Merimovich, Joel Nider, Greg Price,
Eldar Sehayek, Yongming Shen, Warren Toomey, Stephen Tu, and Zouchangwei.
2010-08-31 20:13:20 +00:00
2007-08-24 20:28:21 +00:00
The code in the files that constitute xv6 is
2014-08-28 21:28:40 +00:00
Copyright 2006-2014 Frans Kaashoek, Robert Morris, and Russ Cox.
2006-09-07 20:28:53 +00:00
ERROR REPORTS
2006-09-03 15:10:33 +00:00
If you spot errors or have suggestions for improvement, please send
2007-08-29 18:18:57 +00:00
email to Frans Kaashoek and Robert Morris (kaashoek,rtm@csail.mit.edu).
2006-09-07 19:37:16 +00:00
2007-08-29 18:18:57 +00:00
BUILDING AND RUNNING XV6
2006-09-07 20:06:20 +00:00
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
2014-08-28 21:28:40 +00:00
binaries. See http://pdos.csail.mit.edu/6.828/2014/tools.html.
2006-09-07 20:06:20 +00:00
Then run "make TOOLPREFIX=i386-jos-elf-".
2014-08-28 21:28:40 +00:00
To run xv6, install the QEMU PC simulators. To run in QEMU, run "make qemu".
2006-09-07 20:06:20 +00:00
To create a typeset version of the code, run "make xv6.pdf". This
requires the "mpage" utility. See http://www.mesa.nl/pub/mpage/.