Linux 2.6.32.60 x86 カーネルに、タスク構造体に追加したフィールドに基づいてすべてのシステム コールをブロックできる機能を実装しようとしています。これは基本的に次の形式になります。
task_struct ts;
if(ts-> added_field == 0)
//do system call normally
else
//don't do system call
これを entry_32.S で直接行うべきか、それとも syscall テーブルを他の場所で呼び出す方法を変更できるかどうか疑問に思っていました。entry_32.S を直接変更する際の問題は、呼び出しを行っているタスク構造体にアクセスできるかどうかわからないことです。
助けてくれてありがとう!