有人可以给我一份文件来描述内核源文件夹的结构、功能以及它们的组织方式吗?
具体来说,include/uapi/**这个文件夹有什么用?
谢谢。
该uapi
文件夹应该包含内核的用户空间 API。然后在内核安装时,uapi 包含文件成为顶级 /usr/include/linux/ 文件。(我不完全清楚还有哪些例外。)
理论上,其他头文件是内核私有的。这允许将以前混合在单个头文件中的用户可见结构和仅内核结构完全分离。
我所见过的最好的讨论是在补丁登陆之前的一篇 Linux Weekly News文章。
UAPI 补丁本身与内核 3.7 一起登陆。Linus 的快速而肮脏的总结是:
“uapi”包括文件清理。这个想法是导出到用户空间的东西现在应该在 include/uapi 和 arch/$(ARCH)/include/uapi 下找到。
让我们希望它确实有效。因为否则这只是* ss中完全没有意义的痛苦。不管怎样,我肯定已经永远完成了这种“让我们对包含文件进行大规模清理”。