[树莓派内核学习]内核模块开发
来源:互联网 发布:侠客行 知乎 编辑:程序博客网 时间:2024/06/05 22:07
本文章是通过学习:国嵌内核驱动进阶班-1-4(Linux内核模块开发).avi视频写下的。
环境准备:
交叉编译操作系统: linux_x86虚拟机
内核模块交叉编译环境:已经成功的编译的kernel内核源代码。(确定已经成功的加载到树莓派中)
首先创建两个文件:(文件内容完全参照视频)
hello.c
Makefile
执行make
最后将生成的hello.ko复制到树莓派中。
执行加载内核模块:
通过dmesg查看内核输出
卸载内核模块:
查看现有内核模块:
加载modprobe:
参考内容:
环境准备:
交叉编译操作系统: linux_x86虚拟机
内核模块交叉编译环境:已经成功的编译的kernel内核源代码。(确定已经成功的加载到树莓派中)
首先创建两个文件:(文件内容完全参照视频)
hello.c
#include <linux/init.h>#include <linux/module.h>#include <linux/moduleparam.h>MODULE_LICENSE("Dual BSD/GPL");static int hello_init(void){ printk(KERN_ALERT"Hello, world\n"); return 0;}static void hello_exit(void){ printk(KERN_ALERT"Goodbye, cruel world\n");}module_init(hello_init);module_exit(hello_exit);
Makefile
ifneq ($(KERNELRELEASE),)obj-m := hello.oelseKDIR := /home/debian/raspberrypi/kernel/linux-rpi-3.12.yall:make -C $(KDIR) M=$(PWD) modules ARCH=arm CROSS_COMPILE=/home/debian/raspberrypi/git/tools/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/bin/arm-bcm2708hardfp-linux-gnueabi-clean:rm -f *.ko *.o *.mod.o *.mod.c *.symvers modul*endif
执行make
最后将生成的hello.ko复制到树莓派中。
执行加载内核模块:
$ sudo insmod hello.ko
通过dmesg查看内核输出
卸载内核模块:
$ sudo rmsmod hello
查看现有内核模块:
$ sudo ismod
加载modprobe:
$ sudo modprobe hello
参考内容:
0 0
- [树莓派内核学习]内核模块开发
- Linux内核学习之二:内核模块开发
- Linux内核学习2:内核模块的开发
- Linux内核模块开发实例学习
- Linux内核驱动学习1-模块开发
- Linux学习之内核模块开发详解
- Linux学习之内核模块开发详解
- Linux内核模块开发实例学习
- Linux内核模块开发
- freeswitch 内核模块开发
- freeswitch内核模块开发
- Linux内核模块开发
- 内核模块开发基础
- linux内核模块开发
- 内核模块开发基础
- Linux内核模块开发
- Eclipse开发内核模块
- 内核模块开发
- 【手把手教你做智能车】第一节-IAR软件的安装
- VirtualBox修改VDI文件的UUID
- ListView具有多种item布局——实现微信对话列
- jquery动态添加表格行
- 批处理生成sleep.exe(DOS延时工具)
- [树莓派内核学习]内核模块开发
- iOS多线程编程之Grand Central Dispatch(GCD)
- LCA和RMQ
- setWindowFlags的使用
- printf 格式问题
- cf471A MUH and Sticks
- Android缩放图片
- "《数据结构》实验一:VC编程工具的灵活使用“以及总结
- hdu 1114 Piggy-Bank (完全背包)