Apple knew it had to do something. The company knew that the Mac OS, built layer by layer atop the foundation laid with the release of the original Mac back in 1984, was running out of room to grow. The early-eighties Mac OS foundation couldn’t provide modern features, such as preemptive multitasking and memory protection, that users were starting to demand (and that Microsoft was threatening to provide).
So in the early nineties Apple set out on a quest to find a new operating system to replace the Mac OS. Here’s the story of the end result of that quest: Mac OS X, which makes its official debut on Saturday, March 24.
Failed First Steps
First came Copland, the operating system that was supposed to drastically alter both the look and the underpinnings of the Mac OS — and would cause a lot of compatibility problems. Copland was also supposed to pave the way for a revolutionary (and far-off) update called Gershwin, which would offer all the conveniences of a modern operating system.
The Copland/Gershwin project was continually plagued by delays, and Apple eventually killed it, operating under the assumption that Copland could never be finished. After that problem-plagued project expired, Apple briefly considered Be’s BeOS, a still-under-development modern operating system. Instead, Apple bought Steve Jobs’s company, Next, and its operating system.
Not only did buying Next bring Jobs back to Apple but also allowed Apple to create Rhapsody — a powerful OS based on the Next OS. In Rhapsody, old Mac applications run in the Blue Box — basically an emulation of the old Mac OS. To take advantage of all the new OS’s features, developers would have to rebuild their applications essentially from the ground up in the Yellow Box, the Next development environment.
And that’s where Rhapsody stalled: key developers such as Adobe and Macromedia didn’t want to spend several years developing applications for an untested operating system that almost nobody was using.
Instead, Mac developers wanted their current Macintosh applications to run in a modern OS environment without being wholly rewritten. That’s just what Mac OS X is supposed to deliver.
Mac OS X also is an opportunity for Apple to revamp the Mac interface that’s been evolving over the past 15 years. While the Aqua interface represents a major evolutionary step away from the current Mac interface, OS X is still recognizably Macintosh. The Mac menu bar remains intact along the top of the screen (although there’s now a Go menu alongside File, Edit, View, and Special), and at first glance most windows look like traditional Mac windows.
But if you give Aqua a closer examination, you’ll discover a host of artistic touches that elevate this new interface above its predecessors. That’s not to disparage the current Mac interface — today’s technology allows Apple to make enhancements that simply couldn’t be included before now.
In the current Mac interface, buttons that can be pushed by pressing the return key stand out because they have a thick line drawn around them. Most longtime Mac users have figured this out, but it’s an interface convention lost on many novice users. In Mac OS X, you can’t miss the default button — it’s blue, and it throbs brighter and darker while waiting for your command.
At the top left corner of every window are three brightly colored circles (red, yellow, and green) that Apple says were designed to evoke a traffic light. These buttons let you control what happens to the active window. When you move your mouse over them, they reveal their functions. The left, red circle closes the window; the middle, yellow one minimizes it (sending it to the new Dock); and the right, green button maximizes the window.
Each window casts a faint shadow on whatever is behind it — and that shadow is partially transparent, making your desktop feel remarkably three-dimensional. Every pull-down menu and dialog box is partially transparent, showing a hint of what’s behind it. When you let go of your mouse, menus don’t simply disappear — they fade away. And all Mac OS X text is antialiased, featuring smooth edges that are much easier on the eye than is the old-fashioned jaggy type.
Just about everything you do with your mouse in Mac OS X has an immediate response. If you drag a window around, the entire contents of that window move. Similarly, when you resize a window, you actually see the size of the window change as you’re dragging.
A Revamped Finder
Mac OS X offers a different Finder, one that will undoubtedly appeal to many Mac users and repel others, although it’s not nearly as radical now as it was when it was introduced — Apple has added many features of the classic Mac OS to the Mac OS X Finder.
By default, the Finder’s window has a tool bar at the top. If you click on one of its buttons, you’ll be taken to a specific location on your Mac’s hard drive. However, if you don’t like the look of the tool bar, just click on the white button in the top-left corner of the window; it hides the tool bar and makes Finder windows behave more or less the same way that they do in Mac OS 9.
Also on the window are three buttons that let you switch among three different ways of viewing the contents of a Finder window: List, Icon, and Browser. The List and Icon views are basically the same kinds of view your Finder has today; the Browser view is a multicolumn window that lets you view several levels of a hard drive at once. When you click on a folder in a column list, the contents of that folder are displayed in the next column to the right. If you click on a file, the Finder will try to display a preview of what’s in that file.
Below the row of large buttons is a blue Back button that functions just like its equivalent in a Web browser: it lets you go back to where you’ve just been. Next to it is a pop-up menu that displays your current location; if you click on it, it displays other locations you’ve viewed recently.
Perhaps the most radical addition to the Mac OS interface in Mac OS X is the Dock, a strip that lives at the bottom of your screen and displays the contents of open windows (you can even opt to have it appear only when you move the cursor to the bottom of the screen, a familiar interface feature to some computer users).
The Dock can contain anything you want — not just images representing minimized windows but also items you drag onto it. That means folders, applications, documents-even links to Web sites. Each item stored in the Dock has its own icon, which can be a thumbnail view of the contents of that item. Applications can also use a Dock icon to show information about the status of a window. For example, a mail program’s Dock icon could appear differently if you had new mail waiting. Clicking on an item in the Dock automatically opens its window in your workspace.
Major Memory Advance
Perhaps the most overdue operating system feature to come to the Mac in OS X is protected memory. In an operating system with protected memory, each application accesses only its own space in memory and doesn’t touch the memory being used by other running applications or the OS itself.
Picture your Macintosh today. You’re working in Photoshop, when all of a sudden everything grinds to a halt because your Web browser has crashed while trying to download a large file in the background. Even though Photoshop is not at fault, you are forced to reboot your Mac and pray that you saved your file recently.
In a system with protected memory, such as OS X, things are different. When an application crashes, it leaves all other applications up and running.
This system also means that you no longer have to increase an application’s memory partitition by choosing Get Info in the Finder and increasing the amount of RAM a program can use. Instead, Mac OS X doles out memory as needed to all native OS X programs.
With Mac OS X, Mac users will finally be able to take advantage of preemptive multitasking. While you’ve been able to run more than one application on your Mac since the days of the Switcher and MultiFinder, it’s only been possible via a mechanism called cooperative multitasking.
Put simply, right now your applications cooperate with each other to share the power of your Mac’s CPU. Each open application can use the CPU for as long as it wants, and all other applications wait patiently in limbo in the meantime.
With preemptive multitasking, the operating system acts as supervisor, doling out access to the CPU. Every app gets a turn, but none get to pig out and take over the CPU completely. And some applications are more equal than others: the OS determines which goes first based on a complex system of priorities.
The benefit to you is that you’ll no longer have to stare at your screen while an application running in the background takes your computer’s processing power away from you. It also means that you’ll be able to do things such as play QuickTime movies without dropping frames while you’re reading your e-mail, editing an image in Photoshop, or even serving Web pages.
While the current Mac OS offers virtual memory, it’s nothing like the modern virtual-memory system built into Mac OS X. If you’ve ever had a Mac application quit on you because it didn’t have enough RAM allocated to it, you know the joys of selecting an app in the Finder, choosing Get Info, and increasing its allocation.
With Mac OS X, that sort of trick is a thing of the past. You’ll be able to launch your applications as you normally would, and Mac OS X will intelligently allocate as much virtual memory as those apps need to run. You won’t even need to preconfigure how much hard-disk space to allocate for virtual memory — the operating system will do that itself, dynamically.
When a program is multithreaded, essentially it can walk and chew gum at the same time. For example, a fully threaded version of Photoshop could theoretically operate a scanner to create a new image file and run filter calculations on one or several open images simultaneously.
In Mac OS X, the Finder will be more fully threaded, so you’ll be able to do things like move a window containing a QuickTime movie while the movie continues to play. You’ll also be able to pull down menus and move icons while other applications continue to update their windows.
This new OS will also support multiprocessing in ways that today’s Mac OS can’t. When Mac OS X arrives, the dual-processor G4s Apple has released over the past year will really come into their own, because Mac OS X supports
This means it treats the available processors equally, balancing the load of your system over the whole array.
By virtue of its internal design, Mac OS X is inherently multiprocessor-aware, and all of its functions can run on multiple processors, unlike those of the classic Mac OS. In day-to-day use, multiprocessor machines running Mac OS X should feel snappier than single-processor machines.
Applications specifically written to take advantage of multiprocessing will have complete access to the processors. The OS can assign each individual task these apps undertake to a different processor, balancing the load and using processor power as efficiently as possible.
But even if a Mac OS X program wasn’t written with multiprocessing in mind, it will benefit. The operating system can assign different programs to
meaning that program A can run on one G4 while program B toils away on the other. In addition, programs don’t work in a vacuum — they’re working in conjunction with the operating system at all times. And since Mac OS X will be multiprocessor-savvy, it will balance all of its own work (like moving windows and scrolling) across processors.
An important goal for the first version of Mac OS X is for it to run existing Macintosh software well enough that the transition from Mac OS 9 is smooth. However, old Mac applications won’t be capable of taking advantage of new Mac OS X features such as memory protection and preemptive multitasking. Consequently, Apple’s come up with a multifaceted strategy to help programmers create modern Mac OS X programs without forcing users to abandon older Mac programs they’ve grown accustomed to.
The result is an operating system that will run three completely different kinds of applications, all from within the same interface. (You’ll still be able to copy and paste, drag and drop, and use other features that let various applications interact.) Those three new application types are called Classic, Carbon, and Cocoa.
a system that lets Mac OS X run old Mac applications
without requiring them to be modified in any way. Classic applications appear on the same screen as all other Mac OS X applications, coexisting with Carbon and Cocoa programs.
However, there’s a big drawback to Classic programs — one that will spur their authors to update them for Mac OS X: even though Classic programs will be running in OS X, they’ll still experience the same limitations they did when running in the old Mac OS.
Arguably the most important of the three different software environments is Carbon. With Carbon, Apple made a system for creating programs that was as similar to that of the old Mac OS as possible, discarding methods that were incompatible with an operating system containing memory protection, preemptive multitasking, and other important features Apple wanted to put into Mac OS X. What this means is that programmers shouldn’t have to perform a wholesale rewrite of their applications to gain the benefits of Mac OS X.
The environment called Cocoa provides an easy way for programmers to quickly create new applications. Cocoa’s technology comes from Next’s OpenStep system, which was designed to aid the rapid development of corporate applications. Cocoa enables — but doesn’t require — developers to use Sun’s Java language. Java is much applauded by programmers for the ease with which it lets them create complete, Mac OS X-native applications.
While most Mac developers are only beginning to investigate Cocoa and what it can do for them, many former Next developers are likely to update for OS X the programs they’ve already written for Next.
Unix Lies Beneath
Let’s step out of the familiar Mac interface for a moment. Although Apple has said that it will hide Mac OS X’s Unix underpinnings so that no regular user will ever need to look Unix in the face, Mac OS X should be perfectly capable of running Unix programs via a
Unix-style command-line interface. Power users and Unix veterans alike will enjoy the fact that any software that runs on one of the flavors of BSD Unix should be portable to Mac OS X, although some compatibility issues between the Unix and Mac OS file systems may limit which Unix utilities will work on Mac disks.
No one has successfully managed to make Unix into a consumer-oriented operating system before, so Apple’s attempts to do so with Mac OS X are quite remarkable. However, it’s unclear whether the marriage of the Mac’s traditional user-friendliness with Unix’s gritty command-line power will be immediately successful.
The Last Word
But Mac OS X is much more than a fresh coat of paint on the Mac’s user interface and much more than a typical operating-system update. During the next few months, both the new Aqua interface and the technology behind it will begin to change the ways we experience our Macs.
JASON SNELL wrote ”
Mac OS X Unveiled
” (March 2000), STEPHAN SOMOGYI wrote ”
The Millennium Mac
” (August 1999), and JEFF PITTELKAU wrote ”
The X Factor
” (August 1998), all excerpted to create this special overview article.