Linux驱动程序开发实验

Linux驱动程序开发实验_第1张图片
首先用c语言写好设备驱动。初始化的时候将会在内核日志上输出load driver,卸载时将会输出unloaddriver
Linux驱动程序开发实验_第2张图片
然后写好makefile。makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,以及进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,也可以执行操作系统的命令。其中KDIR为当前版本内核的路径,中间夹着的/shell uname -r/用来选择和当前运行的系统所一致的内核目录。PWD变量存放着一个shell操作,用来执行pwd命令以显示当前路径。Makefile文件首字母按格式一定要大写,不然输入make命令时无法执行此文件。
Linux驱动程序开发实验_第3张图片
通过sudo命令以root权限执行make命令,生成内核驱动文件make.ko。再通过insmod命令加载demo内核。加载完成后,通过lsmod显示所有模块。可以看到我们自创的demo模块已被加载到Linux系统上。
Linux驱动程序开发实验_第4张图片
执行rmmod命令,将自创的驱动模块卸载。再通过dmesg命令,查看内核信息
Linux驱动程序开发实验_第5张图片
通过查看内核日志发现,我们自创的驱动先被加载了,然后又被卸载了。

你可能感兴趣的:(Linux驱动程序开发实验)