5条回答 默认 最新
u010262380 2018-04-07 04:00关注从楼主贴的代码上看不出来获取了task指针后做了什么操作,猜测错误可能更楼主没贴上来的代码有关,但具体还得把编译时报错的信息贴上来才能知道。
附上一个示例代码和Makefile文件供参考:
文件名:test.c
#include
#include
#includestatic int __init functn_init(void)
{
int ret=0;
struct task_struct *task;
printk(KERN_INFO "insmod test modules.\n");for_each_process(task) printk(KERN_INFO "pid:%d,task_name:%s\n",task->pid,task->comm); return ret;}
static void __exit functn_cleanup(void)
{
printk(KERN_INFO "exit test modules!\n");
}module_init(functn_init);
module_exit(functn_cleanup);MODULE_LICENSE("GPL");
Makefile文件内容:
ifneq ($(KERNELRELEASE),)
obj-m := test.o
else
PWD := $(shell pwd)
KDIR :=/home/kernel/kernel-3.10.0-693/
all:
$(MAKE) -C $(KDIR) M=$(PWD)
clean:
rm -rf .*.cmd *.o *.mod.c *.ko .tmp_versions *.symvers *.order
endif解决 无用评论 打赏 举报
图片说明](https://img-ask.csdn.net/upload/201803/31/1522481347_77937.png)