OSX (XNU) 系统调用实际记录在哪里?

Where are the OSX (XNU) syscalls actually documented?

我正在查看这里的 syscalls.master 文件,但根本没有记录在案。系统调用的文档是否存在?如果不是,为什么不呢?

我所说的文档是指对每个系统调用的作用及其参数含义的实际解释。

Apple 的立场是系统库是 API 和稳定的 ABI,系统调用不是。他们不鼓励直接使用它们,因为它们可以随着 OS.

的发布而改变。

因此,您将看到的最好的文档是第 2 部分中的手册页,或者在某些情况下,/usr/include 中的 headers。当然,您也可以查看系统调用实现的 XNU 源代码,了解它们是如何工作的。

请注意,syscalls.master 中的许多系统调用仅供内部使用,没有文档。此外,syscalls.master 仅包含 Unix 系统调用,例如,不包含 Mach 系统调用。