Linux 内核模块为什么不能在运行时处理兼容性问题? – 书生执笔画浮沉 – 博客园

背景 Linux カーネル開発に携わっている人はおそらく、Linux 5.7 以降、サードパーティ モジュールのバイパスを防ぐために、このことを知っているでしょう。 EXPORT_SYMBOL 内部機能へのアクセスを制限するため、 kallsyms_lookup_name() は輸出されなくなりました。同時に、eBPF も開発および成長していますが、ハードウェア ドライバーの開発や、カーネルの動作を一時停止してユーザー モード プログラムが判定結果を返すのを待つ必要がある特定のセキュリティ機能の実装など、従来のカーネル モジュールを置き換えることはできません。 これにより、私の中に疑問が生じました。従来のカーネル モジュールには互換性の問題があるのに、なぜ eBPF の開発中に従来のカーネル モジュールの互換性メカニズムをさらに改善できないのでしょうか。…