什么是内核模块?
所以,你想编写一个内核模块。 你懂 C 语言,你编写过一些作为进程运行的普通程序,现在你想进入真正的内核,在那里一个简单的野指针就可以清除你的文件系统,而一个核心转储意味着重启。
内核模块到底是什么? 模块是可以按需加载和卸载到内核中的代码片段。 它们扩展了内核的功能,而无需重新启动系统。 例如,一种类型的模块是设备驱动程序,它允许内核访问连接到系统的硬件。 如果没有模块,我们将不得不构建单内核并将新功能直接添加到内核映像中。 除了拥有更大的内核之外,这还具有每次需要新功能时都需要重建和重启内核的缺点。