Alpine 编译驱动 ( 内核模块 )

编译流程

查看内核版本

登录 Alpine , 输入 uname -r 查看内核版本

image

安装对应包

根据内核版本安装对应包

image

等待安装完毕

image

image

上传源码

Hello World 程序发送到 Alpine

image

修改 Makefile

要适当修改 Makefile 里的 modules 路径

image

编译模块

image

进入程序所在文件夹,执行 make

image

可以看到,成功生成了 .ko 文件

安装模块

使用 insmod 命令安装

image

卸载模块

使用 rmmod 命令卸载

image

查看效果

使用 dmesg 输出内核日志

image

image

用到的代码

1.c

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

MODULE_LICENSE("Dual BSD/GPL");
MODULE_AUTHOR("Hcamael");

int hello_init(void)
{
    printk(KERN_INFO "Hello World\n");
    return 0;
}

void hello_exit(void)
{
    printk(KERN_INFO "Goodbye World\n");
}

module_init(hello_init);
module_exit(hello_exit);

Makefile

obj-m += 1.o

all:
	make -C /lib/modules/5.15.5-0-virt/build M=$(PWD) modules

clean:
	make -C /lib/modules/5.15.5-0-virt/build/ M=$(PWD) clean

posted @ 2021-12-09 22:57  博麗靈夢  阅读(587)  评论(0编辑  收藏  举报