Unix for the Rest of Usby Peter Fraterdeus
By now, I'm sure you know that Mac OS X is built on top of BSD. But did you know that BSD is actually much older than its rival Linux and actually predates the personal computer? It's true.
How is it that this OS, billed by Steve Jobs as Apple's code base for the next decade, is built on a core that's decades old? To some, it might seem strange that such an important strategic building block depends on seemingly ancient technology.
The Unix foundation has been growing and adapting all through the last few decades, sprouting Sun's Solaris, IBM's AIX, and, of course, Linux, among other variations. In addition, Chairman Jobs used a Unix derivative on his NeXT boxen, back when a sleek, black magnesium cube was sitting on Tim Berners-Lee's desk in Geneva. It was on Berners-Lee's NeXT computer that the World Wide Web was born, and the next generation of Macintosh users will be raised on the same platform.
BSD or Berkeley Standard Distribution is a Unix workalike OS designed at University of California's Berkeley campus -- and was one of the first "open source" POSIX-compliant operating systems (before the Open Source movement had a name). The Computer Science department at Berkeley designed BSD to produce the same output, given the same input, as any other POSIX-compliant OS.
At the time, Unix was splintering into many dialects, each of which was tied to a particular hardware vendor. POSIX was an attempt by the federal government to assure that there would be a common set of features and commands across vendor hardware platforms -- that a program written for one hardware platform could be ported to any other hardware with some degree of confidence. The history of BSD is available on the web for those who are interested.
My concern, of course, is more immediate. My Titanium G4 PowerBook was designed to run this particular POSIX-compliant operating system. But it seems perfectly happy running command scripts that could have been written, in theory, 20 years ago for an VAX -- as well as displaying the gorgeous 21st-century Aqua interface which would have taken a supercomputer to render even five years ago!
The fundamental motivation behind Apple's Mach/BSD/Darwin strategy is to take advantage of the decades of development behind the Unix kernel architecture. Its stability and native network support of the core BSD services, and the millions of users/developers of POSIX software who have helped to develop and debug this OS, allows Apple to roll out a mature OS without having to spend years refining the product.
While Microsoft's Windows operating system may be more widely familiar due to its origins in cheap, numerous PCs and clones, Unix is ubiquitous in academic and scientific venues, and is widely used for its scalability in architecture, video, cinema, animation, and other areas where processing horsepower is traditionally more important than the user interface.
We're already seeing Java developers take interest in Mac OS X. Do you think the Open Source community will be interested as well?
Also in Mac Dev News Roundup:
Server farms offering highly parallel processing of images, mined data, web commerce, and so forth are far easier to implement and extend under Unix. Just buy more hardware, clone the hard drive, and plug into the network. Of course, the Open Source movement has grown enormously because of this. All you need to buy is the hardware -- no license fees!
Linux is the best-known open-source OS today, but BSD -- whether FreeBSD, OpenBSD, or Apple's Darwin -- is gaining visibility as well. In fact, thanks to Linus Torvald's recent outburst (he now disclaims it) about the Mach kernel in OS X, Darwin's visibility has risen substantially. (There's a reason they say there's no such thing as bad PR!) Darwin is Apple's name for its BSD OS layer. It's a perfectly useful OS on its own, but we know it mostly as the base upon which the Aqua interface runs.
Loyal Apple supporters are now faced with learning to love and understand an OS which is really as different from the original Mac OS as an 18-year-old is from a 7-year-old. It may be argued that only the name is the same. Certainly, the cursor flashing from the command line on the Terminal application has no analog under the Classic Mac OS. The cursor and the various daemons are great servants, as they say, but lousy masters. In future articles, I'll try to give you a sense of how to direct these servants, and to explore the services that they can provide.
Pages: 1, 2