Darwin XNU 介绍
XNU内核是Darwin操作系统的一部分,可在macOS和iOS操作系统中使用。 XNU是X is Not Unix的缩写。
XNU是一个混合内核,它结合了卡内基梅隆大学开发的Mach内核,FreeBSD的组件以及用于编写称为IOKit的驱动程序的C ++ API。
XNU在x86_64上单处理器和多处理器配置运行。
XNU 源码树
- config - 导出的api的配置以支持受支持的体系结构和平台
- SETUP - 用于配置内核,版本控制和kextsymbol管理的基本工具集。
- EXTERNAL_HEADERS - 标头来自其他项目,以避免在构建时出现依赖循环。 更新源时,应定期同步这些标头。
- libkern - 用于处理驱动程序和kext的C ++ IOKit库代码。
- libsa - 用于启动的内核引导程序代码
- libsyscall - 用户空间程序的syscall库接口
- libkdd - 用户库的源,用于解析内核数据(如内核组块数据)。
- makedefs - 顶层规则并为内核构建定义。
- osfmk - 基于Mach内核的子系统
- pexpert - 平台特定的代码,例如中断处理,原子等。
- security - 强制访问检查策略接口和相关实施。
- bsd - BSD子系统代码
- tools - 一组用于测试,调试和配置内核的实用程序。
Darwin XNU 官网
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。