2003年12月13日土曜日

Linuxのすすめ ~ オープンソースソフトウエアの持つ意味 ~

本記事はKurume・Tosu Internet Conference
「The Journal of Internet」 Volume4,2000
に掲載していただいた記事部分です。

既に3年以上前の話ですが、改めて書いておきます。



1. はじめに


最近ではLinuxと言う言葉をご覧になった方は多いと思います。Linuxは日本語では「リナックス」とか「リヌクス」などと発音されることが多いですが、その実体はコンピュータのハードウエアの動作を司るオペレーティングシステム(以下OSと略します)の中核をなすカーネル(日本語で言えばまさに「核」)です。


こういうと非常に難しそうですが、「コンピュータ、ソフトなければただの箱」と言われるようにコンピュータ(ハードウエア)は、それを適切に動かすための手順を示したプログラム(ソフトウエア)がなければ動きません。
このソフトウエアのうちハードウエアに密接に関連している部分をOSと呼び、更にその中核がカーネルです。 ワープロや表計算ソフトと呼ばれるものは、直接コンピュータ(ハードウエア)を制御するのではなく、OSが用意する機能を呼び出します。呼び出されたOSが必要な処理を行うためにハードウエアを呼び出します。
パソコンと呼ばれる個人向けのコンピュータで多く使われているOSは、マイクロソフト社のWindowsやアップル社のMAC-OSと呼ばれるものですが、Linuxも利用者が増えてきています。
特に現在多く使われているのはWebサーバと呼ばれる用途です。皆さんがネットスケープナビゲータやインターネットエクスプローラなど、いわゆるWebブラウザでhttp://www.ktarn.or.jp」などのURLを入力してご覧になる時のサービスを提供するのがWebサーバです。
Webサーバはインターネットを通じて世界中からアクセスされることもあり、24時間365日サービスを停止することのない安定性が求められます。また、インターネットにさえ繋がっていれば誰でもWebでの情報発信をはじめることができるので出来れば安価にはじめられるものが求められます。
このような用途にピッタリと言うことでLinuxの利用がWebサーバを中心に広がってきているのが現在の状況だと言えます。 では、どのようなところがピッタリなのかと言うのは、後程ご説明致します。


2. Linuxについてもう少し

Linuxの歴史については、いろいろな書物やWebで公開されているもの(http://www.linux.or.jp
など)がありますので、そちらをご覧頂いた方が正確なので、詳細はご説明しません。 ただ、フィンランドのLinus Torvals氏が大学院にいるときにインターネットでlinuxの初期版を「公開」したのが始まりと考えていただければと思います。
ここで言う「公開」とは、コンピュータでそのまま動く実行形式のプログラムではなく、人間が書き記したソースコードというものです。 つまりどのような動作をしているのか、どういう作りなのかというのがコンピュータプログラムに詳しい人が見ればすぐに分かるものでした。L.Torvals氏は公開時に「改善案がある人は一緒にやりませんか?」と言う主旨の呼び掛けをしたこともあり、インターネット上の腕利きのプログラマの多くが参加してみんなで改良していったことで急速に機能や安定性が増していったのがLinuxの歴史の特徴です。
そして、この改良は現在も継続しているところがすばらしいところであると言えます。このようにソースコードが公開されており、自由に改良出来る形態で進化しているソフトウエア群は「オープンソースソフトウエア」と称されており、Linux以外にも多数のものがあります。


 


3. Linuxの利用拡大の理由

さて、そろそろ「LinuxがWebサーバなどの用途にピッタリ」と言う理由について考えてみたいと思います。


(1)Unixを源流にしている

Unix(「ユニックス」と言います)とは、パソコンよりも高価なワークステーションやサーバと言うハードウエアで主に用いられているOSの総称です。インターネットの歴史はUnixと密接に関わっており、インターネット上で用いられるデータ通信のプロトコル(日本語では「規約」つまり約束事です)であるTCP/IPは、主にUnix上で開発/進化を遂げました。

従って、Unixは何の苦もなくインターネット上で通信ができると考えて頂いて差し支えないと思います。 このUnixを源流にしているLinuxですから、インターネット上のサーバとして使うには充分な機能を持っています。


(2)ソースコードが公開されている

