コンピュータシステム - 5.ソフトウェア - 5.オープンソースソフトウェア - 1.OSS の種類と特徴

Last Update : January 02 2021 16:00:22

     

a. OSSとは

オープンソースソフトウェア(以下 OSS )とは、「ソースコードがオープンになっているソフトウェア」のことを指すが、より正確には、OSI(Open Source Initiative)の「The Open Source Definition」によって定義づけられている。OSS のライセンス条件に関しては、以下に示すようなものが代表的なものとなる。
オープンソースソフトウェア(Open Source Software )とは、ソースコードが公開されているソフトウェアのことで、著作者の権利を守りながら、ソフトウェアの改変・再頒布を可能にしたもの。
OSSは以下の基準を満たす必要がある。

  1. 自由に再頒布できる
  2. ソースコードの入手が可能
  3. 派生ソフトウェアの作成・再頒布が可能
  4. オリジナルのソースコードの完全性を守る
  5. 個人やグループに対して差別しない。
  6. 利用分野の差別をしない(商用利用も)
  7. 再頒布に関して追加のライセンスを必要としない。
  8. 特定のソフトウェアに依存しない。
  9. 他のソフトウェアを制限するライセンスの禁止
  10. 技術的に中立でなければならない。


b. OSS に関するライセンス

OSS に関するライセンスには、3種類ある。

GPL
GPL(General Public License)は、ソースコードの公開を義務付け、再配布と改変の自由を保証したGNUプロジェクトで採用されているコピーレフトを実現するライセンス。
コピーレフト(Copyleft)とは、コピーライト(Copyright:著作権)を放棄するのではなく、著作権保有者が著作権を持ったまま、著作物および著作物を改変したものを利用すること・コピー・再配布・改変を制限しないということを決めている。

LGPL
強いコピーレフト(strong copyleft)を持つライセンスであるGNU General Public LicenseすなわちGPLとBSDライセンス・MIT Licenseのような緩やかなフリーソフトウェアライセンス(英語版)との妥協の産物として設計されている。

  • 社内など私的組織内部や個人で(private)利用するにあたってのソースコード改変、再コンパイルには制限がない。
  • LGPLで頒布されたプログラムを再頒布する際にはソースコードを公開する必要がある。
  • コンパイル時にライブラリAに(動的・静的に関わらず)リンクされる可能性のあるプログラムBのソースコードについてはLGPLを適用する必要は無く、その頒布の制限にも関与しない[注釈 6]。
  • ライブラリAにリンクしたプログラムBを頒布する場合、Bのライセンスにリバースエンジニアリングを禁止する条項を含めてはならない。(LGPLv2第6節、LGPLv3第4節)[注釈 7]
  • ライブラリAに静的リンクしたプログラムBを頒布する場合、Bのソースコードまたはオブジェクトコードの頒布に制限があってはならない。(LGPLv2第6節a、LGPLv3第4節d0)
  • ライブラリAを改変して作成されたライブラリA'を頒布する場合、A'のライセンスはLGPLまたはGPLである必要がある。

BSDL
BSDL(Berkeley Software Distribution License)は、無保証であることを明記し、著作権とライセンスの条文を表示することを条件とするライセンス規定。
この条件を満たせば、ソースコードをコピー・改変したプログラムは、ソースコードを非公開にして頒布することができる。
代表的なものとして、Apacheライセンスがある。

MPL
MPL(Mozilla Public License)は、ネットスケープコミュニケーションズ社とMozilla Organization社によって提唱され、コピーレフトを実現するライセンス。現在はMozilla Foundationによって開発されたソフトウェアに適用されている。
MPLが適用されたプログラムはソースコードを公開する必要がある。ただし、MPLが適用されたプログラムに独自に開発したソースコードを組み合わせてそのプログラムを頒布する場合、MPLが適用された部分のソースコードだけを公開する。
このライセンスでは、MPL,GPL,LGPL(ライブラリソフトに対するGPL)と3つのライセンス形態を選択して使うことができる。(トリプルライセンス)
トリプルライセンスされているコードの利用者は、再配布に際して、GPL、LGPLの中から任意のライセンスを選択するか、そのままトリプルライセンスを使い続けるかを選択することができる。

デュアルライセンス
1つのソフトウェアを異なる2種類(またはそれ以上)のライセンスの元で配布する形態を指す。
ソフトウェアがデュアルライセンスで配布される場合、その利用者はそのソフトウェアを利用または再配布するためにいずれかのライセンスを選ぶことができる。 ソフトウェアの権利者はライセンスを選択させる際に利用料を求めることもできる。 デュアルライセンスを選択する一般的な2つの理由は、市場細分化のためのビジネスモデルと、ライセンスの互換性を確保するためである。

Apache ライセンス
Apacheソフトウェア財団 (ASF) によるソフトウェア向けライセンス規定。
他のフリーソフトウェア向けライセンスと同様、Apache Licenseではユーザーがそのソフトウェアの使用や頒布、修正、派生版の頒布をすることを制限しない。
Apache Licenseは、頒布される二次的著作物が同じライセンスで提供されたり、フリーソフトウエア、オープンソースソフトウェアとして頒布されることを要求しない。要求するのは、ユーザーがそのソフトウェアにApache Licenseのコードが使われていることを知らせる文言を入れることだけである。従って、コピーレフトライセンスと異なり、Apache Licenseコードの二次創作物のユーザーには、フリーなライセンスが適用されない可能性もある。
ライセンスされたファイルそれぞれに元々ある著作権と特許権の記述はそのまま保持されなければならず、何らかの修正が施されている場合は、その旨を追加記述しなければならない。

ソース公開再配布改変伝播保証代表的OSS
GPLOKOKするなしLinux
LGPLOKOKするなしJBoss
BSD不要OKOKしないなしPostgreSQL
Apache License不要OKOKしないなしApache


     

www.it-shikaku.jp