一个非常基本的问题,我无法通过互联网搜索找到答案。

基本上,我想知道:


编译器如何区分用户空间代码和内核空间代码?
与内核空间代码相比,makefile在编译用户空间代码方面是否有所不同?


最好的祝福,
库蒂

最佳答案

编译器仅遵循传递给它的标志,其余的照常进行,没有任何魔术。

对于一个小示例,请查看Writing Your Own Loadable Kernel Module。另请参见Modules vs. Program

当然,区别在于操作系统如何处理这些模块和程序以及它们具有哪些权限(另请参见rings)。

关于linux - 在Linux中编译用户空间代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11190523/

10-12 17:52