アカウント名:
パスワード:
「システムコールがC++言語の抽象クラス」ということは、システムコールを持つわけで、マイクロカーネルではなくてモノリシックカーネルなのかなぁ?
概要とリファレンスマニュアルに軽く目を通しただけなので実際のところは不明ですが要約すると、
ただ、感想としてはプラトニックすぎる気がしますね。COM実運用上の最大の問題、dll hellをそのまま再燃させているし、COMでいうインプロセスサーバやサーバプロセスの動的Invokeがなければ柔軟性が乏しい気がします(あったらすいません)。あと、研究用ということで割り切っているのだと思いますが、システムのプリミティブの操作やインターフェイスポインタ生成にセキュリティ関係の引数が無いのは気になります。
しかし、もし、カーネルモジュールでのオブジェクト公開(つまりはAPIの追加)もユーザープロセスのそれと同程度の簡単さでできるなら組み込み向けにはいいかもしれません。もちろん、モジュールの動的ロードやカーネル関数の充実が前提でしょうが。
気になるけど、今、ソースを読む暇が作れない。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
最初のバージョンは常に打ち捨てられる。
情報なし (スコア:2, 参考になる)
「システムコールがC++言語の抽象クラス」ということは、システムコールを持つわけで、マイクロカーネルではなくてモノリシックカーネルなのかなぁ?
Re:情報なし (スコア:4, 参考になる)
概要とリファレンスマニュアルに軽く目を通しただけなので実際のところは不明ですが要約すると、
- カーネルはAPIとして幾つかのクラスのクラスファクトリを登録している。ユーザープロセスはこれらクラスのインスタンス生成・操作(インターフェイスとして)をさせることができる。
- 各ユーザープロセスもプロセスが生きていて、クラスファクトリを登録している間、自分を含むすべてのユーザープロセスから登録したクラスのインスタンス生成・操作(インターフェイスとして)をさせることができる。呼び出し元ユーザープロセスから見ればAPI呼び出しも他プロセスのインスタンス操作も同等。
- インターフェイスはCOM風にC++クラスの仮想関数呼び出しとして行われる。
- 引数・戻り値のマーシャリングはCOMアウトプロセスサーバのようにまる見せにしない。
といったところでしょうか。ただ、感想としてはプラトニックすぎる気がしますね。COM実運用上の最大の問題、dll hellをそのまま再燃させているし、COMでいうインプロセスサーバやサーバプロセスの動的Invokeがなければ柔軟性が乏しい気がします(あったらすいません)。あと、研究用ということで割り切っているのだと思いますが、システムのプリミティブの操作やインターフェイスポインタ生成にセキュリティ関係の引数が無いのは気になります。
しかし、もし、カーネルモジュールでのオブジェクト公開(つまりはAPIの追加)もユーザープロセスのそれと同程度の簡単さでできるなら組み込み向けにはいいかもしれません。もちろん、モジュールの動的ロードやカーネル関数の充実が前提でしょうが。
Re:情報なし (スコア:2, 参考になる)
Re:情報なし (スコア:1)
気になるけど、今、ソースを読む暇が作れない。
Re:情報なし (スコア:0)