質問

独自の OS を作成したいと考えており、カーネルを作成するという複雑な作業を一時的にスキップし、その間に Linux カーネルを使用して後で作業に戻りたいと考えています。ただし、現時点ではOSをクローズドソースとして提供したいと考えています。Linux カーネルにはどのようなライセンスが適用されますか? クローズド ソース OS でのリリースに使用することは可能ですか?

編集:私は Linux カーネルのソースを閉じることに興味はありません。それでもオープンソースとして提供するつもりです。オープンソース カーネルでクローズド ソース OS を使用できないか考えています。

さらに編集:OS とは、カーネル上で実行され、他のプログラムを起動するために使用されるシステムを意味します。確かに、クローズドソースの声明にカーネルを含めるつもりはありませんでした。

役に立ちましたか?

解決

もちろん、リンク先のコンポーネントのライセンスと互換性がある限り、Linux カーネル上に任意のクローズド ソース OS を作成できます。

もちろん、これには gnu C ライブラリ (または他の C ライブラリ) が含まれる可能性があります。ファイルシステムのメンテナンスやネットワークのセットアップなどを行うには、おそらく GPL であるコマンド ライン ユーティリティが必要になる場合もあります。ただし、それらを独自のスタンドアロン プログラムとして残しておく限り、問題はありません。

カーネル自体にリンクするもの (例:カスタム モジュール、パッチなど)は、カーネルのライセンスに準拠するために、オープン ソース GPL としてリリースする必要があります。

他のヒント

Linux カーネルは GPLv2 でリリースされており、クローズドソース OS の一部として使用できますが、カーネルとリリースされたすべての変更は GPLv2 のままにしておく必要があります。

編集:ところで、代わりに OpenSolaris などを使用することもできます。私の意見では (明らかに非常に主観的ですが)、作業がはるかに簡単で、CDDL の条件に従っている限り、希望に応じて変更をクローズドソースのままにしておくことができます。

「OS」が何を意味するのかをより具体的にする必要があると思います。それは決して明確な概念ではありません。カーネルが OS のすべてであると言う人もいます。「ls」などのシェル ユーティリティとコア ユーティリティは OS の一部であると言う人もいます。メモ帳などの標準アプリケーションは OS の一部であるとまで言う人もいます。

IANAL さんですが、Linux カーネルに独自のクローズド ソース プログラムをバンドルすることを妨げるものは何もないと思います。ただし、GPL ライブラリ コードを使用しないように注意してください (LGPL は問題ありません)。

私はあなたの動機に疑問を感じます。

Linux はライセンスとして GPL (v2) を持っているため、派生著作物はすべてオープンソースにする必要があります。

BSD を使用することもできます。そのライセンスは、派生作品で実行できることの制限が大幅に緩和されています。

ソースとコードから派生したすべての作業をオープンにしておく必要がありますが、カーネルを使用し、その上に独自のアプリケーション スタック (ほぼすべての GNU のもの) を作成する場合は、それをオープンする必要はありません。 。

GPL では、「派生」機能が機能すると言っています...したがって、拡張するのではなく、新しいコードを作成する場合は、問題ありません。実際、たとえば、GNU ツールチェーン、Linux カーネルを使用し、その上にクローズド ソースの独自のシステム (または単なる DE) を置くこともできます。

何かを変更したり、そこから派生したりするときは、それを開いたままにしておく必要があります。

これは GPL バージョン 2 なので、確かにそうかもしれません。 ない ソースを閉じます。

使用するファイルシステムがカーネル自体にリンクされる場合は、 そして 他の人に配布する予定がある場合、GPL はファイルシステムも GPL 化することを明確に要求しています。

そうは言っても:Linux と GPL 非互換ファイルシステムを合法的に接続する 1 つの方法は、 ヒューズ (ユーザー空間のファイルシステム)。これは、たとえば、GPL 非互換のプログラムを実行するために使用されています。 ZFS Linux 上のファイルシステム。ただし、ユーザー空間でファイルシステムを実行すると、パフォーマンスに重大な影響を与える可能性があります。

作成した拡張機能 (モジュール) やアプリケーションは常にクローズ ソースのままにしておくことができますが、カーネル自体はオープン ソースのままにする必要があります。

GPLv2 には、システムのテスト中に悪用できるあまり明白ではない側面があります。システムにアクセスできる人にソース コードをリリースするだけで済みます。GPLv2 では、プログラムのバイナリ/コンパイル済み配布物にアクセスできるすべてのユーザーに、ソース コードへのフル アクセスを与える必要があると規定しています。したがって、ソフトウェアの開発にお金を払っている企業内でのみソフトウェアを使用する場合は、ソース コードを他の世界に配布する必要はなく、その企業だけに配布する必要があります。

一般的に、カーネルのソースを提供する限り、そのようなことは許可されていると思いますが、確信が持てない点が 1 つあります。

通常の Linux システムでは、(GPL) カーネルと非 GPL 互換アプリケーションの間に、常に GNU libc が存在します。これは LGPL であるため、フリーではない派生作品が許可されます。さて、自由ではない libc がある場合、カーネルを直接呼び出し、カーネル ヘッダーも使用しているため、それは派生作品とみなされる可能性があります。

他の多くの人が以前に述べたように、*BSD を使用する方が良いかもしれません。

新しいオペレーティング システムの開発に真剣に取り組んでいて、まず動作するカーネルが必要な場合は、FreeBSD カーネルを検討することをお勧めします。Linux よりもライセンスがかなり緩いので、利用する価値があると思います。

私の2セントだけ…

私はMarkRの意見に同意しますが、誰もあなたに明白なことを述べていません。真剣に考えている場合は、この分野の専門知識を持つ弁護士に相談する必要があります。

それはGPLです。短い答え -- いいえ。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top