ウォンツテック

そでやまのーと

OS作成

MINIX本と詳解LINUXカーネルLINUXカーネル読解室でファイルシステムの勉強中。予定としてはExt3を実装してみようかと思ってます。当然全部いきなりやろうとすると挫折するのでまずはREAD,WRITEシステムコールの実装を目的とした必要最低限の機能を書いてみようかと。(難易度によりExt2もしくはMinix FSに変更するかもしれません)


最近思うのはネットワークOS、特にCiscoのようなIOSに代表されるルータOSって土台は何を使ってるんだろうと考えます。巷にあふれているネットワーク機器は大体はBSD系のOSを元にカスタマイズされているらしいですが、ルータOSってそんな汎用性要らないと思うんですよね。例えば仰々しいファイルシステムPOSIX準拠したようなKernelのAPI群ってルータOSには要らないと思うんです。ただ稼動実績、安定性を考えると一からルータOSを作成するより多少遅くても汎用OSであるBSD系をカスタマイズした方が安心感はありますね。


私の場合は完全に勉強が目的なのでUNIX系の汎用的なKernelを勉強しながら実装しつつ、それがある程度形になる前にとりあえずARP程度は出来るネットワークレイヤも書いてみたいですね。


※来週から2週間ほど、前々から構想を立てているJava+JavaScriptでのAjaxなサービスを実装予定ですのでSodex Kernelの開発は遅れそうです。