ハロウィーン文書へのコメント

吉山あきら(yosshy@debian.or.jp)




(山形コメント:ハロウィーン文書の記述の不十分な点や見落とし、誤りについて、Linux の有力配布パッケージ Debian を日本語化している Debian JP の吉山さんが、内容の誤りや補足をしてくれたので、ご紹介しよう。やんなきゃと思ってたところへ渡りに船。ありがとうございます。ぼくが付け加えることは何もないくらい。

 なお、この Debian 、文中では Slackware や SuSE なんかといっしょに「じり貧」とか書かれていたが、まったくのウソ。著者は商業パッケージに目がいってしまうようだけれど、ESR もコメントしているとおり suSE は健在だし、Slackware も一時ほどではないけれど、まだまだ愛好者は多い。あまり世話焼きでない分、ユーザが自分で何をやってるのかコントロールしやすい点で評価されている。また Debian も、パッケージの扱いが先進的で、しかも全部フリーなので根強い人気を誇る。

 以下、緑で書かれているのは吉山さんのコメント。また、かなり蛇足ばっかながら赤字は山形の追加コメント。それ以外の黒字は基本的には原文からの引用となっている。またコメントは字下げが入ってるから、それでもわかるはず。)



 原文に対する最新の技術的・マーケティング的な情報を記述してみ ました。ご参考頂ければ幸いです。



1. 技術情報



●ビデオドライバはカーネル内には置かれていないことに注目

 カーネル 2.1.x では、GGI プロジェクトの成果が採り入れられています。こ のプロジェクトは Linux/x86 や Linux/Alpha に標準フレームバッファ API を提供するための低レベルグラフィックデバイスドライバの実装を目指してい るので、2.1.x では上記の記述は必ずしも当てはまらない事になります。また、 同じ Linux カーネルでも、Linux/m68k, Linux/ppc, Linux/Sparcでは元々、 低レベルグラフィックデバイスドライバがカーネルに実装されています。更に、 「仮想フレームバッファ」という標準 API を Linux に実装しようとした経緯 もあり、この辺の機能がどのぐらい実現されているかは興味の尽きないところ です。

→2.1.127 の付属文書 ~linux/Documentation/fb/framebuffer.txt より

0. Introduction
---------------

The frame buffer device provides an abstraction for the graphics hardware. It represents the frame buffer of some video hardware and allows application software to access the graphics hardware through a well-defined interface, so the software doesn't need to know anything about the low-level (hardware register) stuff.

The device is accessed through special device nodes, usually located in the /dev directory, i.e. /dev/fb*.

 つまり、GGI を取り込んでできたこのフレームバッファ API によってハー ドウェアが抽象化され、アプリケーションがハードウェアの差異を意識しな くても済むようになる、という事です。事実、フレームバッファを用いた X サーバはバイナリが1つしかありません。何より脅威なのは、グラフィック アクセラレータドライバのメーカがバイナリとしてドライバを配付する事が 可能なことです。実際、そうした前例もあります。



●バイナリ互換性、バイナリの非互換性:Netscape Communicator

glibc2 版の Communicator は一般に配付されています。


●商業 Linux ISV、バイナリ UNIX 互換性、珍しいことに {}中のレイモンドコメント
・{著者は混乱している。Linux は上記のいずれともバイナリ互換性はない。  ソースコンパチである}

Linux/SPARC は SPARC 版 SunOS 4/5、Linux/MIPS は SGI IRIX、Linux/x86 は(iBCS ドライバ経由で) SCO UNIX や XENIX 等、Linux/Alpha は Digital UNIX の、それぞれエミュレーション機能を持っているので、片方向ながらバ イナリの互換性があります(片利共生のようなもの)。もちろん逆は無理ですが。


●UI:フロッピーからディスクを読むといった単純作業でさえ、まずはターミナル  ウィンドウに入って、administrator としてログインして、ややこしい  "mount" コマンドを走らせる必要がある。

 administrator ではなく root(管理者ならまだ可)。
