手机
当前位置:查字典教程网 >脚本专栏 >linuxshell >利用kernel提供的接口打印进程号(pid)
利用kernel提供的接口打印进程号(pid)
摘要:c文件printPid.c复制代码代码如下:#include#include#include#include#includestatic__...

c文件printPid.c

复制代码 代码如下:

#include <linux/kernel.h>

#include <linux/module.h>

#include <linux/init.h>

#include <linux/sched.h>

#include <linux/list.h>

static __init int printPid(void) //安装模块函数

{

struct task_struct *task,*p;

struct list_head *ps;

int count=0;

printk("begin.n");

task=&init_task;

list_for_each(ps,&task->tasks)

{

p=list_entry(ps,struct task_struct,tasks);

count++;

printk("%dt%sn",p->pid,p->comm);

}

printk("Process counts:%dn",count);

return 0;

}

static __exit void exitPid(void) //卸载函数

{

printk("exit!n");

}

module_init(printPid); //实现的函数必须放入其中

module_exit(exitPid);

make后会生成pid.ko文件。

然后用这几个命令:

复制代码 代码如下:

#安装模块

sudo insmod pid

#显示日志信息

dmesg

#显示挂载的挂载的所有模块

lsmod

#卸载

sudo rmmod pid

【利用kernel提供的接口打印进程号(pid)】相关文章:

防止ARP攻击的shell代码

Shell中比较大小简洁总结

用内置变量调试shell脚本的方法

Shell脚本实现ftok函数

shell脚本实现linux系统文件完整性检测

Shell脚本实现分析apache日志中ip所在的地区

编写你的shell其实很简单

Shell脚本避免重复执行的方法

awk中NR和FNR的区别小结和实例演示

用模板的方式创建守护进程代码实例

精品推荐
分类导航