フリーソフトやプロプライエタリなソフトウェアから「オープンソース」を区別しているのがライセンスである。GPL、LGPL、Apache License……数多く存在するライセンスだが、それぞれの違いについてまとめる。
前回解説したように、フリーソフトやプロプライエタリなソフトウェアから「オープンソース」を区別しているのがライセンスだ。ライセンスの中にも、Linuxが使っているGPL(GNU General Public License)や、Apacheに適用されているApache Licenseなどがあり、文字どおり山ほどある状況だ。しかし、いったいなぜライセンスがこんなに増えているのだろうか? 今回は、当世オープンソースライセンス事情を見てみよう。
オープンソースは概念なので、「オープンソースライセンス」というものはない。実際のソフトウェアに適用されているのは、GPL(LinuxやGNOME*など)やBSDライセンス(*BSDなど。詳細は後述)といった、法に準拠する体裁を整えた契約だ。このような契約はGPL・BSDライセンス以外にもたくさんあり、OSI(Open Source Initiative)という団体で承認されたものだけが「オープンソース」を名乗って良いことになっている。
オープンソースの定義は前記Webサイトで詳細に規定されているが、要約すると表1のようになる*。
前述したオープンソースの定義を満たしたソフトウェアがOSIに承認されれば、正式に「オープンソースソフトウェア」を名乗ることができる。2005年10月現在、58種類ものライセンスが承認されている。この中でも代表的なものの特徴と、利用に当たっての注意点を見ていこう。
代表的なのは、なんといってもGPLだろう。Linuxカーネルをはじめ、コンパイラやコマンド類などたくさんのソフトウェアがGPLを採用している。GPLは、前回説明したFSFが管理しているライセンスで、次のような特徴がある。
GPLで注意が必要なのが3の項目だ。特にGPLのソフトウェアをビジネス用途などで第三者に販売・提供する場合、その第三者からソースコードの開示要求があればそれに応じなければならない(図1、コラム1)。
誤解されがちなポイントだが、オープンソースのソフトウェアは第三者に再配布しない限りソースコード公開の義務はない。そのため、
といったケースではソースコードを公開する義務がない。
また、改造したソフトウェアの実行ファイル(バイナリ)を第三者に配布・販売したケースにおいても、ソースコードを要求できるのは直接配布・販売を受けた者に限られている。オープンソースソフトウェアを利用した製品を販売しているA社があったとして、必ずしもA社はソースコードを(Webサイトなど)公衆からアクセスできる場所に用意しなければならないわけではない。
これが問題になるケースでよく見かけるのは、Linuxを搭載したハードウェア(ルーターなどのネットワーク機器、および最近ではHDDレコーダー、携帯型音楽プレーヤーなど)を販売する場合だ。Linuxカーネルを改変していた場合、改変部分に割いた人的コストや知的財産は公有のものにしなければならない。
そういったコストをどの程度大きなものと見積もるかは意見の分かれるところだが、そもそもGPLのソフトウェアを利用することで、コスト削減など大きなメリットも享受しているはずだ。このあたりは、コストとメリットのトレードオフを計算に入れることが重要だ。
なお、コストとメリットを計算する際、考慮に入れてほしいのがGPL以外のライセンスだ。Linuxを使う代わりに、もっと制限のゆるい(多くの場合同等の機能を提供する)*BSDを利用することもできる*。オープンソースのライセンスの中でも、GPLは特に制限が厳しいので、ビジネスでの利用に当たっては注意が必要だろう。
GNU Network Object Model Environmentの略で、GUIのデスクトップ環境を実現するライブラリ(統合環境)の1つ。Window間の操作を統一し、ユーザーには使い勝手を、開発者には容易に高機能アプリケーションを作れる環境を提供する。
なお、商用利用などライセンスが問題になりそうなケースでは、オリジナルのライセンス文書を確認してほしい。
Linuxを利用する場合でも、カーネルを直接改造するのではなく「カーネルモジュール」として開発することでライセンスの問題が避けられるケースがある。
Copyright © ITmedia, Inc. All Rights Reserved.