1.最简单的linux驱动
2013-10-29 10:36
387 查看
学linux也有段时间了,一直没什么条理。也不知道学了些什么做了些什么。现在一步步梳理一下linux驱动的学习过程。就从最简单的去看开始。
首先我们写一个最简单的模块。编辑hello_module.c
编写Makefile
其中KERNELDIR需要设置成你的内核源码路径。
然后使用insmod 命令存入模块:insmod hello_nodule.ko
使用lsmod 就能看到你新插入的模块
使用rmmod移除模块:rmmod hello_module
最简单的驱动就完成了。
首先我们写一个最简单的模块。编辑hello_module.c
#include<linux/module.h> #include<linux/sched.h> #include<linux/kernel.h> MODULE_LICENSE("GPL"); int text_init(void) { printk("<0>""hello world"); return 0; } void text_cleanup(void) { printk("<0>goodbye world"); } module_init(text_init); module_exit(text_cleanup); |
ifneq ($(KERNELRELEASE),) obj-m := hello_module.o else #KERNELDIR := /home/sinew/桌面/linux-2.6.30.4-ces2440 KERNELDIR := /usr/src/linux-headers-3.8.0-19-generic/ PWD:=$(shell pwd) all: make -C $(KERNELDIR) M=$(PWD) modules clean: rm -rf *.ko *.o *.mod.c *.mod.o *.symvers endif |
然后使用insmod 命令存入模块:insmod hello_nodule.ko
使用lsmod 就能看到你新插入的模块
使用rmmod移除模块:rmmod hello_module
最简单的驱动就完成了。
相关文章推荐
- linux 简单字符驱动
- Linux驱动编程 step-by-step (六) 用户地址检测 简单模块调试 以及一些杂项
- 关于linux模块驱动简单的Makefile
- 一个简单的Linux字符驱动
- 一个最简单的Linux 2.6内核驱动模块
- linux设备驱动开发学习之旅--简单字符驱动实例globalmem
- 简单的LINUX字符设备驱动及编译进Linux内核
- linux S3C2440 spi 驱动简单测试 (基于简单字符驱动)
- Linux驱动学习——简单字符设备
- Linux USB 驱动开发(五)—— USB驱动程序开发过程简单总结
- 简单的linux驱动和应用程序的Makfile编写
- linux S3C2440 spi 驱动简单测试 (基于简单字符驱动)
- 教你完成最简单的linux驱动 hello world
- Linux2.6内核下简单的字符设备驱动及测试
- linux 驱动开发简单声明
- linux device driver 3 简单的字符驱动
- linux驱动—input输入子系统—The simplest example(一个最简单的实例)分析(1)
- Linux简单驱动框架
- 一步一步编写最简单的linux驱动 hello world
- linux设备驱动程序之简单字符设备驱动