Lab: networking

Lab: networking In this lab you will write an xv6 device driver for a network interface card (NIC). Fetch the xv6 source for the lab and check out the


Lab thread: Multithreading

Lab thread: Multithreading Uthread: switching between threads (moderate) In this exercise you will design the context switch mechanism for a user-leve


Lab cow: Copy-on-Write Fork

Lab cow: Copy-on-Write Fork Implement copy-on write(hard) Your task is to implement copy-on-write fork in the xv6 kernel. You are


Lab traps: Traps

Lab traps: Traps Backtrace (moderate) For debugging it is often useful to have a backtrace: a list of the function calls on the stack above the point


Lab pgtbl: page tables

Lab pgtbl: page tables Speed up system calls (easy) Some operating systems (e.g., Linux) speed up certain system calls by sharing data in a read-only


Lab util: Unix utilities

Lab util: Unix utilities sleep (easy) Implement the UNIX program sleep for xv6; your sleep should pause for a user-specified number of t