Skip to content

なぜこのOSはコケたのか V4の場合

oraccha edited this page Jan 14, 2013 · 1 revision

なぜこのOSはコケたのか/OS/omicronV4の場合

また〜りと書いて行きます.

「コケた」と書いてますが,何を持って成功で何をもって失敗なのかってことに関してあまりに無自覚だったのかもしれません.


  • 研究プロジェクトとして注力すべき点を見誤った?

    • 「OSを作る」こと自体が目的になってしまった.OSがアプリに提供するビジョンを示せなかった.
    • それはカーネル内に実装すべき機能だったのか?
      • UPCとかさんざんやった挙げ句,某氏談「やっぱりメッセージパッシングがきれいだよなぁ...」
    • 本当にコンパイラからスクラッチする必要はあったのか?
      • コンパイラが安定するまでかなりの時間が費された.また最適化が皆無に近く,性能評価での勝負を半ばあきらめてしまっていた.
  • アウトプットがない

    • (OS自体では)ジャーナル2本.
    • ソースコードが非公開
      • この辺に関しては,指導教官がプロジェクトとしての独立性を保ちたいという考えを持っていたという話も少し聞いたことがありますし,やっている学生もあまりオープンソースという意識を持っていなかったと思います.
      • Linuxgcc を開発環境として使っていたのであれば,そこからのフィードバックと言うもの思い付いたのかもしれませんが,あまりにも外界との接点がなかったような気もします.実際,私は Unix を食わず嫌いしてましたし.象牙の塔と言われればその通りだと思いますが,すべてを自分達で考え,実装するという経験は貴重だったと思います.しかし,今,自分が教官という立場ならばこのようなアプローチは採らないし,採れないでしょうね.


開発人数

毎年一人,多くて二人の学部4年生が投入.メンバの修士進学率はかなり高い(ほぼ100%?).

  • コアな開発者は三人ぐらい.

開発プロセス

ターゲットアーキテクチャの選定

最初のターゲットマシンは PC-98.開発環境は MS-DOS + go32

DOS/V 機に移行.

  • ブートローダの開発,カーネルの移植.
    • インタフェース部はメッセージパッシングと UPC の2バージョンが存在した.最初はファイルシステム,未などもメッセージパッシングで実装されていた.
  • デバイスドライバの開発,ウィンドウシステム未(V2(V3?)から)の移植.
  • セルフコンパイル可能に.

アプリケーション開発環境が整い始める.

  • TCP/IP の移植.
  • Java,スクリプト言語とのバインディング機構.
  • 分散協調システム(分散KJ法,電子研究ノート).
  • リアルタイムシステム(MPEG再生機構).

コメント募集. . #comment

Clone this wiki locally