c - 运行时在内核级别处理信息

标签 c linux kernel linux-device-driver

我正在开发一个 Linux 内核模块,它将处理为特定任务运行的所有进程。是否有可能知道名为“X”的某个进程是否仍在运行以及其当前状态是什么???

最佳答案

代码已经准备好了..你可以试试这个..

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

MODULE_LICENSE("GPL");
static int info_init(void)
{
    struct task_struct *iTask;
    for_each_process(iTask) {
            printk(KERN_INFO "Process Info \nName: %s\nState:%ld\n",iTask->comm, iTask->state);
    }
    return 0;
}

static void info_exit(void)
{
    printk(KERN_INFO "Tata Bye-bye from Anshul");
}

module_init(info_init);
module_exit(info_exit);

~

执行后运行

dmesg

命令,您可以看到所有进程名称及其状态。

关于c - 运行时在内核级别处理信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15263819/

相关文章:

linux - 修改拥塞控制窗口值

c - 如何在 c 中创建用户定义的数据类型,如下所示?

c - 递减 NULL 指针会导致未定义的行为吗?

linux - 如何为 buildbot 用户设置 SSH key

c - 阻塞的系统调用不会让 SIGKILL 终止进程

linux - NOHZ : local_softirq_pending 100

io - 驱动程序和用户应用程序之间的主要区别是什么?

使用结构创建和扩展链表

c - 在 C 中分配矩阵

Linux Bash - 比较 if 语句中的两个变量