5 ms·
Darwin's entire userland was basically a direct rip from FreeBSD, the networking stack as well. Which is fine, that's perfectly acceptable given the license, b
by tw04 6y ago
Darwin's entire userland was basically a direct rip from FreeBSD, the networking stack as well. Which is fine, that's perfectly acceptable given the license, but it's generally considered good form to actually donate back to the project when you do that, especially when you're worth what Apple is.
All that is to say: claiming Apple just built on "generic BSD" isn't really fair or accurate.
https://en.wikipedia.org/wiki/Darwin_%28operating_system%29 https://en.wikipedia.org/wiki/Darwin_%28operating_system%29
- p_l 6y agoTheir userland is still majorly based on OSFMK, not FreeBSD - to the point where exactly that assumption recently bit me when trying to run program written for open source BSDs that assumed certain 1993-vintage userland stuff existed on every BSD-declaring system. Darwin/XNU/macOS are not FreeBSD based, nor NetBSD based, nor OpenBSD based, even if in places it can take pieces of their code.
- heavyset_go 6y ago> Darwin/XNU/macOS are not FreeBSD based, nor NetBSD based, nor OpenBSD based, even if in places it can take pieces of their code. Apple disagrees[1]: > XNU is a hybrid kernel combining the Mach kernel developed at Carnegie Mellon University with components from FreeBSD From Apple's kernel docs[2]: > Darwin is based on proven technology from many sources. A large portion of this technology is derived from FreeBSD, a version of 4.4BSD that offers advanced networking, performance, security, and compatibility features. XNU has a "personalities" concept, and the BSD personality is mostly just FreeBSD[2]: > Above the Mach layer, the BSD layer provides “OS personality” APIs and services. The BSD layer is based on the BSD kernel, primarily FreeBSD. Even the syscall interface is from FreeBSD. Here's a diagram of macOS architecture[3]. [1] https://github.com/apple/darwin-xnu https://github.com/apple/darwin-xnu [2] https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/Architecture/Architecture.html https://developer.apple.com/library/archive/documentation/Da... [3] https://en.wikipedia.org/wiki/File:Diagram_of_Mac_OS_X_architecture.svg https://en.wikipedia.org/wiki/File:Diagram_of_Mac_OS_X_archi...