最简单的Linux驱动程序
来源:才华咖 本文已影响1.35W人
来源:才华咖 本文已影响1.35W人
你正在学习linux吗?你知道最简单的Linux驱动程序是怎么样的吗?下面yjbys小编为大家提供最简单的'Linux驱动程序,希望对大家有所帮助!
#include
#include //两个必须头文件
MODULE_LICENSE("DuAL BSD/GPL");//GPL协议
static char *whom = "world";//insmod传入参数是用到
static int howmany = 1;//insmod传入参数是用到
module_param(howmany,int,S_IRUGO);//传入参数要用module_param宏来声明。这样我们就可以使用insmod命令
//时传入参数,其实是模块让这些参数对insmod命令可见
module_param(whom,charp,S_IRUGO);
unsigned int i;
static int hello_init(void)
{
printk(KERN_ALERT "Hello,worldn");
for(i=0;i
printk(KERN_ALERT "hello %sn",whom);
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel worldn");
}
module_init(hello_init);
module_exit(hello_exit);
下面是Makefile文件
obj-m += hello.o//obj-m编译成模块
KERDIR = /work//内核所在目录
modules:
make -C $(KERDIR) M=`pwd` modules//-C表示进入到后面目录里编译,M=` `指定编译好的文件所在目录
clean:
rm -rf *.o *~core nd * * *.c *_versions
下面是加载模块时情况
[root@cgyl2010 ~]#insmod howmany=10 whom="Mom"
Hello,world
hello Mom
hello Mom
hello Mom
hello Mom
hello Mom
hello Mom
hello Mom
hello Mom
hello Mom
hello Mom
这样就可以通过insmoa命令传进来的参数来控制我们要实现的现象(这里是打印情况),有时候会比较方便。
解析Linux + Oracle最简化最重要的步骤
Linux系统字符设备驱动框架笔记
linux shell编程的简介
Linux系统ftp程序常用命令
u盘简单安装linux的方法
Linux下如何编写第一个C语言hello world程序
linux系统如何安装网卡驱动
Linux认证基础知识:linux操作系统目录结构
Linux关闭selinux安全子系统的技巧
Linux认证系统管理:linuxmail命令发送邮件失败
Linux认证基础知识:Linux中正则表达式与文件处理
Linux操作系统web服务器简单教程
Linux下编译C语言程序
Linux认证系统管理:linux下搭建ftp
在Linux下制作HTML幻灯片的简单教程参考
sgx驱动程序是什么意思
Linux 系统下光驱软开关与限速介绍
Linux下extun软件的应用
2016年Linux常用简单命令
PHP脚本修改Linux或Unix系统口令方法
2015计算机三级《网络技术》复习重点:UNIX和Linux
Unix/Linux中怎么直接执行PHP脚本文件
有无操作系统的嵌入式Linux驱动设备有何区别
Unix和Linux有什么区别
Linux系统简单入门学习
关于Linux中vlan的网卡教程
全自动安装linux系统的简便方法
Linux系统启动的大致过程
在UNIX或Linux中TTY的意思
华为TA128在LINUX下的简单设置
Linux系统守护进程的启动方法
最简单的Linux驱动程序
java程序中如何调用linux命令
计量单位管理程序
Linux底层驱动工程师岗位职责
Linux的防火墙最新解读--IP Tables
Linux网卡聚合linux多网卡绑定聚合之bond模式的原理是什么
关于PHP脚本修改Linux或Unix系统口令方法
linux shell编程对变量的赋值
Ubuntu Linux系统下设置Static IP的方法