linux驱动_最简单的例子

1.helloworld.c

#include <linux/module.h>//与module相关的信息
 
#include <linux/kernel.h>
#include <linux/init.h>      //与init相关的函数
 
static int __init hellokernel_init(void)
{
        printk(KERN_INFO "Hello kernel!\n");
        return 0;
}
 
static void __exit hellokernel_exit(void)
{
        printk(KERN_INFO "Exit kernel!\n");
}
 
 
module_init(hellokernel_init);
module_exit(hellokernel_exit);
 
 
MODULE_LICENSE("GPL");
MODULE_AUTHOR("xxxx");

2.Makefile
<pre name="code" class="cpp">obj-m := helloworld.o
 
PWD       := $(shell pwd)
 
all:
        make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
 
clean:
        rm -rf *.o *~ core .*.cmd *.mod.c ./tmp_version


 


3.执行与结果

执行make:

编译成功之后会生成相应有ko文件,也就是我们想要的驱动了

驱动程序的相关操作:

    查看ko模块的信息 modinfo
  插入模块 insmod helloworld.ko
卸载模块 rmmod helloworld
还有一个modprobe功能,以后介绍
查看驱动的打印信息:
  使用dmesg可以查看在驱动的相关打印信息!
 
    现在有例子是会有如下的打印内容:
 
---------------------log start----------------------------
 
[27520.195551] Exit kernel!
[27948.531569] Hello kernel!
 
---------------------log end----------------------------


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值