1.
#include #include
两个文件是模块必须添加的
module_init(init_function);
module_exit(exit_function);
用于制定模块的初始化和清楚函数
2.
#include
最重要的头文件之一,包含驱动程序使用的大部分内核API的定义,包括睡眠函数以及各种变量声明。
struct task_struct *current;//2.4
current在2.6中是一个可以获得task_struct结构的宏
当前进程
current->pid
current->com
当前进程的进程ID和命令名。
3.
#include //包含所构造内核版本信息的头文件。
LINUX_VERSION_CODE//整数宏,用在处理版本以来的预处理条件语句中。
EXPORT_SYMBOL (symbol);//导出单个符号到内核的宏
EXPORT_SYMBOL_GPL(symbol);//仅用于GPL许可证下的模块
MODULE_AUTHOR(author);
MODULE_DESCRIPTION(desctiption);
MODULE_VERSION(version_string);
MODULE_DEVICE_TABLE(table_info);
MODULE_ALIAS(alternate_name);
4.
#include
module_param(variable,type,perm)
5.
#include
int printk(const char * fmt,...);
阅读(974) | 评论(0) | 转发(0) |