ARMデバイスが最新のLinuxカーネルに付属していないのはなぜですか?

ARMデバイスが最新のLinuxカーネルに付属していないのはなぜですか?

Raspberry Pi、Android携帯電話、ルーターなどのARMベースのデバイスが最新のLinuxカーネルに付属していないのはなぜですか?これは、単に独自のデバイスドライバのサポートが不足しているためですか?たとえば、GPU、DSPなどのオープンソースドライバが不足していますか?それとも、最新のカーネルバージョンを実行するにはいくつかの制限がありますか?

答え1

Raspberry Piにはコアはまったく含まれていません。ソフトウェアは含まれていませんが、一部のサードパーティの小売業者は事前にフォーマットされたSDカードを使用して購入できます(該当するカードは別途購入することもできます)。特にA / B / + pi用のバイナリGNU / Linuxディストリビューションがたくさんあります(Pi 2はARMv7なので、これは不要で、通常のARMディストリビューションを使用できます)。これらは主に既存の主流ディストリビューションに基づいています。同じバージョンのソフトウェアを使用してくださいとは別にカーネルはバニラではなく、いくつかの排他的な部品が含まれています。その最新バージョン4.1なのに、この文を書く時点の最新バニラカーネルと同じです。

しかし、公式カーネルと同様に、Piカーネルはディストリビューションとは無関係であり、通常のディストリビューションが必ずしも最新のカーネルを使用しないように、Pi中心のディストリビューションは必ずしも最新のカーネルを使用するわけではありません。

Androidでは、これらのカーネルにはより多くの排他的なコンテンツを含めることができます。基本カーネル自体それでも基本カーネルとは違うと思います。最新バージョンが何であるかはわかりませんが、Piよりもこの場合はもう一度確認する必要があるため、少し遅れてもおかしくなりません。 。

私が知っている実際のAndroidメーカーは、カーネルを頻繁に更新せず、デバイスを無限に更新できると約束しないため、特定の時点が経過すると更新を停止します。当初、頻繁に更新しない理由は、おそらく「故障していない場合は修正しないでください」からです。そのままにしておくよりもそうするのが危険です。

これは健全な態度です。消費者デバイスメーカーがkernel.orgに追いつこうとするのはクレイジーです。これはポイントではありません。 Linuxはオープンソースであり、開発が公開されています。カーネル開発者と同じ通信チャネルとgitリポジトリにアクセスできます。彼らは何かがリリースされるとすぐに誰もがアップグレードする必要があると思うので、そうではありません。開発は公的でオープンソースなので、そうです。独自のオペレーティングシステムは、それを製造している会社の完全に最新のカーネルに更新されず、数ヶ月かかることがあると確信できます。そして年後ろに - しかし、そこで何が起こっているのかわからないので、それに気づいていません。

これに関してLinuxカーネルの開発も注目に値する。展開とは無関係。厳密に言えば、一緒には機能しないので、新しいカーネルはAndroid、ARM、またはDebianにのみ配布されるように設計されていません。これらは独立したオブジェクトであり、何を使用するのか、何を使用しないのかを自分で決定できます。彼らは朝起きて「いいね、Torvaldsさんが4.2をリリースしました。続行するのがいいと思います」と言う理由はありません。

この関係の利点の具体的な例は、カーネル 4.2 がいくつかのバグを発見したとしても、リリース X はそのバグの影響をすぐに受けないことです。〜しない限りカーネルがリリースされるとすぐに盲目的に更新します。代わりに、リリースXは合理的なフィールドテストのために4.2まで待つことができます。問題がある場合はスキップして次のテストを待ってください。

ほとんどのエンドユーザーは、おそらく毎週オペレーティングシステムのカーネルを更新したくないでしょう。ディストリビューションは3.17.1を最初にリリースし、次に3.17.2、3.17.3をリリースしません。おそらく3.17.2と3.18.5がリリースされます。実際、これらのバージョン間の違いは、ほとんどのユーザーにとって大きな意味がないことです。だから迷惑なこと以外は意味がありません。

ルーターとAndroidデバイスにも同じロジックが適用されます。

関連情報