Linux 下的驱动开发最简单例子
出来混迟早是要还的,技术学习也是如此。以前学习linux驱动只是停留在教科书理论知识上,基本上动手很少,结果真的要用的时候或者阅读大气磅礴的项目源码的时候才发现基础竟然是如此的重要,已经到了影响你理解整个逻辑的时候,这个时候就不得重新将原来跳过的东西再拾取一下了,不过,应该也会很快 呵呵
原文地址:感谢博文作者
http://www.oschina.net/code/snippet_12_364#524
一 代码 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");二 Makefileobj-m := helloworld.oPWD := $(shell pwd)all:make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modulesclean:rm -rf *.o *~ core .*.cmd *.mod.c ./tmp_version三 执行和运行结果3)执行make编译成功之后会生成相应有ko文件,也就是我们想要的驱动了4)驱动程序的相关操作a)查看ko模块的信息 modinfob)插入模块 insmod helloworld.koc)卸载模块 rmmod helloworldd)还有一个modprobe功能,以后介绍!5)查看驱动的打印信息使用dmesg可以查看在驱动的相关打印信息!现在有例子是会有如下的打印内容:---------------------log start----------------------------[27520.195551] Exit kernel! [27948.531569] Hello kernel!---------------------log end----------------------------
转载于:https://blog.51cto.com/sunzeduo/1414014
Linux 下的驱动开发最简单例子相关推荐
- linux下IIC驱动开发分析
1. IIC规范 IIC(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备.IIC总线产生于在80年代,最初为音频和 ...
- Linux 下wifi 驱动开发(三)—— SDIO接口WiFi驱动浅析
SDIO-Wifi模块是基于SDIO接口的符合wifi无线网络标准的嵌入式模块,内置无线网络协议IEEE802.11协议栈以及TCP/IP协议栈,能够实现用户主平台数据通过SDIO口到无线网络之间的转 ...
- Linux 下wifi 驱动开发(四)—— USB接口WiFi驱动浅析
前面学习了SDIO接口的WiFi驱动,现在我们来学习一下USB接口的WiFi驱动,二者的区别在于接口不同.而USB接口的设备驱动,我们前面也有学习,比如USB摄像头驱动.USB鼠标驱动,同样都符合Li ...
- linux wifi设置端口号,Linux 下wifi 驱动开发(四)—— USB接口WiFi驱动浅析
前面学习了SDIO接口的WiFi驱动,现在我们来学习一下USB接口的WiFi驱动,二者的区别在于接口不同.而USB接口的设备驱动,我们前面也有学习,比如USB摄像头驱动.USB鼠标驱动,同样都符合Li ...
- Linux下PCIe驱动开发与学习
PCIe概述 PCI Express,是计算机总线PCI的一种,它沿用现有的PCI编程概念及通信标准,但建基于更快的串行通信系统. PCIE总线使用的是高速差分总线,并采用端到端的连接方式, 现在的高 ...
- linux 下usb驱动开发,LINUX_ARM下的USB驱动开发.pdf
LINUX_ARM下的USB驱动开发 CN 431258 / TP 计算机工程与科学 2006年第 28卷第 3期 ISSN 1007130X COM PU TER EN GIN EER IN G & ...
- wifi linux 驱动分析,Linux 下wifi 驱动开发(二)—— WiFi模块浅析
一.什么是wifi 模块百度百科上这样定义: Wi-Fi模块又名串口Wi-Fi模块,属于物联网传输层,功能是将串口或TTL电平转为符合Wi-Fi无线网络通信标准的嵌入式模块,内置无线网络协议IEEE8 ...
- Linux 下wifi 驱动开发(二)—— WiFi模块浅析
一.什么是wifi 模块 百度百科上这样定义: Wi-Fi模块又名串口Wi-Fi模块,属于物联网传输层,功能是将串口或TTL电平转为符合Wi-Fi无线网络通信标准的嵌入式模块,内置无线网络协议IEEE ...
- Linux 下wifi 驱动开发(一)—— WiFi基础知识解析
一.WiFi相关基础概念 1.什么是wifi 我们看一下百度百科是如何定义的: Wi-Fi是一种可以将个人电脑.手持设备(如pad.手机)等终端以无线方式互相连接的技术,事实上它是一个高频无线电信 ...
最新文章
- ai3中文语音补丁_NS 暗黑破坏神3 中文补丁今日上线!刷起来
- java中保留两位小数(四舍五入后)
- ASP.NET Core Web API下事件驱动型架构的实现(四):CQRS架构中聚合与聚合根的实现
- 牛客题霸 [删除有序链表中重复的元素] C++题解/答案
- 二叉树——美国血统(洛谷 P1827)
- android bootstrap功能,整合QMUI Android和Android-Bootstrap
- C++ 实现一个简单内存池
- (二)数据库索引优化
- 电子电路基础 (12)——功率放大电路原理分析
- excel多级联动和不规则分组转置
- mt4双线macd_手机版MT4双线MACD设置视频教程
- Activity透明主题导致behind Activity重绘的解决方法
- Labview和三菱Q系列PLC通讯
- 帝国站长php主动推送,帝国CMS 链接主动推送插件设置帮助
- CSS3 制作正方体
- 2023年全国最新二级建造师精选真题及答案60
- 从荣耀V20看技术人怎么销售自己
- 使用css形变实现一个立方体
- 善的讯息可以产生美丽的水结晶
- 计算机网络实验华中科技大学,华中科技大学计算机网络实验报告.pdf
热门文章
- k8s pod里访问不到外部ip_安全公告:影响所有K8s版本的设计缺陷
- FTP:226 transfer done but failed to open directory
- Failed to resolve loader: less-loader
- 金钱工具类 MoneyUtils.java
- Spring cloud Gateway(二) 一个Http请求的流程解析
- 计算机网络 校园网规划,计算机网络课程校园网规划设计
- signature=cb97f07fbd7b371e6311b0d8707b6398,vue 汉字转拼音(filter)
- mysql升级代码_phpstudy 升级mysql 及MySQL服务等问题(示例代码)
- 电子工程可以报考二建_二建报考要求是工程类专业怎么办?非工程类专业可以报名吗?...
- jqgrid ajax reload,于jqgrid.trigger('reloadGrid')方法不能重新加载页面的问题