私は長年にわたってWindowsカーネル開発者として働いてきました。これでLinuxカーネルモジュールの開発を開始します。
まず、 kernel-devel
./usr/src/kernels/$(uname -r)
とKconfig
2つのファイルを除いて、多くのフォルダが空ですMakefile
。
Windowsでカーネルデバイスドライバを開発するには、必要なすべてのヘッダーファイルを含むインクルードフォルダに関連付ける必要があるライブラリを含むlibフォルダのみが必要です。
Linuxでは、役に立たないようなフォルダがなぜそんなに多くあるのか理解できません。
説明がありますか?
答え1
kernel-devel
Fedora およびその他の Red Hat 派生パッケージのパッケージ完全なカーネルソースコードが含まれていません。は、ドライバの開発に必要なパブリックインターフェイスとmakefileヘッダーです。ほとんどのヘッダーは、/usr/src/kernels/$(uname -r)/include/
一部のアーキテクチャ固有のヘッダー(x86など)にあります/usr/src/kernels/$(uname -r)/arch/x86/include/
。
そしてディレクトリは役に立ちKconfig
ませんMakefile
。完全なカーネルソース(通常はドライバ開発には必要ありません)がないため、画像全体を見ることはできません。