Jump to content

Template:Teaching OS

From Wikipedia, the free encyclopedia

xv6 differs from other operating systems being very small to be covered in a semester (especially compared to Minix or Pintos), by kernel type (xv6 monolithic vs Minix microkernel vs Nachos user-space simulated), and by having more of modern techniques (for example, Xinu lacking paging and virtual memory).

System Lines of code Kernel type Language Hardware environment Lacks (vs others)
xv6 ~10k Monolithic C x86 / RISC-V POSIX layer, user-space drivers
Pintos ~25k Monolithic C x86 (typically under QEMU/Bochs) SMP support, user-space drivers
Nachos ~15k No kernel. User-space OS simulator C++ MIPS simulator Real hardware, paging, SMP
Minix ~100k+ Microkernel C x86
Xinu ~10k Monolithic C x86 / ARM Paging, VM, SMP