# basic headers kernel/types.h kernel/param.h kernel/memlayout.h kernel/defs.h kernel/riscv.h kernel/elf.h kernel/date.h # entering xv6 kernel/entry.S kernel/start.c kernel/main.c # locks kernel/spinlock.h kernel/spinlock.c # processes kernel/vm.c kernel/proc.h kernel/proc.c kernel/swtch.S kernel/kalloc.c # system calls user/usys.pl kernel/kernelvec.S kernel/trap.c kernel/syscall.h kernel/syscall.c kernel/sysproc.c # file system kernel/buf.h kernel/sleeplock.h kernel/fcntl.h kernel/stat.h kernel/fs.h kernel/file.h kernel/virtio_disk.c kernel/bio.c kernel/sleeplock.c kernel/log.c kernel/fs.c kernel/file.c kernel/sysfile.c kernel/exec.c # pipes kernel/pipe.c # string operations kernel/string.c # low-level hardware kernel/uart.c # user-level user/initcode.S user/usys.S user/init.c user/sh.c # link kernel/kernel.ld