$(LD) -Ttext 0x100000 -e main0 -o kernel $(OBJS) -b binary bootother init
$(OBJDUMP) -S kernel > kernel.asm
+tags: $(OBJS) bootother.S init
+ etags *.S *.c
+
+PRINT = README\
+ types.h param.h defs.h x86.h asm.h elf.h mmu.h spinlock.h\
+ bootasm.S bootother.S main.c init.c spinlock.c\
+ proc.h proc.c setjmp.S kalloc.c\
+ syscall.h trapasm.S traps.h trap.c vectors.pl syscall.c\
+ buf.h dev.h fcntl.h stat.h fd.h fs.h fsvar.h fd.c fs.c bio.c ide.c\
+ pipe.c\
+ mp.h ioapic.h mp.c lapic.c ioapic.c picirq.c\
+ console.c\
+ string.c\
+
+print: $(PRINT)
+ a2ps --line-numbers=1 -M Letter $(PRINT) -o xv6.ps
+ a2ps --line-numbers=1 -M Letter $(PRINT) --toc -atoc -o xv6toc.ps
+
vectors.S : vectors.pl
perl vectors.pl > vectors.S
-This is the content of file README.
+xv6 is a re-implementation of Unix Version 6 (v6), which was developed
+by Dennis Ritchie and Ken Thompson. xv6 follows the structure and
+style of v6, but is implemented for a modern x86-based multiprocessor
+using ANSI C.
+
+xv6 is inspired by the following work by Lions about Unix version 6:
+
+- Lions' Commentary on UNIX' 6th Edition, John Lions, Peer to Peer
+Communications; ISBN: 1-57398-013-7; 1st edition (June 14, 2000). See
+also http://pdos.csail.mit.edu/6.828/2006/v6.html, which provides
+pointers to on-line resources for v6.
+
#include "fs.h"
#include "fcntl.h"
+/* The initial user-level program */
+
char *sh_args[] = { "sh", 0 };
int