私は Linux カーネル モジュールのプログラミングは初めてで、このトピックに関する多くの入門ガイドには、Linux の多くのバージョンと CPU プラットフォームで実行されるカーネル モジュールの構築方法に関する情報がほとんど含まれていません。私が見たほとんどのガイドでは、「Linux はバージョン間の ABI/API の互換性を保証していません」などと単純に述べています。ただし、他の OS はメジャー バージョンに対してこれらの保証を提供しており、ガイドは主に 2.7 (現在は少し古い) を対象としています。
現在、何らかの種類の ABI/API 互換性があるかどうか、またはコードのカーネル依存ビットを大量のプリプロセッサ ディレクティブを含むファイルに分離する以外に、バージョン管理を処理する標準的な方法があるかどうか疑問に思っていました。(また、2 番目のケースで使用すべき標準のプリプロセッサ シンボルはありますか?)