2012-04-02 16 views
9

私はこのカーネルのことで非常に新しいです。私がしたいのは、新しいシステムコールをカーネルに追加するだけです。私はこのガイドラインに従っていた:http://hekimian-williams.com/?p=20Linuxカーネルで新しいシステムコールを追加する3.3

arch/x86/kernelのsyscall_table_32.Sファイルに問題がありますが、カーネルバージョン3.3のx86システムのファイルが見つかりません。新しく追加されたシステムコールのためにファイルを編集し、さらに1行追加する必要がありますか?カーネルに私の新しいシステムコールについて知らせるために何か他のことをする必要がありますか?どんな助けもありがとう。ありがとうございました。

答えて

7

3.3バージョンで新しいLinuxカーネルのAPIを追加する方法をずらすと思いますか? - 64ビット用OS

  • www.kernel.orgからカーネルコードを入手してください。

wgetのhttp://www.kernel.org/pub/linux/kernel/v3.0/linux-3.3.1.tar.bz2

  • それUpzip例えばフォルダ にXXX xvfjコマンド「タール」と:/ルート/カーネル タールxvfjのlinux-3.3.1.tar.bz2

  • 編集ファイル「/root/kernel/linux-3.3.1/arch/x86/syscalls/syscall_64.tbl」

新しい行を追加します。

312 64 husky1 sys_husky1

  • Eidtは「/root/kernel/linux-3.3.1/include/linux/syscalls.h」ファイル 新しい関数宣言

asmlinkage長いsys_husky1を(追加int fd); (私はのx86 CPUを使用しています)

  • は「/root/kernel/linux-3.3.1/arch/x86/kernel」の下に新しいCファイルを追加「#endifの」行の前に

    例:

  • 編集「/root/kernel/linux-3.3.1/arch/x86/kernel/Makefile」 「OBJ-Y + = husky.o」

  • 後藤新しい行を追加します。 /root/kernel/linux-3.3.1フォルダとrunコマンド " make -j8 "

関連する問題