Template:Teaching OS
Appearance
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 |
| This template's documentation is missing, inadequate, or does not accurately describe its functionality or the parameters in its code. Please help add, expand, or improve it. |