システムコールから実行可能ファイル名を取得しますか?

システムコールから実行可能ファイル名を取得しますか?

だから私はLinuxでシステムコールを書いています。次のメッセージを印刷したいと思います。

printk(KERN_DEBUG "PROC_DEBUG [%s, %s]: %s", executable, current->pid, message);

ここで、実行ファイルは、システムコールを呼び出すために使用されるライブラリにソースファイルをリンクするときに生成される実行ファイルの名前です。したがって、「cc -o <program_name> sourcefile.c -L ./a -lfilename」コマンドを実行すると、<program_name>が印刷したい実行可能ファイルになります。 (pidは実行可能ファイルを実行しているプロセスのプロセスID、messageはシステムコールに渡したパラメータです。)

このコードを使用して実行可能ファイル名を取得しようとしています。

struct task_struct *task = get_current();
char task_com[TASK_COM_LEN];
get_task_com(task_com, task);

しかし、宣言されていない「TASK_COM_LEN」エラーが発生しますが、何が欠けていますか?

実行可能ファイル名を取得する簡単な方法はありますか? 「現在->実行可能」のようなものですか?オンラインで良い一致が見つかりません。

ベストアンサー1

current->com私が探していたのが私に思い浮かんだ。

おすすめ記事