独自のシステムコールを実装したい。(下記リンク参照)
http://www.tldp.org/HOWTO/html_single/Implement-Sys-Call-Linux-2.6-i386/
ただし、新しいシステム コールを追加するには、カーネルのコンパイルが必要です。
Linux カーネルを再コンパイルせずに独自のシステム コールを実装する方法は?
独自のシステムコールを実装したい。(下記リンク参照)
http://www.tldp.org/HOWTO/html_single/Implement-Sys-Call-Linux-2.6-i386/
ただし、新しいシステム コールを追加するには、カーネルのコンパイルが必要です。
Linux カーネルを再コンパイルせずに独自のシステム コールを実装する方法は?
できません。
カーネルを再コンパイルせずにできることは、カーネル モジュールをビルドしてロードすることだけであり、カーネル モジュールは新しいシステム コールを追加できません。
できますよ。
つまり、実行中のカーネルにパッチを適用する必要があります。
新しい syscall を追加するには、少なくとも 2 つの方法があります。
sys_call_table
および) を展開し、任意のシステム コール エントリ ( など) でシステム コール制限チェック命令 (通常は x86 上)にia32_sys_call_table
パッチを適用します。cmp
system_call
ia32_system_all
call
は x86 上) にパッチを適用して、テーブルのコピーをポイントし、任意のシステム コール エントリでシステム コール制限チェック命令にパッチを適用します。詳細については、この回答を参照してください。
32 ビット アプリケーションはどのようにして 64 ビット Linux でシステム コールを行うのですか?
:)