私が知る限り、デバイスドライバはLinuxカーネルにあります。たとえば、GNU / LinuxディストリビューションAとGNU / LinuxディストリビューションBが同じカーネルバージョンを持っているとします。これは、同じハードウェアサポートがあることを意味しますか?
答え1
最も簡単な答えは「いいえ」です。
同じカーネルバージョンのドライバサポートはコンパイル時に設定可能で、モジュールのロードも可能です。したがって、ディストリビューションでサポートされている物理デバイスは、コンパイルされたデバイスドライバに含まれるデバイス、デバイス用にコンパイルされたロード可能モジュール、および実際にインストールされているモジュールによって異なります。
ディストリビューションに付属のカーネルにデフォルトで含まれていないデバイスもあります。最近は問題ありませんでしたが、自宅でLinuxを使い始めたときにSuSEを選択しました。 RedHatと同じまたは類似のカーネルバージョンがありますが、SuSEには「すぐに利用可能な」ISDNドライバとパッケージが含まれています。 1998年)。
答え2
一部。
他の人が言ったこと(配布ごとにカーネルが異なるように構築されている)は技術的に正確ですが、Linuxカーネルはロード可能なモジュールをサポートしているため、ほとんどのディストリビューションはすべてのハードウェアサポートのサポートを構築することに注意してください。これは、ドライバが次のように構築されたために機能します。モジュールなので、カーネルをメモリにロードするときにオーバーヘッドはありません。唯一の費用は、十分なハードドライブスペースです。
(すでに述べたように)主な違いは、ファームウェアブロブなどの非フリーソフトウェアを処理する方法に関する各ディストリビューションのさまざまな戦略が原因です。
答え3
理由なしで:
ソースからカーネルをビルドすると、各ディストリビューションは、アクティブにするカーネル機能を選択するときに異なる選択を行います。たとえば、サーバーハードウェアに焦点を当てたエンタープライズディストリビューションは、多数のサウンドカードのサポートをたくさん提供するとは思わない。
カーネルに含まれているオープンソースLinuxドライバの場合でも、一部のドライバはまだベンダーから提供された(プライベートソース)ファームウェアに依存しています。展開ごとにこのコンテンツを含むポリシーが異なります。いくつかの例については、Debianを確認してください。無料ではないファームウェアパック。