“Apple has brought BSD back into the public eye by making it the foundation of its Darwin operating system, which is in turn the foundation of the OS X software platform. Apple is a strong believer in the orchestral model; Darwin distributions are skinny, reflecting Apple’s willingness to make choices among dozens or hundreds of contenders in each functional category. Apple’s selections become part of OS X. More than any commercial software platform, OS X is unified, consistent. And soon it will be Unix.”
A log of fluff and metaphors in that article. Not particularly deep technically…but I agree with the premise.
I always thought it was a raw deal the way FreeBSD took a back seat to Linux.
like this.
wtf is this:
“Sun unquestionably traded performance for compatibility when it opened Solaris, a move that pleased open source advocates but that made 386-optimised Linux look far faster by comparison”
386 optimized Linux? – I could have sworn we had at least moved along to 586 in the linux world, what about PPC linux or x64 linux hell what about Ubuntu Linux on SPARC. Try running these ‘optimized’ distro’s on your 386 and see how you fare.
How does opening a product trade performance for compatability?
And dont get me started on the performance thing…sure Solaris earns the ‘slowaris’ title on 32 bit machines, however on x64 machines Solaris breaks all kinds of benchmark records.
The x86 flavors of Fedora and Ubuntu, among many others are built as i386 with little or no compile-time optimizations. So, to answer you question: no, we haven’t moved on to 586 in the Linux world.
What about those source based distros? I think they might use some architecture specific optimizations
“””The x86 flavors of Fedora and Ubuntu, among many others are built as i386 with little or no compile-time optimizations.”””
Why won’t this silly myth just die?!!
Fedora is optimized for P4. Testing has shown that this is often a small win even for athlons. I believe the *instruction set* used is i686 now. For a long time, the instruction set was i486 or i586, which actually only makes a difference of a percent or two. Fedora’s kernel is optimized for size which is interesting, and thought to be a win in many cases due to better use of processor cache.
On Ubuntu, I’m not certain of the details. The kernel comes in various versions with processor specific optimizations.
But absolutely *no one* compiles a Linux distro with 386 optimizations. Why *would* they? Why do people persist in thinking that they do?
Edited 2006-09-19 22:55
That’s just plain false. Fedora and Ubuntu, in their x86 flavors, use march=i586 and mtune=pentium4, with O2 optimizations. This means the following:
The packages are compiled to use pentium-only instructions.
The code is scheduled and tuned for Pentium 4 processors.
All-compile time optimizations are applied that do not drastically increase compile time or code size.
A few packages, notably the kernel and the libc as well as things like OpenSSL, also have a march=pentium4 or march=k8 version, which allows GCC to use instructions not present in the pentium. Very few packages benefit from this, because outside the addition of SSE, very few instructions have been added since the pentium.
I stand corrected about Fedora.
Ubuntu still appears (default kernel flavor, the vast majority of regular users aren’t going to try and find a a pentium 4 build in apt to install) to be built for 386 at least in the kernel.
After doing a bit of digging in apt it appears that Ubuntu does ship with i686 compiled versions of libc6 (GNU C Library). This requires a 686 kernel to function. Ironically Ubuntu’s default shipping x86 kernel appears to be the 386 version. Still though, few people are going to go digging to install the 686 kernel.
🙂
“””Ubuntu still appears (default kernel flavor, the vast majority of regular users aren’t going to try and find a a pentium 4 build in apt to install) to be built for 386 at least in the kernel.”””
I haven’t really researched Ubuntu’s optmimization flags. On my own Dapper system, I just grabbed the k7 kernel and went on.
However, I would be extremely surprised if that 386 default kernel were not optimized for either 686 or P4.
The instruction set is likely 486 or 586. I don’t believe that the kernel will compile for 386 anymore.
At any rate:
1. The processor being optimized for is, in general, far more important than the instruction set used.
2. Most people radically overestimate the benefits to be had from processor specific optimizations.
3. Processor optimizations are a black art. It’s not uncommon to find that particular binaries “optimized for” a processor are slower on that processor than binaries optimized for another processor.
But I think that you have hit on the reason that so many people have misconceptions in this area.
The naming conventions are misleading.
What I said is true of both Fedora and Ubuntu. Pay no attention to the “.i386.deb”. “i386” is the name of the architecture, not the minimum CPU. As of 2005, Ubuntu was compiled to use 486 instructions, with code tuned for the Pentium 4 CPU. That means aside from not using a few instructions introduced in the P6 instruction set, the code is optimized for the Pentium 4. It should be noted that the reason the minimum requirement is the 486 not the P6 is because some current-gen CPUs, like VIAs, do not implement the P6’s CMOV instruction.
And dont get me started on the performance thing…sure Solaris earns the ‘slowaris’ title on 32 bit machines, however on x64 machines Solaris breaks all kinds of benchmark records.
Actually, that’s not true either. The “slowaris” term doesn’t fit at all anymore, even under 32-bit. Solaris actually beats Linux distributions even in 32-bit *in specific cases*, yes it’s slown in some cases, but the moniker “slowaris” was from the much earlier relase of Solaris x86, not Solaris 10. Solaris 10 is significantly better performing than any other Solaris release, 32-bit or 64-bit.
Solaris fails to install faster than any other OS on my hardware.
Solaris fails to install faster than any other OS on my hardware.
Yeah, cause that’s a great measure of a system’s performance. :rolleyes:
Come now, can’t a man wisecrack once in a while? 🙂
But nobody asked you.
Since when is Darwin based on FreeBSD? It uses a unique kernel developed from Mach code. That is not FreeBSD in whole or part. The OS X graphical environment is totally designed in-house at Apple. That is not FreeBSD in whole or part. What’s left? If there are a few userland utilities that come from FreeBSD, what does that really matter in the big picture?
Furthermore, FreeBSD is not “Unix” — Unix is a trademark that represents a certification program, which FreeBSD is not currently certified for. An OS does not need to have any original Unix System V code to carry the Unix trademark, so the old argument that 386BSD shared code with SVR4 is nonsense. That argument is ridiculous anyway because there is likely very little original 386BSD code left in FreeBSD.
Edited 2006-09-19 22:03
Since when is Darwin based on FreeBSD?
Since it’s inception, I guess:
http://marc.theaimsgroup.com/?t=115758351000002&r=1&w=2
Read the whole thread, it’s quite interesting.
Okay, I read it, and the last message in the discussion said this: “The vast majority of code in the Mac OS X kernel is device driver code in IOKit, which is from neither BSD nor Mach.” And: “I think it’s reasonable to argue that Mac OS X is significantly influenced, both in architecture and code, by both Mach and BSD, but pretty inaccurate to state that it adopts one architecture over the other — it really adopts both.”
“Significantly influenced” is one thing, and “based on” is something else. GNU was significantly influenced by Unix, but it was not based on it. Linux was significantly influenced by Minix, but it was not based on it. OpenBSD, however, was based on NetBSD.
“Significantly influenced” is one thing, and “based on” is something else.
Really, read all the messages. When basically all of userland, chunks of VM/VFS and all the networking stuff comes from FreeBSD, I’d call it “based on”.
edit: Also, we’re talking about the whole of the *nix OS here, not just the kernel. This is not Linux… the OS is a unit.
Edited 2006-09-20 17:10
Darwin is *not* based on FreeBSD.
Darwin is a rather eclectic kernel. Before Apple bought it, it was NeXTStep, and based on Mach 2.x with 4.3BSD. Years of NeXT-specific changes were made to this basic base. For example, its very difficult to trace where the libc comes from, as it has been modified tremendously. As Apple worked on OS X, they updated the Mach bits to Mach 3.x, and the BSD bits to 4.4BSD-Lite2. As time went on, they replaced pieces of the original 4.4BSD code with FreeBSD and NetBSD code. For example, the VFS and network stack were replaced with FreeBSD 4.x code, and the utilities were replaced with FreeBSD 5.x code. With Tiger, Apple started doing their own modifications to the code, and as a result things like Darwin’s fine-grained locking subsystem are custom Apple code.
In the end, the “based on” measure is a bit meaningless for a kernel like Darwin. Usually, when we’re talking about “based on”, we’re interested not so much in lineage, but performance and features. If an OS is based on FreeBSD, I can expect such and such performance, based on what I know of FreeBSD. For a chimera like Darwin, that’s not really applicable. The performance depends heavily on the subsystem in question. VM performance, for example, is like Mach because the VM is Mach 3.x code. Network performance is more like FreeBSD, because the network is FreeBSD 4.x code. That gives a much better picture of the true nature of OS X. Moreover, saying its “based on FreeBSD” is being far too generous. If it really was, in that the FreeBSD codebase really was the foundation for Darwin, OS X would be a lot faster, featureful, and scalable.
As for this article, what’s most likely happening is that the libc is being pulled in from a modern BSD. The modern BSDs are highly compliant with the various UNIX specifications, they’re just not certified as UNIX.
The thread repeatedly states that the OSX kernel isn’t based on the BSD kernel. It’s based on Mach which took a few bits from BSD.
The proof of the pudding is that the OSX kernel needs a BSD compatibility layer to work with the BSD userland that comes with the OS.
Ok I missed a couple of comments posts
Interesting, there’s more BSD in it than I thought and less Mach, but it’s still neither a Mach kernel or a BSD kernel.
That is a statement that is inaccurate. Darwin is all BSD, all the time
4.4BSD-Lite2, is of course BSD, as are FreeBSD and NetBSD. Mach is also BSD. Mach was developed starting from the 4.2BSD kernel. Mach was written into 4.2BSD, starting from the inside-out. Much code migrated betwen Mach and BSD in the early years. For example, the “BSD VM” that was introduced in 4.4BSD, and still exists in heavily-modified form in FreeBSD and OpenBSD is the Mach 2.0 VM.
Seriously ? Since when is anything BSD’s about the truth ?
Apple MAC OS X is not BSD at all , its based on it but they made sure to switch it to something else and they are the one blocking there contribution , drivers , software and improvment and hurting the commercial BSD’s who have not adapted to those traitors and got taken entirely over due to there license and own hubris.
If one read the Linux kernel mailing list and driver and software that come from it almost all of them are dual licensed BSD …
We contribute money to there failing projects …
We give access to our hardware and labs …
And we GNU/Linux and the Linux Kernel are the ennemy.
Please …
The real truth that those coward , traitor , thief and liar dont like is that BSD is still somewhat relevant because unlike all the others we paid , contributed and supported there platfrom will we did ours.
Our drivers , software , derivatives and improvments have all been given and made working on there BSD’s.
Paranoia and fabulation is there main tools against GNU/Linux. We need to cut them off entirely for a year or two and see how well they fare.
We should threat them like there fibble minded selected hero do …
Take everything they have to offer , and give absolutely nothing back and say there inferior every single seconds and chance we got.
Nah , where not like them at all , we are the real best and the better one , will keep helping them even do they dont deserve it at all.
…All this shows is how meaningless the Unix *trademark* has become. Windows is Posix compliant (or two-thirds Posix compliant, dependent on who you talk to), and now MacOS X? Despite the fact that neither uses the X Window System as its native GUI, neither uses NIS and NFS for user management and file sharing, and every X server I’ve ever used on Windows has sucked. Which is different from saying both that Windows sucks, and every application I’ve ever used on Windows has sucked, which they haven’t.
Despite the fact that neither uses the X Window System as its native GUI, neither uses NIS and NFS for user management and file sharing,
True, X is not the preferred GUI on OS X. However, X runs on Darwin, and does not need to run on top of Aqua. Indeed, it can’t if you’re just running Darwin without all the extra bits that make OS X.
NIS is a Sun technology, so I wouldn’t go so far as to say it’s a requirement for Unix. I’m sure someone has run it on Darwin, though.
NFS support comes with OS X. I do use it, although most Mac users (myself included) tend to use SMB or AFP instead. I think AFP support is part of OS X, though, so NFS would be the way to go if you’re running vanilla Darwin.
The only real solid argument I could see to arguing that Darwin isn’t a unix is just that it includes all the stuff that comes with the Mach layer of the kernel, so there are some Darwin apps running around that use Mach threads and whatnot and therefore aren’t really source-compatible with other Unixes. But then, if you’re not allowed to add features on top of what is traditionally considered part of Unix, I don’t think there are any real unixes anymore.
True, X is not the preferred GUI on OS X. However, X runs on Darwin, and does not need to run on top of Aqua. Indeed, it can’t if you’re just running Darwin without all the extra bits that make OS X.
I’m sure that’s true, however it’s not Darwin that’s (officially) becoming Unix (according to the article), but OS X.
NIS is a Sun technology, so I wouldn’t go so far as to say it’s a requirement for Unix. I’m sure someone has run it on Darwin, though.
NIS and NFS are both Sun technologies, but I understand they are both part of the Single Unix specification. Besides which, they are open standards.
The only real solid argument I could see to arguing that Darwin isn’t a unix is just that it includes all the stuff that comes with the Mach layer of the kernel, so there are some Darwin apps running around that use Mach threads and whatnot and therefore aren’t really source-compatible with other Unixes. But then, if you’re not allowed to add features on top of what is traditionally considered part of Unix, I don’t think there are any real unixes anymore.
Which was my point! Not that I object to OS X becoming “a UNIX”, but that I object to the trademark definition of “a UNIX”.
“Despite the fact that neither uses the X Window System as its native GUI, neither uses NIS and NFS for user management and file sharing, and every X server I’ve ever used on Windows has sucked”
Nor X nor NIS nor NFS has anything to do with POSIX, the Single Unix Specification or being UNIX certified.
Every operating system/distro is comparible to an orchestra. Ubuntu uses one combination of soloists; Fedora another; OSX yet another.
By this guy’s argument, there should only ever be one available orchestra. Or, more colloquially, he would argue that when you walk into a music store, there should only be one band whose CDs you could purchase. Remixing songs would be out of the question too, I suppose. And Indy music—definitely out! His argument that Linux has a “dim future” because it offers more choice is about as thick as arguing that any particular band or composer has a dim future for pretty much the same reason. Some people want mainstream, homogenous (read monotonous, identical-sounding) music; some people want something a bit more interesting. Some people like fusion and jazz (Linux and BSD), some people like rock (OSX), some people like pop (Windows), and some, of course, like classical (sh, heh).
This article is nonsense. I know that OSX users like to promote the image of being arty and snobbish, but that’s no excuse for disguising technical incompetence and ignorance behind flowery, creative-sounding, thoroughly pompous analogies.
Edited 2006-09-19 23:52
Technical incompetence? A good operating system shouldn’t need technical expertise to copy or delete or rename a file. It shouldn’t require someone to patch the source code of an application and build the application in order to edit a document.
If you choose to learn more about the operating system in order to congratulate yourself, that’s great, but graphic designers and photographers and technical writers and television producers don’t necessarily want or need to know what goes on behind the scenes.
In object-oriented programming, we write classes to handle the everyday things and we create and destroy objects based on them so we don’t have to be bothered with the details each and every time. We end up focusing on the problem instead of the details of the programming language and most times, the machine details. Think about it–it’s the same kind of thing.
Cmon people. Bickering about i386/i586 and if solaris is better. Read the article again. The author has written a load of rubbish. How about these quotes?
“Linux has a dim future”
“…central to my other work on the subject” (Work? Haha!)
“There are hundreds of soloists on a Red Hat or Suse distribution, and it’s left to the audience to decide which ones to listen to and to get them to play together.” (Once again choice is bad. I don’t like your Orchestral music. Suck on that)
“…OS X is unified and consistent. And soon it will be Unix.” (And that is a good thing then is it?)
If you ask me this looks like another attempt to justify OSX as a better choice for something or rather. Apple doesn’t ever need to defend itself, it simply has enough “genius” followers like this one to do the work and cop the flaming for them.
Your right about the the artilce being a load of “rubbish”.
“Those intimately familiar with both Unix and OS X know that this was necessary to create the ultimate platform — one that is faithful to the Unix tradition and to the users and operators of computer systems, networks and storage.”
Just exactly where did this come from? It was necessary to create the ultimate platform? Necessary for who? There is very little immeadiately verifiable information in the “article” and the musical metaphores only make it worse.
You want to know what this is? Fan Boy FUD, period.
I would like to know who $inspired$ him to write this? I will admit that I am used to the Apple fan boy artilces but not the straight up FUD.
” I’ve had trouble putting across the basis for my belief that in IT and professional settings, Linux has a dim future.”
Yeah, there’s a reason for that. It is because you do not know what your talking about, and it is painfully evident. This entire piece is a not very well veiled attempt to spead FUD about Linux and Unix, with useless comparisions and debatable facts.
“You want to know what this is? Fan Boy FUD, period.”
Yes, this yet is another dreadful propaganda piece. Its reminiscent of the stuff put out by Party hacks in the days of the cold war. You have the rather flowery literary metaphors to induce a vauge and unthinking consent about something uncontroversial. Then finally at the end we slip in two propositions for which no argument has been made, but which are essential elements of the Party line. A bit like letting the public get a glimpse of the knuckleduster. In the present case the two elements are:
1) Choice is bad, and you do not want it. What you want is for the Party to choose for you. This is what “Darwin distributions are skinny, reflecting Apple’s willingness to make choices among dozens or hundreds of contenders in each functional category” decoded means. Its a constant theme among Apple propagandists. What you want and need is for Apple to choose for you.
Sometimes this is put as, you need one good X Y or Z, instead of a choice between half a dozen bad ones. As if this was going to be the choice, rather than between half a dozen better ones. Or as if you actually could get to one good one, without competing choices.
2) OSX is the ultimate stage of development of the OS. This is fairly explicit in “this was necessary to create the ultimate platform … Darwin and BSD will take computing to the next level…” All other systems will doubtless be left on the rubbish bin of history, or in this metaphor, playing in village halls around the land.
I don’t know how anyone else reacts to this. Maybe its being too familiar with clever people writing intellectually dishonest propaganda of other sorts. For me, it just makes the skin crawl.
You are the only one that has actually read the article.The prime according the article is Orchestra versus soloist.
The license is irrelevant. If you knew your history, you’d know that the code in FreeBSD has a better claim for being Unix than any other derivative. FreeBSD is the direct descendant of the code base that became System 7.
Otherwise, the discussion is pointless.
http://en.wikipedia.org/wiki/Single_UNIX_Specification
Computerworld may as well be his blog. What I dont get about articles like this, is why they dont deal with the historical fact that Linux is more popular. Similar in ways to how linux has always kowtowed to windows, its never about technology per se, its always a mix including buisness, politics and marketing.
This article just constitutes the authors desires and nothing more. He gives no real reason for any of us to believe he is onto something. Just a nice metaphore. But are orchestra’s even that popular anymore … ? Forgive my ignorance, for I am young.
Edited 2006-09-20 02:02
My only problems with this article is the OS X doesn’t want to be a Unix. The only way I can access the system files, without using a weird hack that makes everything look like it’s a visible hidden file, is from the command line. That’s not really the purpose of a desktop environment in *ixs.
From using OS X for the past year or so, it seems to me that Unix is just a buzzword for Apple to sling around and use to cash in on in the hip and trendy category. It’s the Unix for people who are too dumb to use a real Unix but still want to say they use a Unix.
I thought the Darwin project was dieing.
As a BSD fan, I think it’s nice that they decided to nab code from FreeBSD and gave it a publicity boost, even though it was really their only option. I’d imagine they would rather have had Linux under the hood, since it is more trendy, but the GPL wouldn’t allow what they wanted to do.
The only way I can access the system files, without using a weird hack that makes everything look like it’s a visible hidden file, is from the command line.
Ten — or even five — years ago, any and every *nix proponent would scoff at using anything but the command line. It’s interesting to see how attitudes have changed.
In any case, the Finder displaying things differently from Konquerer hardly makes OS X less UNIX-like.
I thought the Darwin project was dieing.
I don’t know to what you refer. Darwin is the core of OS X — it’s not going away.
As a BSD fan, I think it’s nice that they decided to nab code from FreeBSD and gave it a publicity boost, even though it was really their only option. I’d imagine they would rather have had Linux under the hood, since it is more trendy, but the GPL wouldn’t allow what they wanted to do.
Apple could easily have chosen to go with Linux as the kernel — the only licensing issue would be with a few drivers. Remember, it’s perfectly legal to run closed source proprietary software on Linux; it’s even legal to ship closed source and GPL software together. Apple chose to build Darwin on the BSD/Mach hybrid kernel because that’s NeXT had already done.
Ten — or even five — years ago, any and every *nix proponent would scoff at using anything but the command line. It’s interesting to see how attitudes have changed.
I’m not a traditional *ix person; I grew up with Windows. I have no problem using a command line, but if I have a working GUI then why not take advantage of some of it’s niceties. One of those niceties is being able to
browse to a file.
I don’t know to what you refer. Darwin is the core of OS X — it’s not going away.
That was my mistake. I confused OpenDarwin shutting down with regular Darwin, and Apple locking their source for a while.
Apple chose to build Darwin on the BSD/Mach hybrid kernel because that’s NeXT had already done.
The way I understood it was that NeXT was based on Mach then Apple started loading FreeBSD code on top to modernize it. Yeah, they could have used whatever they wanted to really.
If they had used Linux though they would have had to contribute whatever hacks they did to it back into the source tree, but with BSD they have the ability to do what they want with it. Less legal trouble for them if some code happens to slip into something else.
It is funny to see how every body are always bashing mac users for zealotery but look at here.
An article talking about Solaris, FreeBSD and Mac OS X and dozens of linux zealots come to criticize what they can (because as usual, everybody is wrong but not them).
Solaris : 1
FreeBSD : 1
Mac OS X : 6
Linux ( should mostly read GNU/Linux ) : 7
Thats the numbers of time the OS’s are mentionned.
Dont let reality get in the way of your usual lies …
lol
Moulinneuf talking about neutrality. What a joke !
Okay… I have a secret. I may complain about OSX and poke fun at it occasionaly, but I really don’t think it’s all that bad of a system.
But then I stumble accross fluff like this article from Mac fanboys. Non-technical bullshit with no bearing on reality being preached by some elitist jerkhole, topped of with embaressingly bad analogies.
And well… It’s convinced me to never by anything made by apple for fear of being associated with these trite morons.
to continue GNUDarwin????? (a truely BSD operating system)
This isn’t the only article I have read that says “Leopard” will be a true UNIX. What does it take for an OS to go from UNIX-like to being a true UNIX?
so we should all repent for our linux sin? we have backslid to using a “dirty” clone of unix
is that the premise????