博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Linux内核编程》第十四章:Linux驱动基础
阅读量:4180 次
发布时间:2019-05-26

本文共 628 字,大约阅读时间需要 2 分钟。

一、内核模块

1.内核模块的编译

在内核源码树之外编译时,Makefile写法:

obj-m := hello.oKERNELBUILD := /lib/modules/$(shell uname -r)/builddefault:	make -C $(KERNELBUILD) M=$(shell pwd) modulesclean:	rm -rf *.o *.ko *.mod.c .*.cmd *.markers *.order *.symvers .tmp_versions

在内核源码树中编译时,Makefile写法:

Kconfig文件

config HELLO	tristate "New Hello"

Makefile文件

obj-$(CONFIG_HELLO)	+= hello.o

2.操作内核模块常用命令

insmod hello.ko:加载内核模块

modprobe hello:加载内核模块

rmmod hello.ko:卸载内核模块

lsmod:列出当前内核使用的模块

modinfo hello.ko:查看模块文件的基本信息

二、调试驱动

cat /proc/devices:查看系统支持的字符设备驱动、块设备驱动以及对应的主设备号。

dmesg:查看系统的启动信息。

cat /proc/ioports或/proc/iomem:查看设备的I/O内存物理地址。

cat /proc/interrupts:查看正在使用的中断号。

转载地址:http://ergai.baihongyu.com/

你可能感兴趣的文章
HashMap存储原理以及与hashcode、equals方法的关系
查看>>
python3.6在windows下安装scrapy遇到的问题总结
查看>>
pycharm中打开scrapy项目,import scrapy报错问题
查看>>
scrapy爬取图片,自定义图片下载路径和图片名称
查看>>
python3下import MySQLdb出错问题
查看>>
Maven搭建SSM框架(eclipse)
查看>>
synchronized+Integer模拟火车票预售,出现的问题总结
查看>>
沉浸式过山车,感受巨蚁数字心灵的激情
查看>>
htmlunit爬取js异步加载后的页面
查看>>
修改Linux系统locale设置
查看>>
linux网络无法连接问题
查看>>
linux 查看ip
查看>>
go中map与xml互转
查看>>
java进程占用CPU过高
查看>>
CSDN-markdown编辑器
查看>>
拷贝整个目录到另一台服务器并排除log目录
查看>>
拜托,面试别再问我跳表了!
查看>>
android ArrayList<String> 转 String[]
查看>>
RecyclerView baseadapter
查看>>
Android中应用程序如何获得系统签名权限
查看>>