Top

おわりに

本書をお読みいただきありがとうございました!

本書では/dev/kvmを直接叩くところから、KVMを扱う既存のコードの改造してMBRのテスターを作成し、遺伝的アルゴリズムで遺伝的MBRを実現しました。

そもそも、自作OS自動化を考えるときに遺伝的アルゴリズムが適切なのかという議論もあります。言い訳というわけではない、、いや、言い訳ですが、今回は「フルスクラッチで作る!」シリーズの進捗が悪く、サブプロジェクト的にちょこちょこと進めていたことで何か本を出そうと切り替えました。/dev/kvmを直接叩く、というネタを少し前に自作OSをやる裏で進めていて、遺伝的アルゴリズムをシェルスクリプトで書く、というネタは自作OSを始める前にやっていたものです(どこにも公開していないのでHDDに眠っていたものですが)。

そんな「冷蔵庫の余り物で一品」的にはなんだかまとまった(?)上に、やはり最終的にはこれも自作OSになりました。

自作OSに限らず、プログラミングというものが目的のバイナリを得るための手法なのだとしたら、それは必ずしも人間がエディタとコンパイラを駆使して行う必要は無いのではないかと思います。普段私達がやっているプログラミングが、「1) たたき台を作る」・「2) 実行し結果を評価」・「3) 評価を踏まえて改善」、「以降は2)と3)の繰り返し」、という形でモデル化できるのならば、たたき台は乱数列で用意するか近しい挙動をする既存のものを使って、後は評価と改善の方法を自動化できればプログラミングという行為を全て自動化できることになります。

その意味では、一応、本書はこの3ステップを全て自動化できており、PoCとしては良いんじゃないかなと、思います。

# これがもっと上手く行くようになれば、自作OSも自分が頑張る他に自動化スクリプトが頑張ってくれる複数プロジェクト同時並列が可能に。。?なるといいなぁ


Top