天天看点

Linux驱动学习笔记(1)

学习linux驱动开发,自然离不开内核模块,内核模块似乎是专门为linux驱动开发而出现的。但是并不是说内核模块都是驱动,只是内核模块作为一种动态扩展内核,是方便了驱动的开发。

那么一个模块是怎么样的呢?

很简单,三要素:头文件、加载函数、卸载函数

#include <linux/module.h>
#include <linux/init.h>

static int first_init(void)
{
    return 0;
}

static void first_exit(void)
{
}

module_init(first_init);
module_exit(first_exit);

MODULE_LISECEN("GPL");
           

这样一个简单的模块就出来了。

继续阅读