首页 > 系统相关 >Linux 驱动开发-简单的驱动框架编写

Linux 驱动开发-简单的驱动框架编写

时间:2022-08-30 10:23:32浏览次数:73  
标签:Linux demo xxx ko PATH init exit 编写 驱动

编写一个简单的 linux 驱动代码栗子

1、源文件 xxx.c

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

// 模块入口函数
static int __init demo_init(void)
{
	printk("Hello world! module.\r\n");
	return 0;
}

// 模块出口函数
static void __exit demo_exit(void)
{
	
}

module_init(demo_init);
module_exit(demo_exit);
MODULE_LICENSE("GPL");

2、Makefile 文件

KERNELDIR := 编译过的内核路径
CURRENT_PATH := $(shell pwd)
obj-m := xxx.o

build: kernel_modules

kernel_modules:
	$(MAKE) -C $(KERNELDIR) M=$(CURRENT_PATH) modules
clean:
	$(MAKE) -C $(KERNELDIR) M=$(CURRENT_PATH) clean

3、编译成 xxx.ko 文件

make

4、加载模块 xxx.ko

insmod xxx.ko

5、卸载模块 xxx.ko

rmmod xxx.ko

标签:Linux,demo,xxx,ko,PATH,init,exit,编写,驱动
From: https://www.cnblogs.com/lvvou/p/16638393.html

相关文章

  • linux用wget下载的文件放在什么地方?
    linux用wget下载的文件放在什么地方?_百度知道 https://zhidao.baidu.com/question/1824525879028523548.html匿名用户2017-12-16 Linux系统中的wget是一个下载......
  • Linux之awk数组(四)
    1.awk数组AWK可以使用关联数组这种数据结构,索引可以是数字或字符串。AWK关联数组也不需要提前声明其大小,因为它在运行时可以自动的增大或减小。AWK不支持多维数组。2......
  • linux系统 BCM43142的网卡 安装
    检查网卡驱动:[paul@localhost~]$lspci|grepNetwork09:00.0Networkcontroller:BroadcomInc.andsubsidiariesBCM43142802.11b/g/n(rev01) 安装依赖:......
  • linux创建用户、设置密码、修改用户、删除用户
    linux创建用户、设置密码、修改用户、删除用户_sunxx1986的博客-CSDN博客_linux创建用户 https://blog.csdn.net/sunxx1986/article/details/6854307创建用户、设置密码......
  • 将Linux文件清空的几种方法
    将Linux文件清空的几种方法-LinuxPark-博客园 https://www.cnblogs.com/mrwang1101/p/6166326.html1、使用重定向的方法[root@centos7~]#du-htest.txt4.0K......
  • Linux学习笔记5——目录和文件,时间
    Linux学习笔记5——目录和文件一、目录和文件:根目录:/,目录的最后面是文件。文件名是由目录+文件名组成的。当前目录:登录Linux后,一定处于目录树的某个目录中,这个目录称......
  • linux服务器校对时间方法
    linux服务器校对时间方法_llnara的博客-CSDN博客_linux对时 https://blog.csdn.net/llnara/article/details/8286873Linux中有个ntp包可以自动校准时间,并且非常好用。D......
  • linux学习英语单词汇总 220830
      aptitude英[ˈæptɪtjuːd]美[ˈæptɪtuːd]n. 资质;天资;天赋;天生的才能;[例句]ResearchersusedACTscoresasameasureofintellectualaptitude.研......
  • Linux命令(二)
    压缩、解压缩tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩-c:创建一个新tar文件-v:显示运行过程的信息-f:指定文件名......
  • Linux 一些常用命令
    Linux命令的分类1、帮助命令(help)2、常用系统工作命令3、常用状态检测命令4、工作目录切换命令Linux常用命令echo命令作用:在终端输出字符串或变量后提取的值格式:ech......