(山形コメント: NT の人だからつい administrator と書いてしまったのでしょう)
 それとは別に、Linux でもオンデマンドマウントを実現する仮想ファイルシス テム「supermount」を使用すると、リムーバブルメディアの抜き差しでマウン トする必要なしに(つまり MS-DOS/Windows と同様に)メディアの読み書きが可 能になります。もっとも、Official の機能にはなく、パッチの形で配付され ています。

# 最初に supermount を使用した時はショックでした。もはや UNIX とは言えない利便性に。

→他にも、自動マウントファイルシステム autofs、自動マウントデーモン amd 等が利用されています。また、setuid された mount 専用アプリケーショ ンもありますし、何より Linux では /etc/fstab のオプションでユーザに 特定のファイルシステムのマウント/アンマウントを許可する事ができます。 もっとも、mtools を使えばマウント作業すら不要ですが。


●ネットワーク:Caldera の OpenLinux インストーラは、DHCP ではなく BootP プロトコルを扱うクライアント・デーモンしか提供していないし、

寂しいです。Debian には DHCPサーバもクライアントも当然の事のように提供 されています。また、最近の RedHat も同様のようです。


●Linux vs. NT、入手の容易さと信頼性

加えて書けば、某社の NT サーバ用マシンは「メモリ保護例外を管理者にレポートする」機能を持っています。何の為の機能でしょ?


●Linux vs. SunOS/Solaris
・Lmbench OSベンチマークを使うと、Linux は x86 上でばかりか、何と Sun のハードウェア上でさえ、ネットワークやプロセス/コンテキストスイッチ回数、ディスク I/O などの点で、SunOS を上回る

2.1.x ではこのように変わるかも知れません。

  • ディスク I/O…更に Linux が差を広げる
  • コンテキストスイッチ回数…何と Linux が負ける

 コンテキストスイッチ周りのコードが、より安全性を求めて書き直されている 為、従来のカーネルよりは遅くなっている筈です。もしかしたら他の UNIX 系 OS より遅くなるかもしれませんが、それでもユーザにはその差異は分からな いでしょう。また、リアルタイム性を追求したパッチや研究もある(しかも複 数)ので、実際には問題になることはないと思います。



●Thin サーバ、コード保守
・組み込み機器の開発者は、新しい変更やフィックスがいつでも自分のシステ  ムに入れ込めると安心できる

もう一声欲しいところですね。「更に、自分で開発したコードを Linux コミュ ニティに反映させることができる」


●アプリケーションとGUIの混乱、Gnome
・野心的な試みではあり、CDEより革新的ではあるが、完成には程遠く、アプ  リケーションのサポートも弱い。

彼は見地が低いです。Gnome のサイトを覗くと、数日に1つはアプリケーショ ンが増えたりバージョンアップしたりしていますし、そのバージョンアップや ユーザ層も広がる一方です。ベースとなっている GUI ツールキット gtk+ 自 体がテーマ(Look & Feel の切替え)をサポートした事、IDE (統合開発環境) が用意された事もあり、今後はユーザの増加、アプリケーション開発が更に加 速されるでしょう。最新の RedHat や Debian にもバイナリパッケージが用意 されているので、来年度中には Linux はおろか FreeBSD や Solaris を始め とする主要な UNIX 系 OS の標準 GUI ツールキットの座を得る可能性もあり ますし、X Window System 自体にコントリビュートされるかもしれません。

(山形註:あと、文中にあった KDE も、最近はそのウィジェットである Qt ライブラリが次期バージョンからオープンソース化されることになって、いまより普及が進むでしょう)


●Linux の強み、Unix の遺産とコピーのすばやさ
・最近では、Linux は transmitfile() など NT っぽい機能まで盗むようになっ  ている

 2.1.x のシステムコールとしてこのような関数は用意されていません。ハロウィン文書 I の方に「transmitfile() のような」と書いてあるので、関数名自体は別のもののようです。どれかは分かりませんが。(山形註:これはたぶん、NT のほうにこういう関数があるんだろうと思います)

2. 視点についてのコメント


