【发布时间】:2013-12-17 06:53:47
【问题描述】:
我不清楚可以“嵌入”在单片内核中的驱动程序与只能作为外部模块使用的驱动程序之间的区别。
需要什么样的努力才能将某些驱动程序(仅作为“外部模块”提供)“移植”到单片内核?
我希望能够运行 Vmware Tools 禁用可加载模块支持并摆脱 initrd 集市。
【问题讨论】:
-
通常被描述为“内核模块”的东西更具体地说是 DKMS 模块en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support(至少 99.9% 的时间)。但无论如何,您仍然需要源代码和对您计划在您的机器上使用的 linux 内核分支的支持。
-
好的。但是需要怎样的努力才能“转换”源代码呢? Linux 内核提供了大量代码,既可以编译为 DKMS 模块,也可以嵌入到单片内核中。我猜有某种“通用代码”和某种“模块特定”代码或makefile设置或其他。我对此不太感兴趣,所以我想了解其中涉及的内容。
-
为什么要使用单片内核?这可能有助于回答您的问题。
-
安全、性能、简单配置、小尺寸、快速启动。不需要灵活性。