Zero-knock cowhide: Linux2.6 kernel source code parsing _ process traversal, zero-knock linux2.6
/* *File : test.c *Author : DavidLin *Date : 2014-12-07pm *Email : linpeng1577@163.com or linpeng1577@gmail.com *world : the city of SZ, in China *Ver : 000.000.001 *history : editor time do * 1)LinPeng 2014-12-07 created this file! * 2) */ #include <linux/init.h>#include <linux/list.h>#include <linux/module.h>#include <linux/sched.h>static int list_init(void){ struct task_struct *task; task = NULL; for_each_process(task) { printk("pid = %d\n", task->pid); } return 0;}static void list_exit(void){ printk("KERNEL MACRO: for_each_process exit\n");}module_init(list_init);module_exit(list_exit);MODULE_AUTHOR("Linpeng1577");MODULE_DESCRIPTION("KERNEL 2.6 MACRO STUDY");MODULE_LICENES(GPL);
For the Makefile file and test of this routine, refer to the previous blog:
Linux Kernel programming: Starting from hello world-(1) _ C file writing
Linux Kernel programming: Starting from hello world-(2) _ Makefile file writing
Linux Kernel programming: Starting from hello world-(3) _ run
1. However, tail-n 3/var/log/messages can be changed to tail-n 100/var/log/messages;
2. ps-el lists the processes.