linux模块加载记录
来源:互联网 发布:单片机车辆闯红灯检测 编辑:程序博客网 时间:2024/05/16 05:54
hello程序
#include <linux/init.h>#include <linux/module.h>MODULE_LICENSE("Dual BSD/GPL");MODULE_AUTHOR("Hanson He");static int __init hello_init(void){ printk(KERN_ALERT "Hello world\n"); return 0;}static void __exit hello_exit(void){ printk(KERN_ALERT " Hello world exit\n");}module_init(hello_init);module_exit(hello_exit);
makefile内容
ifeq ($(KERNELRELEASE),)KERNELDIR ?=/root/Desktop/linux-2.6.32.2PWD := $(shell pwd)modules: $(MAKE) -C $(KERNELDIR) M=$(PWD) modulesmodules_install: $(MAKE) -C $(KERNELDIR) M=$(PWD) modules_installclean: rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions.PHONY: modules modules_install cleanelse obj-m := hello.oendif
终端执行make出现如下的错误:
ERROR: Kernel configuration is invalid.include/linux/autoconf.h or include/config/auto.conf are missing. Run 'make oldconfig && make prepare' on kernel src to fix it.
原因是因为没有编译内核,解决方法如下编译内核的步骤:
1. cp menu_mini2440_x35 .config
2.修改内核目录下的Makefile
ARCH ?=arm
CROSS_COMPILE ?=arm-linux-
3.make menuconfig
4.make
做完这几步之后在hello目录下执行make即可出现hello.ko文件
将hello.ko文件拷贝到开发板执行
[root@FriendlyARM share]# insmod hello.ko Hello world[root@FriendlyARM share]# lsmodhello 505 0 - Live 0xbf000000[root@FriendlyARM share]# rmmod hello Hello world exitrmmod: module 'hello' not found
对于设备,加载完驱动之后要创建节点文件
mknod /dev/beep c major 0
beep 为设备名
c 代表位字符设备
major 代表为主设备号
0 代表为次设备号
带参数的执行结果如下:
[root@FriendlyARM share]# insmod hello_ext.ko howmany=4 whom="jiejie"Hello jiejieHello jiejieHello jiejieHello jiejie[root@FriendlyARM share]# rmmod hello_ext.ko [root@FriendlyARM share]# rmmod hello_ext Hello world exitrmmod: module 'hello_ext' not found
- linux模块加载记录
- 【Linux】编译模块记录
- linux内核模块加载
- linux 模块加载
- Linux加载模块命令
- linux 加载hello模块
- linux 模块加载方法
- Linux 模块 加载顺序
- linux模块的加载
- linux内核模块调试记录
- linux 3.16 模块编译记录
- 浅谈linux中的模块加载
- linux下的模块加载
- 改变linux模块加载顺序
- Linux加载 hello world模块
- linux下的模块加载
- linux模块加载与卸载
- linux下的模块加载
- Linux exec函数族
- (一)1.1 结构化的软件开发方法
- Ubuntu自带FireFox浏览器安装Falsh插件
- PROCESS_INFORMATION 结构 STARTUPINFO结构 SECURITY_ATTRIBUTES 结构
- linux 操作系统-lab1计算机怎么工作的?
- linux模块加载记录
- poj 1113 Wall 凸包
- cocos2dx的lua绑定
- 基于百度应用引擎的Web应用创建过程
- sql 索引
- QT 相关资源(书籍、论坛、博客等。。。)整理...
- 关于SEO网站收录
- Android中的android:layout_weight讲解
- 无线传感器网络开发环境 - MOTEWORKS