オープンソースは何が“オープン”なのか?

山田洋(テンアートニ)

2006-07-10 15:15

はじめに

 皆さんは普段何気なくPCを使ってインターネットにアクセスしたり、ゲームマシンでゲームを楽しんだりしているかもしれません。特に意識していないかもしれませんが、実際にはインターネットにアクセスするときに使うウェブブラウザとか、ゲームソフトのようなソフトウェアを使っていることになります。まずソフトウェアとはどのようにして作成されるかについて説明していくことにします。

ソフトウェアの作成

 少し専門的になってしまいますが、ソフトウェアが作られるまでの過程を紹介しましょう。ソフトウェアを作るためには、まずプログラムを書かなければなりません。プログラムを書くには、普段皆さんが話したり考えたりするのに日本語や英語があるように、特定のソフトウェアを書くのに適した「プログラミング言語」というものを使用します。

 プログラミング言語には、BASICやC言語などそれぞれに特徴があります。プログラミング言語を使って書いたものは「ソースコード」と呼ばれます。ところがソースコードを書いただけでは、まだPCやゲームマシンでは利用できません。ソースコードは「コンパイラ」(人間の理解できる言語をコンピュータの理解できる言語に翻訳するような作業をするソフトウェア)を使ってPCやゲームマシンが直接利用できるものに変換します。これを専門的には「ソースコードをコンパイルする」と言い、また変換されたものを「オブジェクトコード」と言います。

 またコンパイラや他のソフトウェアを動作させる環境を提供したり、ハードウェアの制御をしたりする一番基本的なソフトウェアとして「オペレーティングシステム(OS)」というものがあり、コンピュータには欠かせないソフトウェアとなっています。「Windows」とか「Linux」とか言われているものがPCで使われるOSの例となります。

オープンソースができるまで

 一昔前までのコンピュータ業界では、ソフトウェアを作成した会社が、そのソフトウェア製品を販売することにより利益を上げるという形態が一般的でした。こうしたソフトウェアを「商用ソフトウェア」といいます。この場合ソースコードを公開してしまうと他の会社がそのソースコードを参照して、同様なソフトウェアを作れることになってしまうため、通常ソースコードは公開されていませんでした。

 その後アメリカのAT&T(日本の電話会社に先駆けて分割された結果、今はソフトウェアを扱っていません)のベル研究所で「UNIX」というOSが開発され、教育機関などに対して非常に安価に、一般企業に対してもかなり安価にソースコードを公開しました。この結果、ソースコードに触れることができる開発者がソースコードを修正することによりUNIXがいろいろなコンピュータ上で動くようになり、世界中広く行き渡りました。

 さらにこうした教育機関やメーカーの開発者が、UNIX自身にどんどん機能を追加していき、ひとつのソフトウェアが多数の開発者により拡張されていくという、ソフトウェア業界を変革する動きがありました。しかし、修正したソースコードのライセンスはAT&Tが保持するなどの制限があり、ソースコードを自由に利用できるという形態からはまだかけ離れたものでした。

 こうして広まったUNIXがもたらす環境が、ソフトウェア開発やネットワークに非常に優れていたため、UNIX上で大変多くのソフトウェアが開発されたり、インターネットの基礎が築かれたりしました。

オープンソース誕生

 こうした動きと並行して、開発したソフトウェアに対しソースコードを無償で公開し世界中の開発者で共有し、誰でもその開発に参加できるようにしていこうという動きが発生しました。このような形で発展してきたものが現在「オープンソース」と呼ばれるものであり、ソフトウェア業界に大変革をもたらすことになりました。

 前に触れたLinuxというOSもUNIXと互換性のあるOSを作りたいという、当時フィンランドで学生生活を送っていたLinus Torvalds氏の願いから生まれたもので、1人ではできないが、オープンソースとしてソースコードが公開され、世界中の開発者が参加したからできたものと考えられています。Linuxにより、PC本体だけ買えばUNIX互換のOSが無料で使えるということになり、はじめはソフトウェア開発に関わる人たちを中心に広まっていきましたが、Linux上で動作するソフトウェアも大量に公開されてきたため、一般的な人たちにも広く受け入れられるようになってきました。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

関連記事

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    「デジタル・フォレンジック」から始まるセキュリティ災禍論--活用したいIT業界の防災マニュアル

  2. 運用管理

    「無線LANがつながらない」という問い合わせにAIで対応、トラブル解決の切り札とは

  3. 運用管理

    Oracle DatabaseのAzure移行時におけるポイント、移行前に確認しておきたい障害対策

  4. 運用管理

    Google Chrome ブラウザ がセキュリティを強化、ゼロトラスト移行で高まるブラウザの重要性

  5. ビジネスアプリケーション

    技術進化でさらに発展するデータサイエンス/アナリティクス、最新の6大トレンドを解説

ZDNET Japan クイックポール

自社にとって最大のセキュリティ脅威は何ですか

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]