硬件有许许多多的驱动。如果把所有的驱动都在编译内核的时候就指定编译到内核里面

那么内核会非常大。


所有编译内核的时候只编译一部分通用常用的驱动。这些驱动在linux内核配置的时候指定为*


还有一些驱动被指定为M 编译。但是没有安装。这些模块可以放到rootfs里面去。等真正需要的时候再加载。这些就是通过make modules和modules_install完成的。



关于如何添加自己的内核模块。比如我的设备有一个驱动是wifiaaaaa linux内核没有。那么可以通过在内核源码目录中增加Kconfig

以及makefile这些实现。参考可以搜索

linux内核添加新的模块

linux添加内核模块

Linux内核开发之将驱动程序添加到内核


Linux Kconfig及Makefile学习


之类的文章





相关文章


http://blog.csdn.net/tigerjibo/article/details/6426321


https://segmentfault.com/a/1190000000450479

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