Name Date Size #Lines LOC

..12-May-2022-

.dir-locals.elH A D02-May-202286 54

.gdbinit.tmplH A D02-May-2022682 2824

.gitignoreH A D02-May-2022118 1716

BUGSH A D02-May-2022128 85

LICENSEH A D02-May-20221.1 KiB2519

MakefileH A D02-May-20228.2 KiB287210

NotesH A D02-May-20223.9 KiB12490

READMEH A D02-May-20222.2 KiB5140

TRICKSH A D02-May-20224.1 KiB141109

asm.hH A D02-May-2022754 1910

bio.cH A D02-May-20223.3 KiB14589

bootasm.SH A D02-May-20222.9 KiB8973

bootmain.cH A D02-May-20222.2 KiB9757

buf.hH A D02-May-2022326 1513

cat.cH A D02-May-2022589 4437

console.cH A D02-May-20225.3 KiB300248

cuthH A D02-May-2022934 4939

date.hH A D02-May-2022102 98

defs.hH A D02-May-20225.4 KiB191139

dot-bochsrcH A D02-May-202232.7 KiB739693

echo.cH A D02-May-2022198 1411

elf.hH A D02-May-2022755 4332

entry.SH A D02-May-20221.8 KiB6960

entryother.SH A D02-May-20222.7 KiB9480

exec.cH A D02-May-20222.5 KiB11594

fcntl.hH A D02-May-202296 54

file.cH A D02-May-20222.8 KiB158124

file.hH A D02-May-2022802 3828

forktest.cH A D02-May-2022764 5743

fs.cH A D02-May-202215.4 KiB671433

fs.hH A D02-May-20221.7 KiB5831

gdbutilH A D02-May-20225.6 KiB292270

grep.cH A D02-May-20221.9 KiB10888

ide.cH A D02-May-20223.5 KiB169118

init.cH A D02-May-2022649 3831

initcode.SH A D02-May-2022455 3325

ioapic.cH A D02-May-20222 KiB7649

kalloc.cH A D02-May-20222.1 KiB9765

kbd.cH A D02-May-2022925 5143

kbd.hH A D02-May-20223.5 KiB11396

kernel.ldH A D02-May-20221.4 KiB6550

kill.cH A D02-May-2022232 1815

lapic.cH A D02-May-20226 KiB230161

ln.cH A D02-May-2022264 1614

log.cH A D02-May-20225.5 KiB235164

ls.cH A D02-May-20221.5 KiB8673

main.cH A D02-May-20223.2 KiB11776

memide.cH A D02-May-20221.2 KiB6144

memlayout.hH A D02-May-2022667 169

mkdir.cH A D02-May-2022327 2419

mkfs.cH A D02-May-20226 KiB298239

mmu.hH A D02-May-20226.4 KiB182124

mp.cH A D02-May-20223.1 KiB140110

mp.hH A D02-May-20222.1 KiB5746

param.hH A D02-May-2022760 1513

picirq.cH A D02-May-2022426 2011

pipe.cH A D02-May-20222.4 KiB122109

pr.plH A D02-May-2022581 3731

printf.cH A D02-May-20221.4 KiB8676

printpcsH A D02-May-2022367 157

proc.cH A D02-May-202211.4 KiB535358

proc.hH A D02-May-20222.2 KiB5935

rm.cH A D02-May-2022322 2419

runoffH A D02-May-20224.9 KiB247202

runoff.listH A D02-May-2022628 8169

runoff.specH A D02-May-20222.5 KiB10324

runoff1H A D02-May-20222.3 KiB10988

sh.cH A D02-May-20228 KiB494418

show1H A D02-May-2022135 41

sign.plH A D02-May-2022363 2012

sleep1.pH A D02-May-20221.9 KiB135110

sleeplock.cH A D02-May-2022812 5746

sleeplock.hH A D02-May-2022265 116

spinlock.cH A D02-May-20222.7 KiB12782

spinlock.hH A D02-May-2022315 126

spinpH A D02-May-2022240 1712

stat.hH A D02-May-2022294 1210

stressfs.cH A D02-May-20221 KiB5030

string.cH A D02-May-20221.4 KiB10687

swtch.SH A D02-May-2022542 3025

