我怎样才能找到对应于特定 OS X 版本的 xnu 版本?

How can I find the xnu version that corresponds to a particular OS X release?

我试图在旧版本的 OS X 中找到支持的系统调用列表。

对于每个版本的 XNU 内核,都有一个 syscalls.master 文件可以满足我的需求(例如,here 是 XNU 2782.20.48 的文件)。我可以通过 uname -a 查看我当前的 XNU 版本。但是我不知道如何找到 OS X.

的历史版本中包含什么版本的 XNU

是否有某个列表将 OS X 版本号(例如 10.9.0)或内部版本号映射到 XNU 版本号?

不完美,但您可以从 Apple 开源版本列表中解决:

http://www.opensource.apple.com/

对于每个 linked 版本(例如 http://www.opensource.apple.com/release/os-x-10105/ 对应 OSX 10.10.5),XNU 版本的页面底部有一个 link对于此版本(例如,xnu-2782.40.9)。

@pajp 已努力将这些 tarball 转换为可用的 git 存储库,网址为:

https://github.com/aosm/xnu

为 OSX 版本和 XNU 版本添加适当的标签,您可以使用它们来组合列表。