3 ms·
I think there's more to the relationship than you give credit for. Even FreeBSD's web pages list OSX as a descendant https://www.freebsd.org/projects/newbies.ht
by 0x0 12y ago
I think there's more to the relationship than you give credit for. Even FreeBSD's web pages list OSX as a descendant https://www.freebsd.org/projects/newbies.html https://www.freebsd.org/projects/newbies.html and several man pages in osx list freebsd as origin for various facilities.
- jlgaddis 12y agoAnd from apple.com: https://developer.apple.com/library/mac/documentation/Darwin/Conceptual/KernelProgramming/BSD/BSD.html https://developer.apple.com/library/mac/documentation/Darwin...
- threeseed 12y agoFrom what you posted: "Apple's Mac OS X is based in part on FreeBSD and includes a rich UNIX® foundation in addition to the proprietary Apple user interface" And I am in no way dismissing the relationship. I am just pointing out that Darwin was based on NeXtStep but incorporates a LOT of *BSD technologies. I used OSX Beta 1 and it was pretty far from a FreeBSD based OS. Lineage: http://en.wikipedia.org/wiki/Darwin_(operating_system)#mediaviewer/File:Unix_timeline.en.svg http://en.wikipedia.org/wiki/Darwin_(operating_system)#media...
- 0x0 12y agoAgreed for sure! But it does look like additional FreeBSD stuff was added as nextstep turned into darwin/osx. I found a couple of other articles, I didn't know Linus turned down the job offer from Steve Jobs before they hired that famous FreeBSD developer. It's funny to think how things might have turned out in an alternate reality :) http://www.wired.com/2013/08/jordan-hubbard/ http://www.wired.com/2013/08/jordan-hubbard/ It's also fascinating to try old versions of nextstep and rhapsody in virtual machines, you can really tell how osx traces straight back. Even the installer is so similar still, comparing nextstep 3 and yosemite (if you bring up the console window during its progress)
- justincormack 12y agoThere is some attempt to draw the relations in http://commons.wikimedia.org/wiki/File:Unix_history-simple.png http://commons.wikimedia.org/wiki/File:Unix_history-simple.p... FreeBSD is the main current source of stuff, but NextStep is much older.
- Q6T46nT668w6i3m 12y agoDarwin uses a Mach kernel. However, the POSIX interface inter-process communication, network infrastructure, et al. are from BSD.
- justsid 12y agoXNU really is a hybrid kernel. On the top level you see mostly FreeBSD which as you say brings in the VFS, networking, most of the userland and lots of other things you see in a POSIX conforming kernel. However, many things are actually nothing more than just shims down into the Mach part of the kernel, which brings the virtual memory, processes, thread model and other “low level” stuff. Processes for example can be worked with as if they were a FreeBSD flavoured process, but that will just call down into a shim which calls down into Mach. You can however also work with processes the Mach style, eg. through ports and mach_msg.
- dietrichepp 12y agoAs an illustration, there was a program which would crash the system (kernel panic) by using Mach interfaces to create a new thread, and then have that thread use standard Unix interfaces. Apparently, the shims were not properly initialized.