syscall.cH A D02-May-20223.4 KiB146115

syscall.hH A D02-May-2022485 2321

sysfile.cH A D02-May-20227.2 KiB445367

sysproc.cH A D02-May-20221.1 KiB9277

toc.ftrH A D02-May-2022512 149

toc.hdrH A D02-May-2022290 74

trap.cH A D02-May-20222.6 KiB11389

trapasm.SH A D02-May-2022486 3328

traps.hH A D02-May-20221.5 KiB3927

types.hH A D02-May-2022110 54

uart.cH A D02-May-20221.3 KiB7857

ulib.cH A D02-May-20221.2 KiB10791

umalloc.cH A D02-May-20221.6 KiB9177

user.hH A D02-May-2022922 4035

usertests.cH A D02-May-202233.9 KiB1,8041,560

usys.SH A D02-May-2022461 3229

vectors.plH A D02-May-2022989 4819

vm.cH A D02-May-20229.7 KiB395283

wc.cH A D02-May-2022820 5548

x86.hH A D02-May-20223.2 KiB184145

zombie.cH A D02-May-2022214 1510

README

1NOTE: we have stopped maintaining the x86 version of xv6, and switched
2our efforts to the RISC-V version
3(https://github.com/mit-pdos/xv6-riscv.git)
4
5xv6 is a re-implementation of Dennis Ritchie's and Ken Thompson's Unix
6Version 6 (v6).  xv6 loosely follows the structure and style of v6,
7but is implemented for a modern x86-based multiprocessor using ANSI C.
8
9ACKNOWLEDGMENTS
10
11xv6 is inspired by John Lions's Commentary on UNIX 6th Edition (Peer
12to Peer Communications; ISBN: 1-57398-013-7; 1st edition (June 14,
132000)). See also https://pdos.csail.mit.edu/6.828/, which
14provides pointers to on-line resources for v6.
15
16xv6 borrows code from the following sources:
17    JOS (asm.h, elf.h, mmu.h, bootasm.S, ide.c, console.c, and others)
18    Plan 9 (entryother.S, mp.h, mp.c, lapic.c)
19    FreeBSD (ioapic.c)
20    NetBSD (console.c)
21
22The following people have made contributions: Russ Cox (context switching,
23locking), Cliff Frey (MP), Xiao Yu (MP), Nickolai Zeldovich, and Austin
24Clements.
25
26We are also grateful for the bug reports and patches contributed by Silas
27Boyd-Wickizer, Anton Burtsev, Cody Cutler, Mike CAT, Tej Chajed, eyalz800,
28Nelson Elhage, Saar Ettinger, Alice Ferrazzi, Nathaniel Filardo, Peter
29Froehlich, Yakir Goaron,Shivam Handa, Bryan Henry, Jim Huang, Alexander
30Kapshuk, Anders Kaseorg, kehao95, Wolfgang Keller, Eddie Kohler, Austin
31Liew, Imbar Marinescu, Yandong Mao, Matan Shabtay, Hitoshi Mitake, Carmi
32Merimovich, Mark Morrissey, mtasm, Joel Nider, Greg Price, Ayan Shafqat,
33Eldar Sehayek, Yongming Shen, Cam Tenny, tyfkda, Rafael Ubal, Warren
34Toomey, Stephen Tu, Pablo Ventura, Xi Wang, Keiichi Watanabe, Nicolas
35Wolovick, wxdao, Grant Wu, Jindong Zhang, Icenowy Zheng, and Zou Chang Wei.
36
37The code in the files that constitute xv6 is
38Copyright 2006-2018 Frans Kaashoek, Robert Morris, and Russ Cox.
39
40ERROR REPORTS
41
42We don't process error reports (see note on top of this file).
43
44BUILDING AND RUNNING XV6
45
46To build xv6 on an x86 ELF machine (like Linux or FreeBSD), run
47"make". On non-x86 or non-ELF machines (like OS X, even on x86), you
48will need to install a cross-compiler gcc suite capable of producing
49x86 ELF binaries (see https://pdos.csail.mit.edu/6.828/).
50Then run "make TOOLPREFIX=i386-jos-elf-". Now install the QEMU PC
51simulator and run "make qemu".