IT業界、40年やってます (老人の独り言) 

現在68歳、IT関連で勉強したい事が盛りだくさんで、目移り状態です(^o^)

MIT 6.828: Operating System Engineering 2018年秋 で使われた教材OS xv6 を勉強始めます・・・いまさら(笑)

最新の教材 OS は CPU に RISC-V が使われていて、そのアセンプラの勉強とかは、やはり x86 とは資料や教材の数が多く自分に合った物が選べるので、古いですが x86 で勉強します。

 

まず教科書は 2018年のコースで使われた 

xv6
a simple, Unix-like teaching operating system

https://pdos.csail.mit.edu/6.828/2018/xv6/book-rev10.pdf

平易な英語で書かれた100ページほどの PDF ファイルです。

 

あと、準備と演習が1~7まであります。

まず

 git clone https://pdos.csail.mit.edu/6.828/2018/jos.git lab

で演習ファイルを取得しておきます。

 

準備:Tools Used in 6.828

講座では Ubuntu を推奨してます。自分は Win10 WSL2 に Ubuntu 20.04 を入れて、その上で実習します。

a. WSL2 + GUI 構築   GUI が有ると便利です。

b. QEMU と vim  での GDB 環境

を参考にさせてもらいました。感謝です。

 

Lab 1: Booting a PC

まずここから。

   Part 1: PC Bootstrap

      Getting Started with x86 assembly   x86アセンブラの事始め

文書 The PC Assembly Language Book が200ページ位有るので、まずはそれから勉強ですね。

      Simulating the x86

      The PC's Physical Address Space

      The ROM BIOS

 

Part 2: The Boot Loader

Part 3: The Kernel

 

Lab 2: Memory Management

Lab 3: User Environments

Lab 4: Preemptive Multitasking

Lab 5: File system, Spawn and Shell

Lab 6: Network Driver (default final project)

Lab 7: Final JOS project

 

先は長い(^_^;) シルバーウィーク中は x86 のアセンプラを中心に勉強します。

 

P.S.

MIT は1990年 もう31年前ですが MIT の有る ケンブリッジのCambridge Centerというビルで3ヶ月ほど働いていたので、思い出の有る地です。