独自のWiFiドライバを提供すると推定されるIntel Webページを偶然発見しました。現在、Ubuntu 20.04を使用しています。
これらのデバイスドライバに特定の質問を保持しない(まだ質問に対する答えになることを願っています)私の質問は -
デバイスドライバが同じカーネル(5.2など)に基づいている場合、すべてのLinuxディストリビューション(UbuntuやCentOSなど)にインストールできますか?
もちろん、カーネルバージョンがページに提供されているバージョン要件を満たしていると仮定します。
答えがわからない理由は、多くのソフトウェアが特定のLinuxディストリビューション用に開発されるか、別々にリリースされ、パッケージマネージャを介してインストールできることを知っているからです。システムデバイスドライバも似ていませんか?
PS:リンクはページ。
答え1
それらはそうではありませんドライバー。
彼らファームウェアWiFiチップ自体の包装です。 WiFiチップには通常ファームウェア用の永久フラッシュメモリがないため、ドライバ(この場合、デフォルトではすべての最新のIntel WiFiチップ用のオープンソースドライバiwlwifi
)は、初期化時にチップにロードする正しいチップモデル固有のファームウェアファイルを必要とします。いくつかの使用のためのチップ。
通常、カーネルはファームウェアファイルの内容をまったく理解する必要はなく、適切な方法で関連ハードウェアにファイルの内容を埋めるだけです。
これらのファームウェアファイルは、すべてのLinuxディストリビューションにインストールできます。一般的に/lib/firmware/
。バージョンであり、現在チップの特定のWiFiサポートが「メインライン」Linuxカーネル用のドライバに追加されました。
したがって、特定のWiFiチップで指定されたレベル以上のカーネルバージョンを持つすべてのLinuxディストリビューションは、デフォルトでそのチップをサポートすることが保証されます。
ただし、一部のディストリビューション(特に「エンタープライズ」または長期サポートディストリビューション)では、古いカーネルを使用します。バックポート新しいバージョンのドライバが接続されています。この場合、このリストによれば、カーネルバージョンが十分に新しくないように見えても、distroがいくつかのハードウェアをサポートしていることがわかります。
場合によっては、問題のハードウェアが十分に一般的であるか重要な場合は、他の人が以前のカーネル用の更新されたドライバのPPAを作成またはインストールするのがやや簡単な追加またはアップグレードされたドライバを作成します。
カーネルバージョンとサードパーティドライバの互換性はより複雑になる可能性があります。古すぎる特定のカーネルバージョンの場合(たとえば、最新のカーネルに対して少し異なる操作を実行しようとした場合)、または新しい(たとえば、特定のカーネルバージョンで実装されているカーネル機能に依存し、それより古いカーネルでは機能しません。)
たとえば、コンパイルされたドライバモジュールを試してみてください。今後コンパイルされたカーネルを使用した主要な Spectre/Meltdown 回避策の実装後ろにそれ、あるいはその逆に、簡単にシステムが中断またはクラッシュすることができます。
ソースコード形式で提供され、特定のカーネルバージョンに合わせてコンパイルする必要があるドライバは、プリコンパイルされた形式で提供されているドライバよりも柔軟性がありますが、どちらの方法でもバージョン互換性の制限がある可能性があります。