XNU, Darwin, macOS/iOS/visionOS/watchOS/tvOS
Posted by binglongx on July 8, 2025
| Brief | Description | Components | History | Other | |
| XNU | OS kernel | Hybrid kernel design with microkernel and monolithic kernel | – Mach/OSFMK: task management, IPC(Mach ports…), scheduling etc; – BSD: Unix APIs, file systems, network stack, user permission, etc; – IOKit: object-oriented C++ drivers | originally part of NeXTSTEP | Open source |
| Darwin | Core of OS | XNU + core Unix utilities + low-level system frameworks | – XNU: kernel; – BSD userland – libSystem: libc, libpthread, libm, etc; – launchd: service manager; – DriverKit/IOKit: frameworks to write drivers, in kernel (IOKit) or user space (DriverKit) | combines NeXTSTEP, Mach 3.0 and FreeBSD components. | Open source |
| macOS/iOS/visionOS/watchOS/tvOS/… | Full Unix-like OS | Full OS for general end users | – Darwin: core; – Apple frameworks: Cocoa, Metal, etc; – GUI; – system apps: Safari, Finder etc. | Closed source |
Links:
Leave a comment