アカウント名:
パスワード:
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds
1月あればコアの部分は作れますよ (スコア:5, 興味深い)
Re:1月あればコアの部分は作れますよ (スコア:4, 興味深い)
ターゲットマシーンは新規基板だったんですが、そのため、 まず最初の3日ぐらいは、OSとは関係ない単純なループを 回るプログラムをROMに書いて、ちゃんとループするかを オシロスコープで見ながらチェックし、232Cポートから 文字列を吐かせてそれがちゃんと出力されるかをチェック しました。
次の2日ぐらいで、OSの骨組み部分を一通りコーディング しました。この時点ではまだ動かず中身のない関数とかが 多数存在する状態で、232Cをつかってちゃんと呼ばれるかを チェックしていたと思います。
次の3日ぐらいは init() { for (;;) idle(); } が1つの プロセスとして動作するようにOSのコーディングをデバッグ したかな?
4日間でデバッガーの原型(単にプロンプト を出して232Cの入力行をそのまま帰すのみ)の物を 作り、open() close() read() write() が動くように デバッグしながら、232Cをデバドラとして動くように 調整し、そのあとは1日に1個のペースで そのデバッガーからシステムコールを呼ぶようにしては カーネルのシステムコールの コードを書くというパターンで何個かシステムコールを 作りました。
これで、カーネルのコアの部分ができ上がったので、 次はアプリケーションを書きながら必要なデバドラを 追加していくというパターンで1~2ヶ月ついやし、 最後に、システムとしてプロセスの数が増えて 動作がスムーズでなくなったことでタスクス順位が いい加減だったことを思い出して、調整してでき上がり という感じでした。