2016-11-27 56 views
1

系统调用(2)似乎不是POSIX或C标准库的一部分。它是否是任何标准的一部分?是syscall(2)标准的一部分吗?

是否所有的libc实现都实现了系统调用(2)?如果它不是任何标准(如POSIX)的一部分,是否所有libc实现都提供了系统调用(2),这只是一个约定?

+1

即使在Linux上,“系统调用”在平台之间相当不适合移植。例如。一些体系结构通过'socketcall'多路复用,有些则不。 – o11c

回答

4

正在搜索POSIX在线收益率没有结果系统调用

涂抹离线版本也不会。

POSIX并不真正关心系统调用与纯粹的用户空间函数本身。 (它在介绍中提到它只关心标准化函数的语义,并不关心这些函数是否包含系统调用。)

1

我不这么认为,因为system call的概念非常具体。

(我猜的 - 但真的不知道 - 这里面的Windows可选的“POSIX”的接口可能没有syscall(2)

然而,过去从20世纪80年代Unix实现了一些syscall(2)事情。