はじめに xv6は、MITのOperating System Engineeringのクラスで使われている教材で、UNIX V6 をx86ベースに作りなおされたシンプルなOSです。 xv6自体の解説書籍はありませんが、UNIX V6ならLions本やはじめてのOSコードリーディングが有名なので、 多少の差異があるものの、書籍片手にソースリーディングができます。 ただ、読むだけでは実際にどう動くかのイメージがなかなか掴めないので、ステップ実行できる環境を作ってみます。 以下の環境を前提に記述します。 Ubuntu 14.04 GCC 4.8.4 GNU gdb 7.7.1 QEMU 2.0.0 xv6のソース入手 Gitでリポジトリをクローンします。