Linux Standard BaseLinux Standard Base (LSB) は、複数のLinuxディストリビューションの共同プロジェクトであり、Linux Foundationを活動母体としてLinux系オペレーティングシステムの内部構造の標準化を行うものである。LSBはPOSIX仕様、Single UNIX Specification、その他いくつかのオープン標準に基づいて、特定の分野についてそれらを拡張している。 LSBの目標は次の通りである。
LSB準拠製品の認証手続きが定められている。認証はThe Open GroupがLinux Foundationの協力の下に行う。なお、Linux FoundationはFree Standards GroupとOpen Source Development Labsが合併して誕生した。 LSBには以下のような点が規定されている。
バージョン履歴
後方互換性LSBは、バイナリ互換で安定したソフトウェアベンダから独立したABIを作るよう設計されている。後方互換性を達成するために、それぞれのそれに続くバージョンは純粋に追加的なものとなっている。言い換えると、インタフェースは加えられるのみで、除去されない。LSBは、LSBからインタフェースが除去されるときのためにアプリケーション開発者に十分な時間を与えるため、インタフェース廃止ポリシーを適用している。 これは、開発者にLSB中の全てのインタフェースに頼ることを許し、驚きなしに変更を計画し、周知する時間のためのものである。インタフェースは、3つのメジャーバージョンか、約11年、"deprecated"とマークされた後にのみ除去される[1]。 LSB 5.0は、それ以前のバージョンとの後方互換性を壊した初めてのメジャーバージョンである[2]。 批判LSBはメンバー企業以外(特にDebianプロジェクト)からの入力を受け付けないことで批判されている。 例えば、LSBではソフトウェアパッケージの配布形式として LSB 準拠のインストーラか、制限された形態[1]のRPM形式を指定している[2]。DebianはRPMより以前からdebパッケージ形式を使っており、Debianの開発者はそのパッケージ形式がRPMより優れていて、LSBに準拠するためにパッケージ形式を変えるのは現実的でないと主張している。Debianのパッケージマネージャとパッケージ形式にはRPMには無い機能があり、逆にRPMにだけ存在する機能もある。従って、Debianのパッケージ形式をRPMにするのは簡単ではない。 これに対処するため、LSBではそのOS自身のパッケージ形式については特に規定せず、単に RPM を追加サポートすることでサードパーティーが任意のLinuxシステム向けにソフトウェアを配布できるようにするとしている。Debianは既にオプションでLSBをサポートしている(LSB 1.1を "woody" で、2.0を "sarge" で、3.1を "etch" でサポート)が、問題はそれだけでは収まらない。DebianはRPMパッケージをネイティブのパッケージ形式に変換する "alien" というプログラムを用意している。しかし、LSB側は「このことでDebianがLinux Standard Baseに完全準拠していることにはならず、LSB準拠と解釈するべきでない」としている。 また、認証テストスイートもバグが多く不完全であると批判されている。GNU Cライブラリ主要開発者のUlrich DrepperはLSBのテストスイートについて、バグのあるテストに合格するようにした場合、ディストリビューション間で非互換が発生する原因にもなるとしている[3]。また彼は、ディストリビューションのテストだけではアプリケーションの互換問題は解決されないと指摘し、アプリケーションのテストをしていない点を非難している。 以上挙げた点以外ではLSBは広く受け入れられている。 関連項目脚注出典
外部リンク
|