アカウント名:
パスワード:
デジタル用語辞典 [nifty.com] ただしOSをマイクロカーネル化すると、サブシステム間での呼び出しや、カーネルモードとユーザモード間の遷移のオーバーヘッドなどのために、従来の一体型のカーネルに比べると若干パフォーマンスが低下する。そのためWindows NTでは、カーネルモードにNT Executiveという中間的な層を設け、サブシステム呼び出し時のコンテキスト切り換えを抑える工夫をして、パフォーマンス低下をある程度補っている。 IT用語辞典 [e-words.jp] 当初のMachはまだ多くの機能を自身の中に抱え込んでおり、事実上モノリシックカーネルだったが、バージョンアップするたびに機能を外部に出し、そのたびにパフォーマンスが下がっていった。このため、いったん外に出した機能をカーネル空間に戻したり、ライブラリでエミュレートしたりすることを余儀なくされた。
ただしOSをマイクロカーネル化すると、サブシステム間での呼び出しや、カーネルモードとユーザモード間の遷移のオーバーヘッドなどのために、従来の一体型のカーネルに比べると若干パフォーマンスが低下する。そのためWindows NTでは、カーネルモードにNT Executiveという中間的な層を設け、サブシステム呼び出し時のコンテキスト切り換えを抑える工夫をして、パフォーマンス低下をある程度補っている。
当初のMachはまだ多くの機能を自身の中に抱え込んでおり、事実上モノリシックカーネルだったが、バージョンアップするたびに機能を外部に出し、そのたびにパフォーマンスが下がっていった。このため、いったん外に出した機能をカーネル空間に戻したり、ライブラリでエミュレートしたりすることを余儀なくされた。
結局、サービスを独立させると言っても無理があるのでしょう。 ちょうど企業の情報部門をアウトソーシングした時の利点と欠点 に似ているような気がします。「アウトソーシング」して良いこと ばかりあるわけではありません。
マルチプロセッサ環境で効率が上がると言いますが、これも口で 言うほど簡単ではありません。リソースの競合を制御するのは やはり至難の技のようです。BSD の SMP 対応の作業を見ている とそういう感じがしませんか。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー
富豪になったな (スコア:3, 興味深い)
必要なライブラリもでかくなってますし、種類も増えた。
また、富豪的プログラミングが可能になってビンボ臭さが消えてきたと思います。
perlが普及しだしたあたりから、KISSの思想は薄れたかなと。
大型のハイエンドマシンから、小型のラップトップ、いやマイコンに至るまで移植されて、
「何でもできるOS」を目指してどんどん開発されていった経緯がありますので、
多分これで方向性は間違ってないのだと思いますが。
カーネルに関してはいまだに、
マイクロカーネルを主流にする動きは噸座したままのようですね。
柔軟なモジュラー構造は採り入れるとしても、
空
UNIX vs. MULTICS (スコア:2, 参考になる)
Re:UNIX vs. MULTICS (スコア:0)
マイクロカーネル (スコア:1)
Re:マイクロカーネル (スコア:1)
今後のトレンドとしてマルチプロセッサ化が進みそうですが、
OSそのものをマルチスレッド化する、という方向になれば、
マイクロカーネルなOSの方が有利になってくると思います。
Re:マイクロカーネル (スコア:0)
Re:マイクロカーネル (スコア:1)
Mac OS XはMachベースのマイクロカーネル。FreeBSDサーバはカーネル空間に存在するが、これはco-locationと呼ばれるマイクロカーネル高速化のための技術。
Re:マイクロカーネル (スコア:0)
サーバをカーネル空間に置くのじゃ単にモジュール化された
モノリシックOSと区別できなそうだけど。
Re:マイクロカーネル (スコア:2, 参考になる)
Re:マイクロカーネル (スコア:0)
その上で、それはマイクロカーネルなのか? と。
# Machはマイクロカーネルではない、という説もありますし。
正しいマイクロカーネルの定義(あるいは条件)は何でしょう。
Re:マイクロカーネル (スコア:2, 参考になる)
結局、サービスを独立させると言っても無理があるのでしょう。 ちょうど企業の情報部門をアウトソーシングした時の利点と欠点 に似ているような気がします。「アウトソーシング」して良いこと ばかりあるわけではありません。
マルチプロセッサ環境で効率が上がると言いますが、これも口で 言うほど簡単ではありません。リソースの競合を制御するのは やはり至難の技のようです。BSD の SMP 対応の作業を見ている とそういう感じがしませんか。
Re:マイクロカーネル (スコア:1)
これを見ていて、なおかつ、MacOSX とか WindowsNT があっさりとSMPに対応しているところを見ると、
「OSをSMPに対応させるなら、マイクロカーネルの方が有利なんだな」
と思ってしまいます。
#外から見えてないだけで、 apple や MS の 社内では SMP 対応に苦労していたのかもしれませんけど…
Re:マイクロカーネル (スコア:1)
>「OSをSMPに対応させるなら、マイクロカーネルの方が有利なんだな」
>と思ってしまいます。
で、使いたい機材が XP 対応などと言いつつドライバが SMP に対応していなくて泣く、と。
OS のコアの部分での SMP 対応やスレッドの実装などと同時に、
現実世界との接点であるドライバの実装で苦しんでる部分も多いのではないかと。
Re:マイクロカーネル (スコア:0)
デジタル用語辞典 [nifty.com]より
> 従来のOSでは、カーネル内部に置かれていたような数多くのサービスを、
> なるべくカーネル内部から分離/独立させて、カーネル部分のサイズを可能
> なかぎり縮小したOS。
何をもって分離/独立というかですね。カーネル空間に置いたまま
Re:マイクロカーネル (スコア:1)
つまり構造はマイクロカーネルなんでしょうが、BSDサーバー自体の作りはあんまりカーネルから独立してなくて、モノリシックな作りになっているんじゃないでしょうか。
-----------------
#そんなワタシはOS/2ユーザー:-)