私は大きな問題を抱えています。「弾丸」を使い果たしたので、誰かが私を助けてくれることを願っています...
raspberryPI で linux-rpi-3.6.y カーネルを使用しています
私の問題を説明しましょう: 特定のプロセスの pid のすべてのファイルを閉じる sys_defclose という新しいシステムコールを作成し、ソースファイルを
linux-rpi-3.6.y/arch/arm/kernel;
次に、次のファイルを変更しました。
linux-rpi-3.6.y/include/linux/syscalls.h
linux-rpi-3.6.y/arch/arm/include/asm/unistd.h
linux-rpi-3.6.y/arch/arm/kernel/calls.S
新しいシステムコールを正しくインストールするため。
この後、次のようにクロスコンパイルしました
http://elinux.org/RPi_Kernel_Compilation
ssh 経由で新しいカーネル イメージ「kernel.img」を /boot raspberry のディレクトリに転送すると、モジュールをロードしない限り再起動します。syscall は正常に動作します。しかし、当然のことながら、モジュールはインストールされていません( lsmod は空です)...、から生成されたコンパイル済みモジュールをロードする必要がある手順に従うと、
make ARCH=arm CROSS_COMPILE=${CCPREFIX} modules
export MODULES_TEMP=~/modules
make ARCH=arm CROSS_COMPILE=${CCPREFIX} INSTALL_MOD_PATH=${MODULES_TEMP}modules_install
それらを raspberry の / ディレクトリに展開すると、init のロード時にエラーが発生します。では、どうすればこのモジュールを正しくロードできますか? オンラインで見つけたすべての可能なガイドに従いましたが、どれも機能していないようです。
誰かが私を助けてくれることを願っています。ありがとう