编写hello模块,1、编写hello.c,2、编写Makefie,3、编译模块,4、加载hello.ko,5、显示系统已有模块,6、显示加载模块信息,7、卸载模块
时间: 2024-05-31 12:09:15 浏览: 12
好的,我会按照您的要求进行回答。下面是对您的问题的解答:
1、编写hello.c
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world\n");
}
module_init(hello_init);
module_exit(hello_exit);
2、编写Makefile
obj-m += hello.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
3、编译模块
在终端中进入该文件夹,输入 make 命令进行编译。
4、加载hello.ko
在终端中输入 insmod hello.ko 命令进行加载。
5、显示系统已有模块
在终端中输入 lsmod 命令进行显示。
6、显示加载模块信息
在终端中输入 modinfo hello.ko 命令进行显示。
7、卸载模块
在终端中输入 rmmod hello.ko 命令进行卸载。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-gzip](https://img-home.csdnimg.cn/images/20210720083646.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)