1. XV6ノート
  2. 環境
  3. 1. ビルドと実行
  4. 2. xv6.imgのビルド
    1. 2.1. ターゲットxv6.img
    2. 2.2. Makefile内の変数
    3. 2.3. ターゲットbootblock
    4. 2.4. ターゲットkernel
  5. 3. カーネルのロード
    1. 3.1. bootasm.S
    2. 3.2. bootmain関数
  6. 4. ページング機構の有効化
    1. 4.1. entry.S
  7. 5. カーネルの実行
    1. 5.1. main関数
    2. 5.2. kinit1関数
    3. 5.3. kvmalloc関数
    4. 5.4. mpinit関数
    5. 5.5. lapicinit関数
    6. 5.6. seginit関数
    7. 5.7. picinit関数
    8. 5.8. ioapicinit関数
    9. 5.9. consoleinit関数
    10. 5.10. ロック(spinlock, sleeplock)
    11. 5.11. iノード
    12. 5.12. バッファキャッシュとディスクの読み書き
    13. 5.13. uartinit関数
    14. 5.14. pinit関数
    15. 5.15. tvinit関数
    16. 5.16. binit関数
    17. 5.17. fileinit関数
    18. 5.18. ideinit関数
    19. 5.19. startothers関数とmpmain関数
    20. 5.20. kinit2関数
    21. 5.21. userinit関数
    22. 5.22. スケジューラとコンテキストスイッチ
  8. 6. fs.imgの作成
  9. 7. initの実行
  10. 8. shの実行
  11. 9. 参考リンク
  12. 10. 参考書籍

xv6ノート

2. xv6.imgのビルド

makeの実行