Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

4. 自作プロトコルスタックの移植(後編)

自作プロトコルスタックの残りのモジュール(IP・ARP・ICMP・UDP・TCP)を順次xv6へ移植していきます。

前編と同じく、micropsのコードをcpでコピーして必要な箇所だけ修正するスタイルで進めます。各モジュールは相互に依存していますが、net.cの初期化呼び出しをコメントアウトで制御することで、1モジュールずつ動作を確認しながら移植できます。

Note

本体への修正は、ip.hIP_TOTAL_SIZE_MAXをMTU(1500)に縮める点だけです(4.1で実施)。これによりip.cicmp.cudp.ctcp.cはいずれもそのまま移植できます。ip.cだけは、まだ移植していないARP・ICMPへの依存を一時的にコメントアウトし、後続の節で解除していきます。プラットフォーム依存のコード(タイマー・スケジューラなど)は必要になったタイミングでplatform/xv6-riscvに追加します。