linux 设备驱动开发学习笔记(一):最简单的内核模块
来源:互联网 发布:php 取小数点后两位 编辑:程序博客网 时间:2024/05/16 10:40
linux模块机制
- 模块本身不被编译入内核映像,控制了内核的大小。
- 模块一旦被加载就和内核中的其他部分完全一样。
一个最简单的Hello World内核模块
//hello.c#include <linux/init.h>#include <linux/module.h>static int __init hello_init(void){ printk(KERN_INFO "Hello World enter\n"); return 0;}module_init(hello_init);static void __exit hello_exit(void){ printk(KERN_INFO "Hello World exit\n");}module_exit(hello_exit);MODULE_AUTHOR("Yang Xu <yangxu_qzhit@outlook.com>");MODULE_LICENSE("GPL v2");MODULE_DESCRIPTION("A simple Hello World Module");MODULE_ALIAS("a simplest module");
Makefile文件
obj-m := hello.oall: $(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) modulesclean: $(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
进入hello.c文件所在目录,执行make生成hello.ko模块文件。
加载模块命令:modprobe ./hello.ko
查看加载模块:lsmod
卸载模块:modprobe -r hello
获得模块信息:modinfo hello.ko
阅读全文
0 0
- linux 设备驱动开发学习笔记(一):最简单的内核模块
- 驱动学习日记1--linux内核模块的简单笔记
- Linux设备驱动开发详解--笔记4--Linux内核模块
- 嵌入式Linux驱动开发(一)一个简单的Linux内核模块框架
- 嵌入式开发第61日(linux内核模块之设备驱动:怎么写一个简单的驱动)
- linux设备驱动开发学习笔记一
- Linux设备驱动(一)---内核模块简介
- linux 设备驱动开发学习笔记(一):并发控制
- Linux设备驱动学习与实践之一-最简单的模块
- 一个最简单的Linux 2.6内核驱动模块
- [设备驱动] 最简单的内核设备驱动--字符驱动
- Linux内核学习-最简单的内核模块
- Linux内核学习-字符设备驱动学习(一)
- Linux内核学习-字符设备驱动学习(一)
- linux学习笔记-读《Linux设备驱动开发详解》~第三章 Linux内核及内核编程
- 【Linux开发】linux设备驱动归纳总结(一):内核的相关基础概念
- Linux内核驱动学习1-模块开发
- Linux设备驱动开发基础---Linux内核模块
- 1101. Quick Sort (25)
- 【web前端】html+js实现流程进度展示条
- 爬虫记录(1)——简单爬取一个页面的内容并写入到文本中
- JSON格式自动解析遇到的调用方法问题.fromJson() ..readValue()
- 微信 静默 授权登录 获取openid 实现方法
- linux 设备驱动开发学习笔记(一):最简单的内核模块
- 【技术贴收集】在线预览下载PDF文件
- Codeforces 842 B Gleb And Pizza
- 框架:提供一定能力的小段程序
- JSP页面写入中文到数据库乱码问题
- 事件分发(EventDispatcher)模式
- OpenCV中Mat的一些常用操作(网络资料整理)
- Java Arrays用法简介
- nginx中location配置说明