Pintos is a small project to finish for system study. But it is very difficult for one linuxer to install it to their machine since it is way too old. The passage is mainly about installing pintos on archlinux with qemu.

Get Pintos

git clone git://pintos-os.org/pintos-anon

Install utility

  1. Since stropts.h no longer exists on modern linux, we must change dir to $ROOTDIR/src/utils and comment out #include<stropts.h> in squish-pty.c and squish-unix.c and lines 288-293 in squish-pty.c
  2. run make

Compile Pintos

  1. Open pintos-gdb and change GDBMACROS to the absolute of your gdb-macros.
  2. Compile the threads.
  3. Edit Make.vars. Change the last line to 'SIMULATOR = --qemu'
  4. Compile the kernel
  5. On line 103 of pintos file, change "bochs" to "qemu". On line number 257 change "kernel.bin" to the relative path so that kernels of all projects can be run.
  6. On line 362 of pintos.pm file, change loader.bin to the absolute path of it.
  7. Happy experimenting!