2

Linux カーネルの do_execve_common で作成されようとしているプロセスのコマンド ラインを取得することはできますか? つまり、argv からコマンドラインを抽出して dmesg に printk する方法です。

次に、プロセスの pid と親 pid を取得することもできますか? この情報は do_execve_common のどこかで入手できますか?

これらのことはカーネル内でのみ行う必要があります。

4

1 に答える 1

3

do_execveを呼び出すときまでに、task_structのpid&real_parent&commフィールドはすでに初期化されていると思います。

したがって、カーネル関数getpid()、getppid()、およびget_task_comm()を使用して、必要なものを取得できます。これらの関数がLinuxカーネルバージョンにあるかどうかはわかりません。そうでない場合は、いくつかの同様の機能があるはずです。

于 2013-03-07T01:51:25.257 に答える