3 ms·
Pretty sure OS X is based on the Mach/XNU kernel and Darwin, not FreeBSD.
by mattkevan 5y ago
Pretty sure OS X is based on the Mach/XNU kernel and Darwin, not FreeBSD.
- kaladin-jasnah 5y agoI thought there was _some_ influence on the kernel from FreeBSD, even if not that much. I am aware the kernel is not the FreeBSD one, though. https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/BSD/BSD.html#//apple_ref/doc/uid/TP30000905-CH214-TPXREF101 https://developer.apple.com/library/archive/documentation/Da... seems to have information on this.
- astrange 5y agoThe kernel shares some pieces with FreeBSD/NetBSD, but they're mostly very old and have developed separately since then. The userland and libc are actually a lot more similar and some pieces are even up to date with them.
- smoldesu 5y agoIt's a bit of an amalgam, and it honestly depends on which version of OSX you're talking about. Mach itself was designed as an improvement over BSD, and it was more or less a microkernel developed around BSD concepts with binary compatibility. My understanding is that as time went on, performance issues and security concerns forced Apple to poach more and more BSD code onto Mach, which leaves us with the pretty messy codebase they use today. Supposedly (?) a lot of the zombie code is being cleaned up internally, but it's been an ongoing, multi-year process for Apple, probably made even more difficult with their bonafide UNIX certification.
- kaladin-jasnah 5y agoThank you for the clear and concise explanation (: It was very informative.