xv6 is a modern re-implementation of Sixth Edition Unix in ANSI C for multiprocessor x86/x86_64 systems.
Find a file
rtm 46bbd72f3e no more recursive locks
wakeup1() assumes you hold proc_table_lock
sleep(chan, lock) provides atomic sleep-and-release to wait for condition
ugly code in swtch/scheduler to implement new sleep
fix lots of bugs in pipes, wait, and exit
fix bugs if timer interrupt goes off in schedule()
console locks per line, not per byte
2006-07-15 12:03:57 +00:00
.cvsignore Changes to allow use of native x86 ELF compilers, which on my 2006-07-11 01:07:40 +00:00
asm.h oops 2006-06-22 15:28:09 +00:00
bootasm.S checkpoint. booting second processor. stack is messed up, but thanks to cliff 2006-06-22 01:28:57 +00:00
bootmain.c import 2006-06-12 15:22:12 +00:00
bootother.S stick mpstack in cpu structure 2006-06-26 16:40:43 +00:00
console.c no more recursive locks 2006-07-15 12:03:57 +00:00
defs.h no more recursive locks 2006-07-15 12:03:57 +00:00
dot-bochsrc Changes to allow use of native x86 ELF compilers, which on my 2006-07-11 01:07:40 +00:00
elf.h import 2006-06-12 15:22:12 +00:00
fd.c no more big kernel lock 2006-07-12 01:48:35 +00:00
fd.h file descriptors 2006-06-27 14:35:53 +00:00
ide.c no more recursive locks 2006-07-15 12:03:57 +00:00
kalloc.c i think my cmpxchg use was wrong in acquire 2006-07-12 11:15:38 +00:00
lapic.c and the file 2006-07-12 17:19:24 +00:00
main.c no more recursive locks 2006-07-15 12:03:57 +00:00
Makefile extract lapic code from mp.c 2006-07-12 17:00:54 +00:00
memlayout.h boot more than two CPUs, each on own initial stack 2006-06-24 22:47:06 +00:00
mmu.h import 2006-06-12 15:22:12 +00:00
mp.c extract lapic code from mp.c 2006-07-12 17:00:54 +00:00
mp.h timer interrupts 2006-06-28 16:35:03 +00:00
Notes no more recursive locks 2006-07-15 12:03:57 +00:00
param.h queue with disk requests 2006-07-10 19:06:48 +00:00
picirq.c timer interrupts 2006-07-05 20:00:14 +00:00
pipe.c no more recursive locks 2006-07-15 12:03:57 +00:00
proc.c no more recursive locks 2006-07-15 12:03:57 +00:00
proc.h no more recursive locks 2006-07-15 12:03:57 +00:00
sign.pl import 2006-06-12 15:22:12 +00:00
spinlock.c no more recursive locks 2006-07-15 12:03:57 +00:00
spinlock.h no more recursive locks 2006-07-15 12:03:57 +00:00
string.c timer interrupts 2006-07-05 20:00:14 +00:00
swtch.S Changes to allow use of native x86 ELF compilers, which on my 2006-07-11 01:07:40 +00:00
syscall.c no more recursive locks 2006-07-15 12:03:57 +00:00
syscall.h no more recursive locks 2006-07-15 12:03:57 +00:00
trap.c no more recursive locks 2006-07-15 12:03:57 +00:00
trapasm.S no more big kernel lock 2006-07-12 01:48:35 +00:00
traps.h timer interrupts 2006-06-28 16:35:03 +00:00
types.h import 2006-06-12 15:22:12 +00:00
ulib.c Changes to allow use of native x86 ELF compilers, which on my 2006-07-11 01:07:40 +00:00
user1.c file descriptors 2006-06-27 14:35:53 +00:00
userfs.c Changes to allow use of native x86 ELF compilers, which on my 2006-07-11 01:07:40 +00:00
usertests.c no more recursive locks 2006-07-15 12:03:57 +00:00
usys.S no more recursive locks 2006-07-15 12:03:57 +00:00
vectors.pl fix some trap bugs 2006-06-13 22:08:20 +00:00
x86.h i think my cmpxchg use was wrong in acquire 2006-07-12 11:15:38 +00:00