しかし、マイクロソフトの分析には Linux が得た(得る)ものが何か、とい う記述について明らかに不足している部分があると私は考えています。

 まず、ソフトウェアに関してですが、彼らは(マーケティング的な観点から) 確かに PC 用の実用的 OS 、MS-DOS を作り出し、それを世に広めました。例 えば、MS-DOS の優れた機能の1つとして、リムーバブルメディア利用の容易 さ、モジュール化されたデバイスドライバ機構など、メーカ/ユーザの両面の 利便性が挙げられるでしょう。これによって様々な企業によるハードウェア・ ソフトウェア文化が開化し、今日の PC 文化の礎になった事は紛れもない事実 です。

 ところが、彼らは今その逆を行っています。 OS だけならまだしも、オフィ ススイト、開発環境、データベース、ネットワークサービスの全てを自社で作 り、そのシェアを伸ばして各分野の競合他社の撲滅に乗り出しました。彼らは、 確かに一切の競合他社を Windows から追い出すつもりです。

 しかしながら、この戦略が成功するためには、他にスタンダードとなり得る OS がないという前提が必要です。乗り換えるべき OS があると、マイクロソ フトに Windows を追い出された連中は全て、生き残りをかけて新天地、代替 OS に集まってくるでしょう。代替 OS が1つであれば、その分パワーも集中 する事になりますので、十分マイクロソフトに対抗し得る勢力になります。新 天地には、彼らが 10 年前に見た素晴らしい未開の大地(マーケット)が広がっ ているからです。

 マイクロソフトが OS という自社の根本の利益を求めるなら、他の OS に塩 を送るような真似はしてはならないのでしょうが、短期的な利益を求める余り、 彼らは道を誤ってしまっています。彼らがこの事に気が付かない限り、2年程 で Linux、あるいは BeOS あたりの OS がビジネスユースに耐える OS となり かねません。Windows 用のソフトを作るのはもはやマイクロソフトだけ、そん な世の中が近いうちに来るかも知れません。

 また、ハードウェア的な観点も不足しています。

 かつて NT でサポートしていた MIPS や PPC (いずれは ALPHA も)等のアー キテクチャをマイクロソフトは捨ててしまいました。同様に、68k はアップル に捨てられてしまいました。SGI も MIPS を捨て、P2 マシンに走るといいま す。Sun は Sun3 までは 68k を使っていました。彼らが今手にしているもの はもちろん、彼らが捨ててきたものを Linux は全て拾っています。また、 Amiga、Atari、FM-Towns、PC-98x1 などのアーキテクチャ、286 までの PC/AT も(制限はかなり大きいですが) Linux は全て拾っています。捨てる神あれば 拾う神あり。Linux はコンピュータの「拾う神」と言えます。

 また、今ある PC が非力とは私には思えません。マルチタスク OS を動かす には十分な性能、かつてワークステーションと呼ばれた高級マシンと同等以上 の性能を持っています。これは、数多の PC-UNIX による Web サーバが何より の証明となるでしょう。しかしながら、マイクロソフトは今、更に複雑かつ巨 大な OS を作り上げようとしています。Windows2000 はソースコードで NT4.0 の約2倍の量があるといいますから(山形註:2 倍なんかじゃと てもきかない、という話を聞きましたが……)、ハードウェアに要求するスペックはそれ なりに大きくなるでしょう。1.5 倍で済むかも知れませんし、3倍になるかも しれません。こうなれば、今ある PC の多くが実用的に Windows を動かすこ とが出来ない事も考えられます。つまり、彼らが新しい OS を作り上げるとい う事は、今あるPCの多くを見捨てる結果となります。

 捨てられていたから拾う、ただそれだけなのですが、 OS として十分な機能 と、 OS を生かすアプリケーションがあるのならば、 OS を乗り換えようと考 える動きが出てもおかしくありません。彼らが捨てる、Linux が拾う……これな ら Linux のシェアが上がるのは無理のないことです。




ハロウィーン文書トップ  山形日本語トップ


YAMAGATA Hiroo (hiyori13@mailhost.net)