パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

UNIXプログラミングはこの20年間で変わっただろうか」記事へのコメント

  • やっぱり機能拡張とともに、大きく重くなったんじゃないでしょうか。
    必要なライブラリもでかくなってますし、種類も増えた。
    また、富豪的プログラミングが可能になってビンボ臭さが消えてきたと思います。
    perlが普及しだしたあたりから、KISSの思想は薄れたかなと。

    大型のハイエンドマシンから、小型のラップトップ、いやマイコンに至るまで移植されて、
    「何でもできるOS」を目指してどんどん開発されていった経緯がありますので、
    多分これで方向性は間違ってないのだと思いますが。

    カーネルに関してはいまだに、
    マイクロカーネルを主流にする動きは噸座したままのようですね。
    柔軟なモジュラー構造は採り入れるとしても、
    • UNIX vs. MULTICS (スコア:2, 参考になる)

      本来、UNIX は小さく分かりやすいことを目標にしていたような 気がします。V7 のマニュアルはコンパクトで分かりやすい ですが、4.2BSD ぐらいになるとずぶの初心者には読めなかった ような気がします。今、UNIX とは何かを知ろうとすると、 どのドキュメントをどの順番に読
      • by Anonymous Coward
        世の中にはマンモスより巨大な恐竜のようなOSも存在しますが…
        • 大きくなり過ぎて絶滅しないように、小さくして見とおしよくし、 かつ効率的に動くようにしようとした動きもありました。 結果をどのように捕らえるかは異論もあるでしょうけど、結局、 マイクロカーネルは研究用、実験用のベースにしかなり得なかった のだろうと思います。カーネルを小さくしたため、どうしても オーバヘッドになり、
          • MacOSX で採用されてるMachはマイクロカーネルの成功例じゃないですか?

            今後のトレンドとしてマルチプロセッサ化が進みそうですが、
            OSそのものをマルチスレッド化する、という方向になれば、
            マイクロカーネルなOSの方が有利になってくると思います。
            • Mac OS X はマイクロカーネルじゃありません
              • いい加減なことを言わないように。

                Mac OS XはMachベースのマイクロカーネル。FreeBSDサーバはカーネル空間に存在するが、これはco-locationと呼ばれるマイクロカーネル高速化のための技術。
              • マイクロカーネルって何?

                サーバをカーネル空間に置くのじゃ単にモジュール化された
                モノリシックOSと区別できなそうだけど。
              • googleしただけですけど、リンクしておきます。

                デジタル用語辞典 [nifty.com]

                ただしOSをマイクロカーネル化すると、サブシステム間での呼び出しや、カーネルモードとユーザモード間の遷移のオーバーヘッドなどのために、従来の一体型のカーネルに比べると若干パフォーマンスが低下する。そのためWindows NTでは、カーネルモードにNT Executiveという中間的な層を設け、サブシステム呼び出し時のコンテキスト切り換えを抑える工夫をして、パフォーマンス低下をある程度補っている。

                IT [e-words.jp]

              • そういう状況はある程度しっています。
                その上で、それはマイクロカーネルなのか? と。
                # Machはマイクロカーネルではない、という説もありますし。

                正しいマイクロカーネルの定義(あるいは条件)は何でしょう。
              • 定義は、デジタル用語辞典の冒頭3つの段落で言われているような 定義でいいと思います。

                結局、サービスを独立させると言っても無理があるのでしょう。 ちょうど企業の情報部門をアウトソーシングした時の利点と欠点 に似ているような気がします。「アウトソーシング」して良いこと ば

              • by Anonymous Coward on 2004年06月04日 9時59分 (#562598)
                > 定義は、デジタル用語辞典の冒頭3つの段落で言われているような定義でいいと思います。

                デジタル用語辞典 [nifty.com]より
                > 従来のOSでは、カーネル内部に置かれていたような数多くのサービスを、
                > なるべくカーネル内部から分離/独立させて、カーネル部分のサイズを可能
                > なかぎり縮小したOS。

                何をもって分離/独立というかですね。カーネル空間に置いたままで独立といえるか、モジュール構造を取るモノリシックカーネルとどう区別するのか。

                サービスごとに独立したコンテキスト(スレッド)を割り当てるものをマイクロカーネルと呼ぶのなら比較的分かり易いかと思いますけど。
                # この意味でMachやWindowsNTがマイクロカーネルかどうかは知らないが
                親コメント

普通のやつらの下を行け -- バッドノウハウ専門家

処理中...