gpt4 book ai didi

linux - 打印内核模块中的进程数

转载 作者:太空宇宙 更新时间:2023-11-04 03:51:00 25 4
gpt4 key购买 nike

我对内核编程非常陌生,我编写了一个像这样的小内核模块,

mod.c

#include<linux/kernel.h>
#include<linux/module.h>
#include<sys/sysinfo.h>

int init_module(void)
{
int k;
struct sysinfo info;
printk(KERN_INFO "hello\n");
k = sysinfo(&info);
printk(KERN_EMERG "procs = %d\n", info.procs)

return 0;
}

void cleanup_module(void)
{

printk(KERN_INFO "Goodbye\n");
}

Makefile 看起来像这样,

 obj-m +=mod.o

all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

如果我从终端发出 make,它会给出错误
fatal error :sys/sysinfo.h:没有这样的文件或目录

你能告诉我这里出了什么问题吗?

最佳答案

如果有人仍在寻找如何做到这一点,我不久前解决了这个问题,这是解决方案。这适用于 debian Linux 3.16 版本。如果您想查看这里的代码。

https://github.com/st0rmi/rootkit_programming/blob/master/assignment01/assignment01_mod.c

关于linux - 打印内核模块中的进程数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26393476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com