我的操作系统说,如果要向Linux内核添加系统调用,请编辑linux-2.x/include/asm-i386/unistd.h
。
但是linux内核的源代码结构似乎发生了很大变化。在linux-2.6.34.1
版内核源代码树中,我只找到linux-2.6.34.1/include/asm-generic/unistd.h
和linux-2.6.34.1/arch/x86/include/asm/unistd.h
。
似乎编辑后者更有意义。
我的问题是/inlcude/asm-generic
的用途是什么? asm相关代码如何通用?
答案 0 :(得分:5)
asm-generic是函数的泛型版本,通常以汇编语言编写,但以纯C编码,没有任何内联汇编。它可能是为了将内核轻松移植到新平台,并将平台独立的公共代码保存在一个地方。