linux如何向内核中添加和卸载字符设备

linux如何向内核中添加和卸载字符设备,第1张

在driver/char/目录下编写字符设备驱动,修改本目录下的Makefile和Kconfig文件,添加相应的编译选项。

内核目录下make menuconfig配置内核,选上刚刚编写的字符设备。

在内核目录下make,如果是以模块方式编译则还要make modules,这样模块就编译好了

如果是以模块方式编译的,则将模块下载到开发板后insmod 模块名就行了 卸载用remmod

是这么回事,当你自己要写一个字符设备或者看别人写的是字符设备时,要定义一个字符设备的结构体struct cdev{/*里面是一些字符设备的相关属性,包括file_operations结构体,设备号等等*/},然后调用register_chrdev_region(),申请设备号,再用cdev_add()想内核注册设备,这里,内核就知道你要注册的就是字符设备了,同理,如果是块设备的话用register_blkdev()来注册块设备,经过一系列的初始化后添加add_disk(),内核也就知道你添加的是块设备了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7954732.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存