DEPARTMENT OF COMPUTING

CS 3400: Operating Systems

“xv6” refers to the xv6 commentary book, our guide to the xv6 operating system source code.

“3ep” refers to Operating Systems: Three Easy Pieces, our (free) primary text.


Resourses

Kernels

  1. Hello, world

Linux users

To install the tools you need for this class using Debian:

sudo apt install git build-essential gcc-riscv64-linux-gnu gdb-multiarch qemu-system-misc

Note: make sure you have an up-to-date Linux distribution. Notably Ubuntu 22.04 is too old.

MacOS users

Homebrew is a command line tool for MacOS for installing open source software. If you do not already have it, install it here:

From the terminal, start by adding the repository that contains the RISC-V development tools:

brew tap riscv-software-src/riscv

Next install the tools:

brew install riscv-gnu-toolchain

To install qemu:

brew install qemu

If you have an Intel-based Mac, you may also need to run:

brew install riscv-tools

Installing xv6

To start with a fresh instance of xv6:

git clone https://github.com/mit-pdos/xv6-riscv.git

In the main directory you should be able to run make qemu to build and launch the system. Typing ctrl-a x will quit.

Last Updated 08/25/2026