1. Linux とは何か

僕がヘルシンキ大学のリィナス・トルヴァドゥス、Linux カーネルの開発者で す。僕の英語が通じるかな?質問の時に、みんなの英語が僕に通じるとうれし いけど。(会場 笑)

僕はわいわいにぎやかな講演が好きだから、もし質問があったら、途中でも遠 慮しないで手をあげて質問してね。

まず、この講演を実現してくれた小野さんと小島さんにありがとう。さて、そ れではざっと今日何を話すつもりかを紹介しよう。

(OHP 1)
-----------------------
・What is Linux
・Design Issues
・Basic Design
・Development Cycle
・Kernel vs User Level
・Portability(DEC Alpha)
・Work in Progress
------------------------

僕の話は、Linux とは何か、ってところから始まるんだけど、この中で Linux をよく使っている人は?(多くの手があがる)

Linux について聞いたことの無い人は?(ちらほら手があがる)

なぜ、君たちはここにいるんだい?(会場 笑)

多くの人が知ってるようなので、「Linux とは何か」という話題は簡単に済ま せて、「Linux の基本デザイン」の話題を中心に話そう。

kernel のプログラムというのは、通常のプログラムとはどこが違うのか、と いうところから始めよう。この中でプログラマやプログラム、コンピュータ科 学を専門に勉強している人はどれくらいいるのかな?(ちらほら手があがる)

あんがい少ないね。じゃ、あまり細かい話よりも、今までに僕がやってきたこ と、これからやろうとしていることを中心に話してみよう。

(OHP 2)
---------------------------------------
What is Linux
- Unix clone
- Source Compatible with "UNIX"
- Binary Compatible
---------------------------------------

これが僕が「Linux とは何か」を説明するために使っているスライド。みんな 知ってることばかりで、あまり目新しいことは無いと思うけど。

「Linux」 は 「Unix クローン」、すなわち、Linux は 例えば BSD のカーネ ルとは違って(AT&T が持っていた)元々のUnix のソースライセンスは使わずに、 Unix とほとんど同じことができることを目指したカーネルなんだ。

IBM PC 互換機(クローン)が元々の IBM 機とよく似てるけど、IBM 機よりもずっ と性能がいいのと同じように、僕は Linux が元々の Unix よりも優れたもの になることを期待している(会場 笑)

「クローン」だからといって、全てがオリジナルと同じである必要はない。で も、僕は Linux を全く新しい OS にするつもりはなく、基本的には Unix の よいところを活かすように作った。例えば、マルチユーザー、ネットワーク、 メモリプロテクションなどなど。Linux には元々の Unix にない機能もいくつ か追加されているけれど、そのような部分は本当に必要なところだけに限って、 最小限にしようとしている。

Linux にとって一番重要なことは Unix と「ソース互換」だという点だろう。 Unix にはいくつかの仕様があるけど、Linux はそのうちの POSIX(Portable Operating System Standard)に基づきながら、Unix 使いのみんなが使いやす いように BSD や SYSV の機能を取りこんで拡張してきた。だから、BSD の世 界から来た人が Linux で全てが BSD と同じように動くからビックリしたとい う話もよく聞く。

「ソース互換」という点に加えて、僕たちはいくつかの機種との「バイナリ互 換」も追及している。例えば "DOS EMUlator" というプログラムがあって、こ れを使えば DOS のプログラムを Linux で動かすことができる。iBCS2 モジュー ルは 386 系の CPU 用の市販の Unix プログラムを動かすためのものだ。これ を使えば SCO Unix 用のプログラムを Linux で動かすことができるので、SCO 用の WordPerfect を Linux で使うこともできる。また、DEC Alpha 用の Linux では Digital Unix とバイナリ互換なので、Digital Unix 用のプログ ラムを Alpha Linux で動かすことができるはずだ。

最後に Linux で MS-Windows のソフトを動かすプログラムも開発中だ。WINE という名前で、まだ完成していないけど、いくつかの Windows 用のプログラ ム、例えば「ソリティア」(会場 笑)や「マインスイーパー」(会場 笑)といっ たプログラム、ある人によると、これが Windows で一番重要なプログラムだ そうだけど(会場爆笑)、これらは既に Wine 上で動いている。「Word」 のよ うなプログラムはまだ動いていないけど、多くの人が動かそうと作業中だ。

これが Linux の売上げを示すスライド。世界中にいる Linux ユーザーの数を 推測したグラフだ。

(OHP 3)
----------+---------------------------
1,000,000 |
  100,000 |                     |
   10,000 |                |
    1,000 |            |
      100 |       |
       10 |  |
----------+---------------------------
           1991   92   93  94  95

実際には、僕は Linux を売りあるいてるわけじゃないけどね。この図の縦軸 は対数表示になってるから、一つあがるごとに 10 倍になってるのに注意して。

1991 年にはたった一人の Linux ユーザーしかいなかった、すなわち僕自身、 でもその年のうちに、僕以外にも何人かの Linux ユーザーが誕生したので、 1991 年の終りには、おおむね 10 人くらいの Linux ユーザーがいたはずだ。

その後の Linux ユーザーは、この対数グラフで示すように、指数関数的に増 加している。数学を知ってる人はわかってるだろうけど、この直線を延してい くと、あと 2 年ほどのうちにはユーザーが 5000 万人に達し、その 2 年後に は、この星の人口と同じくらいのユーザー数になるだろう(会場 笑)

もちろん、こんなに増加し続けるはずはないけど、カッコいいグラフだよね。

さて、実際の「デザインについて」の話題に入ろう。