“linux-2.6.3x.x/include/asm-generic/”是用来做什么的?

6
我的操作系统书上说,如果你想要向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相关的代码如何变得通用?
1个回答

5

asm-generic是通常用汇编语言编写的函数的通用版本,但是它是用纯C编写的,没有任何内联汇编。它可能是为了方便将内核移植到新平台,并将平台无关的公共代码放在一个地方。


你的意思是:asm-generic 是一些通用函数的版本,通常不是用汇编语言编写的,而是用普通的 C 语言编写的。 - skytree

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接