What version of BSD is in Tiger?

Posted:
in macOS edited January 2014
I am surprised no one, not even Apple has discussed what version of BSD is in Tiger. Anyone know?

Comments

  • Reply 1 of 14
    dhagan4755dhagan4755 Posts: 2,148member
    I Think it's version 5, but like you, I have not really heard any mention of it, and I'm not quite sure.
  • Reply 2 of 14
    There is no such thing as a version number for "BSD"... There never really was, it was a loose collection of hacks to Bell/AT&T's product of the time.



    MacOS X's *nix layer is based on a number of different BSD derivatives, most prominently FreeBSD and OpenBSD. NeXT was more directly based on a old version of FreeBSD (with major changes), and there were a number of efforts to get the userland more in line with changes made in FreeBSD 4.9... but there is so much different in MacOS X that you can't simply say that "10.4 is BSD 5", such a statement is nonsensical.



    Most of the *nix level work that has been publicized has been getting the command line tools like cp, mv, and the like to understand resource forks. There has also been a lot of movement of code (or ideas) from MacOS X into FreeBSD, like the whole KEXT structure that is being implemented in FreeBSD.
  • Reply 3 of 14
    jaredjared Posts: 639member
    Quote:

    Originally posted by Karl Kuehn

    There is no such thing as a version number for "BSD"... There never really was, it was a loose collection of hacks to Bell/AT&T's product of the time.



    MacOS X's *nix layer is based on a number of different BSD derivatives, most prominently FreeBSD and OpenBSD. NeXT was more directly based on a old version of FreeBSD (with major changes), and there were a number of efforts to get the userland more in line with changes made in FreeBSD 4.9... but there is so much different in MacOS X that you can't simply say that "10.4 is BSD 5", such a statement is nonsensical.



    Most of the *nix level work that has been publicized has been getting the command line tools like cp, mv, and the like to understand resource forks. There has also been a lot of movement of code (or ideas) from MacOS X into FreeBSD, like the whole KEXT structure that is being implemented in FreeBSD.




    Okay well aside from the technicalities of the versioning, Apple has marketed that Panther was based on FreeBSD 5....
  • Reply 4 of 14
    hirohiro Posts: 2,663member
    Quote:

    Originally posted by Karl Kuehn

    There is no such thing as a version number for "BSD"... There never really was, it was a loose collection of hacks to Bell/AT&T's product of the time.



    I guess http://www.freebsd.org/ , http://www.netbsd.org and http://www.openbsd.org/ never got the memo to stop version numbers.



    The complete rewrite of the upper/lower layer locking mechanisms in FreeBSD 5.0+ must be chopped liver too. (Released last November). Something Apple has mentioned working on to help with the OS X beachballs.



    Quote:

    MacOS X's *nix layer is based on a number of different BSD derivatives, most prominently FreeBSD and OpenBSD. NeXT was more directly based on a old version of FreeBSD (with major changes), and there were a number of efforts to get the userland more in line with changes made in FreeBSD 4.9... but there is so much different in MacOS X that you can't simply say that "10.4 is BSD 5", such a statement is nonsensical.



    Most of the *nix level work that has been publicized has been getting the command line tools like cp, mv, and the like to understand resource forks. There has also been a lot of movement of code (or ideas) from MacOS X into FreeBSD, like the whole KEXT structure that is being implemented in FreeBSD.




    Also the "nonsensicality" statement is incorrect as Apple touts command and Unix library compatibility with various FreeBSD version numbers. A VERY important trend to continue for those who port software across many UNIX platforms.
  • Reply 5 of 14
    kickahakickaha Posts: 8,760member
    Quote:

    Originally posted by Hiro

    I guess http://www.freebsd.org/ , http://www.netbsd.org and http://www.openbsd.org/ never got the memo to stop version numbers.



    Well that was an excellent example of missing the point utterly...



    There is no 'BSD' project anymore, and it never really had much in the way of solid versioning. There are several *BSD variants, each of which has their own versioning number, and from each Apple takes bits and pieces.



    To ask 'what version of BSD is under Tiger' is an incomplete question. 'Which versions of the various BSD projects have been pulled from to make the Darwin layer under Tiger?' would be a complete question. Yeah, one could extrapolate what the question poser *really* probably meant, but I think it's better to educate someone along the way, don't you?



    FreeBSD 5 is probably the largest code base that they have used, and I know that they've worked hard to incorporate the latest userland changes in FreeBSD 5. I don't believe that NetBSD or OpenBSD have undergone such large changes recently.
  • Reply 6 of 14
    I think the question is what version of Darwin is Tiger based on!
  • Reply 7 of 14
    Quote:

    Originally posted by Code Master

    I think the question is what version of Darwin is Tiger based on!



    Apple always posts a new version of Darwin a few weeks after a new version of MacOS X goes out the door... so the answer is: a version not yet released.
  • Reply 8 of 14
    hirohiro Posts: 2,663member
    Quote:

    Originally posted by Kickaha

    Well that was an excellent example of missing the point utterly...



    Not in the least. You miss the mark as bad as karl does. Just because Cal Berkeley isn't in charge anymore doesn't mean the BSD projects are dead, just different. Darwin adapted/adapts components from all three, FreeBSD being the most prevalent in Darwin and actively developed by it's community. And all three are very solid in the versioning department if you want to use their default systems.



    Quote:

    Originally posted by Kickaha

    To ask 'what version of BSD is under Tiger' is an incomplete question. 'Which versions of the various BSD projects have been pulled from to make the Darwin layer under Tiger?' would be a complete question. Yeah, one could extrapolate what the question poser *really* probably meant, but I think it's better to educate someone along the way, don't you?



    Well first off the response was to a poster who obfuscated the issue in the first place, secondly I did point towards the FreeBSD 5.0+ base. Restating the question might have made that a bit more explicit, but even without restating it does actually go most of the way to swagging an answer to Jared's Q.



    I doubt it's a coincidence FreeBSD has spent several years as a project on fine-grained locking between upper/lower layers for the 5.x release series to be more relevant on n-way machines where n > 2; FreeBSD 5.3 finally having re-entrant network code (something OS X and Safari desperately needs); Apple touting finer grained funnels in Tiger's Darwin layer as a performance bottleneck reduction; Plus Jordan Hubbard working at Apple and keeping involved with FreeBSD.



    NetBSD/OpenBSD both have point releases in the recent past/near future but nothing like the changes to FreeBSD 5.x.



    Enough pontification that time around???
  • Reply 9 of 14
    Quote:

    Originally posted by Hiro

    Not in the least. You miss the mark as bad as karl does. Just because Cal Berkeley isn't in charge anymore doesn't mean the BSD projects are dead, just different. Darwin adapted/adapts components from all three, FreeBSD being the most prevalent in Darwin and actively developed by it's community. And all three are very solid in the versioning department if you want to use their default systems.





    No, your statement was off the mark. It implied that I somehow didn't acknowledge that BDS derivative projects were ongoing, when I clearly mentioned two of them (by the way... MacOS X is not really getting anything from the NetBSD project, which is why I did not mention them, or Dragonfly, or...).



    The whole point of my posting was that saying "MacOS X is version 5 BSD" is a nonsensical statement... even if it is in the marketing materials that it is similar to FreeBSD 5. Primarily because you have to be much more specific than "BSD" (a project that never had real version numbers), and secondly because it is normally implies that you can install any source packages from the distribution... which is patently false. Further, even substituting "FreeBSD" misleads the casual person into thinking that the structures (either kernal or directory... or even user management) are similar... which they are not.



    Then you ride in with a posting saying how FreeBSD (versions 4.11-5.3), OpenBSD (3.7), and NetBSD (2.0) somehow proves me wrong.. implying therefore that MacOS X is BDS 5... Is that the logic that we are supposed to believe? No. you just completely misinterpreted the whole conversation.



    Oh... and the non-sequiter about the changes in FreeBSD 5.3's kernel layer tend to strengthen my argument about trying to attach a "BSD" version number MacOS X. While the big picture ideas may be the same, and the players might even be the same, the structures are very different. And the implication that removing spin-locks from the kernel layer is going to significantly improve Safari performance makes me question whether you really know what those changes are about.
  • Reply 10 of 14
    kickahakickaha Posts: 8,760member
    Quote:

    Originally posted by Hiro

    Not in the least. You miss the mark as bad as karl does. Just because Cal Berkeley isn't in charge anymore doesn't mean the BSD projects are dead, just different. Darwin adapted/adapts components from all three, FreeBSD being the most prevalent in Darwin and actively developed by it's community. And all three are very solid in the versioning department if you want to use their default systems.



    Try this one: what numerical version of Unix does Tiger use?



    Same thing. It's a question that requires a lot of explaining to answer, ie, an incomplete question.
  • Reply 11 of 14
    hirohiro Posts: 2,663member
    karl, who said anything about spin locks? Let alone removing them. My heavens, anything that would remove a spin-lock from anywhere will help performance, busy-waiting being the resource hog it is. Alas removing things has absolutely nothing to do with adding a much higher locking granularity (more locks locking rather fewer things each) between the OS layers. But hey what do I know, I only teach this OS stuff three quarters a year, maybe if I could get just one more section I might understand what a lock is...



    Kickaha, there is a place for precision, and a place for generalization. But over-precision never gets the job done, it just wastes bits and bandwidth. And OS X does not use any flavor of UNIX, that would be a breach of trademark. It's only based on UNIX-like systems. I think the "Based on UNIX" badge trademark fight is still outstanding and Apples main point is the term UNIX is now generic, like kleenex (as opposed to Kleenex which is a brand). There did that help anything. I think not.



    Why don't we drop the alpha geek pedantics, it's easy to squeeze the frame of a situation so tight that no other viewpoints could possibly fit. And still we have nothing has said in direct contravention of my reasoned speculation on what will be the baseline BSD layer compatibility. And that's all it is, speculation, nothing really worth getting undies in a bundle over.
  • Reply 12 of 14
    kickahakickaha Posts: 8,760member
    Quote:

    Originally posted by Hiro

    And OS X does not use any flavor of UNIX, that would be a breach of trademark. It's only based on UNIX-like systems. ..... Why don't we drop the alpha geek pedantics,



    Pot, kettle...



    The point stands. Unix has forked multiple times over the years to the point where the only thing that means anything any more called 'Unix' is a silly trademark, and that's it. There is no 'Unix project'. Likewise, there is no 'BSD project'. Asking which version of either is in Tiger is equally meaningless. Yes, you bet you can extrapolate what the person asking probably meant... and even give a reasonable answer. But I fail to see why clarifying the situation is being an alpha geek when it is simply lending precision to the discussion, and educating the person asking.



    Karl's answer was direct, to the point, and illuminating. I'm sorry if you have a problem with that sort of communication. I certainly don't see the justification to try and argue that it is somehow inappropriate, particularly when it was delivered in a neutral and even tone, as Karl did. Frankly, we need more posts like that around here, and a lot less posing.



    As for wasting bits and bandwidth, pretty much everything after Karl's initial response in this thread has been a waste.
  • Reply 13 of 14
    elronelron Posts: 126member
    Quote:

    Originally posted by Karl Kuehn

    There is no such thing as a version number for "BSD"... There never really was, it was a loose collection of hacks to Bell/AT&T's product of the time.



    I'm just nit-picking, but wasn't FreeBSD originally based on Berkeley's 4.4BSD-lite?
  • Reply 14 of 14
    hirohiro Posts: 2,663member
    Don't bother, facts are useless. The bunker mentality has commenced.
Sign In or Register to comment.