Linuxは前期の通り、コンピュータの動作を示したプログラムのもとであり人間が読み書きできる形式のソースコードが公開されています。逆に一般に販売されているソフトウエアは、ほとんどの場合ソースコードが公開されていません。
これはどういう意味を持つのでしょうか? 人間がつくり出すものに間違いがないなどと言うことはあり得ません。コンピュータソフトウエアについても残念ながら同様であり、そのような間違いはバグと呼ばれます。
バグが見つかったときには、どうすればいいでしょうか? 市販のソフトウエアに関しては、ベンダーからバグ修正版のフロッピーが送ってきたり(これは良心的な方です)、
ベンダーのWebサイトでバグ修正版のサービスパックと呼ばれるものが公開されて無償で入手できるようにされている ことが多いようです。 これらの修正版を持ってきて、手元のコンピュータのプログラムを入れ替えればなんとか一件落着となります。
しかし、いつも迅速にこれらのバグ修正版が公開されるとは限りません。 こういう場合に、ソースコードが公開されていれば、技術が利用者自身でバグの回避/修正をはかることができますし、お金があればソースコードを見せてソフトウエア開発会社に修正を依頼することができます。
更に、利用方法に応じて細かな修正(いわゆるチューニング)をすることも可能です。


(3)世界中に開発者が存在する

ソースコードが公開されているからこそ出来る話ですが、インターネットを通じて結ばれた世界各地に開発者がいます。

つまり、24時間誰かが開発に関与していると言うことになります。(年中無休かどうかは別ですが) また、一国の都合で片寄ったものにならないということが言えます。
上記の3点で代表させましたが、「中身が分かる」と言うことが最も重要なことではないかと考えます。 そのまま使うのも自由、自分の都合が良いように書き換えて使うのも自由、自分でバグ潰しをやるのも自由、お金を出してだれかに改造を頼むのも自由。
これらの自由がインターネットの自由と結び付いて、Linuxをはじめとするオープンソースソフトウエアが広く使われることになったのだと思います。


例えて言えば、「旅行会社おまかせのパック旅行」は市販のソフトウエアであり、「フリープラン」や「自前で旅程を考えてる旅」がオープンソースソフトウエアだと思います。
各旅館や旅費の内訳などを気にしないで良いパック旅行は、自分の希望とマッチすれば非常に楽ですが、良い景色に出会ったからといって寄り道は難しいですし、旅館のグレードをチョコッとあげようとすると面倒です。
各旅館や旅費の費用内訳を知る必要はありませんし、知ることも困難です。

逆に、自分で旅程を考える旅というのは、ぶらっと日程を変更することもできますし、貧乏旅にも一点豪華主義の旅行にも出来ます。そのかわり、自分で雇わない限りガイドはいませんし、途中でトラブルが発生したら自分で考えなければいけません。どちらがより楽しいかは、人によるので何とも言えませんが...


4. バラ色か?

ではLinuxなどのオープンソースソフトウエアの将来はバラ色でしょうか? これについては何とも言えませんが、私は決して暗くないと考えています。
なぜなら、コンピュータを「使う」「人たち」は決してお仕着せのパック旅行方式だけで満足できる方ではないと考えるからです。パックでは、「行く」と言うよりも「行かされる」ような感じですよね。
メーカおまかせパック商品は、取っつきやすくて楽にはじめられますが、ともすれば「使われる」感じが否めません。もっと味わおうとすると、「使う」ことが必要になると思います。このような向上心を持つのが「人」だと思います。
こういう人がいる限り自由に使いこなせるものが廃れることはないと思います。このような人たちで最も進んだコンピュータ使いたちがこぞってオープンソースソフトウエアを使う傾向に、今後も変りはないと思います。
また、以前は完全に自己責任であると言うべきであったオープンソースソフトウエアも、ベンダーの方でもいろいろなメニュー揃えをする上でサポートを進めていくものと思います。


5. 最後に

Linuxは単なるOSであり、オープンソースソフトウエアもコンピュータの中で動く単なるソフトウエアであり、決して万能のものではありません。

しかし非常に有用な道具になり得ます。使いこなせば使いこなすほど味も出てきて利用範囲が広がるところはインターネットと同じだと言えます。

逆に使い方を誤ると大変なことになるのも、切味の良い道具に共通的なことだと言えます。 どういう使い方に向いているか、どういう使い方をすればより良く使えるかというのは、先達に聞くのが一番です。

九州にもLinuxのユーザ会があり、不定期ながら集まって情報交換を行っています。久留米インターネットフェスティバルでも毎回協議会殿のご支援を頂きながら参加しています。

「何の集まりか良くわからん」とおっしゃらずに、次回のフェスティバルでもユーザミーティングをさせて頂く予定ですので、ちらっとでも覗いてみてください。
これからLinuxを使ってみようと言う方向けの内容も準備したいと思います。

是非その席でお会いしましょう。


0 件のコメント:

コメントを投稿