показать имя процесса и pid в Debian - PullRequest
0 голосов
/ 20 марта 2012

Как я могу получить и показать имя и PID для текущего процесса в модуле ядра Linux? Мой код:

#include <linux/module.h>
#include <linux/init.h>
#include <linux/kernel.h>

MODULE_DESCRIPTION("Afiseaza PID si numele executabilului");
MODULE_AUTHOR("ololo");
MODULE_LICENSE("FREE");


static int print_on_init(void)
{
    struct task *cur_task;
    cur_task = get_current();
    printk(KERN_DEBUG, "Hello!\n");
    return 0;
}

static int print_on_exit(void)
{
    printk(KERN_DEBUG, "Goodbye!\n");
}

module_init(my_hello_init);
module_exit(hello_exit);

Ответы [ 2 ]

2 голосов
/ 20 марта 2012

Я не специалист по программированию ядра, но вы можете посмотреть, как получить текущий PID, например, в коде для exec().Кажется, существует структура под названием current, с помощью которой вы можете извлекать необходимые данные.Когда вы нажимаете на имя переменной в связанном браузере исходного кода ядра, вы получаете список других мест, где эта переменная используется.

0 голосов
/ 20 марта 2012

Вы можете использовать getpid () call

...