New Unix-based operating system's beta shows reliability but erratic performance In the middle of last month, Apple Computer Inc. released a public beta of its next-generation operating system, Mac OS X. (The “X” is read as “ten”; it will be the successor to the current implementation, Mac OS 9.) The goal is to provide for the Macintosh platform all the modern bells and whistles, such as preemptive multitasking, memory protection, virtual memory and task scheduling. But the presence of these much-desired features isn’t the same thing as having them function reliably; just ask any Windows 98 user. Macintosh users have had to weather many missteps while waiting for an operating system with these features, so users have high expectations. So, does the Mac OS X public beta deliver? The CD costs $29.95 and isn’t available for download. You need a PowerPC-based Macintosh (preferably with a G3 or G4 processor), 128MB of RAM and about 1.5GB of disk space. I tested it on two systems, a Mac PowerBook (a 250-MHz G3 with 160MB of RAM and a 5GB disk partition) and a Power Macintosh tower (a 400-MHz G4 with 128MB of RAM and an 8GB disk partition). Installation was simple, taking more than an hour on the PowerBook but only 15 minutes on the tower machine. Digging Deeper into Mac OS X At the heart of Apple Computer Inc.’s newest operating system, Mac OS X, are three core components known collectively as “Darwin”: 1. A Mach 3.0 kernel that handles memory protection, scheduling and virtual memory. 2. A custom 4.4BSD infrastructure that implements process control, basic security, and thread support. 3. A new object-oriented device driver framework, known as the IOKit, that manages communications to the hardware and the outside world. The Mach kernel has been field-tested for over a decade in NextStep/OpenStep implementations, and so it’s very stable. In addition, most of Darwin is open source; this allows developers to examine the code and make improvements or apply fixes. Linux achieved its legendary robustness through such a policy, and Darwin code should benefit as well. Application Compatibility On top of the Darwin core are various software layers that implement 4.4BSD (Berkeley Standard Distribution) services, Java, Cocoa (an object-oriented application framework, formerly known as YellowBox and OpenStep), and a Carbon compatibility interface. Carbon enables existing Mac OS 8/9 application source code to be quickly ported to Mac OS X. It does so by redirecting Mac OS application programming interface (API) calls to the appropriate services in Cocoa or Darwin. Finally, there’s the Classic environment, which is a Mac OS X process that hosts a copy of Mac OS 9 and mimics the low-level hardware interfaces such that existing Mac OS 8/9 application binaries can execute. In my testing, applications based on Cocoa seemed the most responsive of all. Mac OS X implements a new imaging engine known as Quartz. It uses the Adobe Systems Inc. Portable Document Format (PDF) to implement drawing and printing operations. The advantage to using PDF is that text and graphics are readily antialiased, transparency options can be applied to any elements in a scene, and any vector-based graphics are resolution-independent. (That is, a drawing can scale to any size screen or high-resolution printing device without pixellation occurring.) Quartz also provides interfaces to the existing Mac OS QuickDraw imaging APIs, in order to support Carbon applications. Mac OS X also implements OpenGL, a standard interface for 3D graphics applications. In this beta release, certain features of Mac OS X are currently hidden from view, typically because they’re in a rough state. For example, the AirPort wireless service isn’t available. However, you can turn the card on by creating a properly named directory in the Extensions directory, dropping an XML file into it, and rebooting. However, the transmissions aren’t encrypted, which means you are broadcasting your source code file transfers and surfing practices in the clear. Performance: Up and Down On the PowerBook, Mac OS X behaved erratically; it was sluggish at times and decently quick at others, and boot times varied between two and four minutes – apparently due to a “system tuning” stage during the boot process. At times, the Mac OS X Finder didn’t recognize double clicks on the PowerBook’s trackpad, and the system slowed to a crawl. It became noticeably more responsive after I added an external mouse and keyboard. Then, I could run the “Classic” Macintosh environment (in essence, a version of OS 9) and actually edit a Microsoft Word 98 document. Overall, ported applications and the Classic environment executed tolerably well, but there’s plenty of room for improvement. Mac OS X ran much better on the G4 system, with boot times of about a minute and a half. The Classic environment ran just slightly slower than the same machine running Mac OS 9 alone. A port of Microsoft Internet Explorer 5.0 ran fine on the G4 but not on the PowerBook. There, I had to use Seattle-based The Omni Group’s OmniWeb browser to do any surfing at all. Some people are pleased with Mac OS X’s performance, even on a 233-MHz iMac, while others with more capable G4 systems report sluggish performance. This tells me that the boot and system-tuning stages need more work – this is beta software, after all. Impressive Stability The new Aqua interface is very attractive, with anti-alias graphics and translucent controls that are restful to the eye. However, good looks aren’t enough. What will win over users is the extremely stable kernel that’s almost impossible to kill. More than once on the PowerBook, the Classic environment crashed into the debugger. But when I clicked outside of the debugger window, the Mac OS X Finder appeared and I could hit the magic Command-Option-Escape key combination. A Task Manager window (like the one in Windows NT) lists running applications. Pick the Classic environment and kill it, and the debugger window disappears, leaving Mac OS X humming along. Very impressive. Because Mac OS X is built on a Unix kernel, it faces some of the same security problems as Unix and Linux. However, Mac OS X does start with some reasonable precautions: For example, the password you enter for the first user account becomes the password of the root account as well, thereby closing the door on hackers who gain access to systems by using a standard installation password. Also, file transfer protocol and remote Telenet services are switched off by default. In this beta release, certain features of Mac OS X are hidden from view, typically because they’re in a rough state. For example, the AirPort wireless service isn’t available. However, you can turn the card on by creating a properly named directory in the Extensions directory, dropping an XML file into it and rebooting. However, the transmissions aren’t encrypted, which means you are broadcasting your source code file transfers and surfing practices. Most system configuration panels are similar to those in Mac OS 9, but the directory arrangement differs. If you know Linux or Unix, the arrangement makes sense, but veteran Mac users will need to adjust. A Terminal application gives command-line access to various line-oriented Unix utility programs. Listing directories with Terminal reveals a slew of standard Unix directories (such as /etc) and files that you don’t normally see. Mac OS X users and corporate help desks will have to learn how to troubleshoot system problems all over again – but the system’s stability means that IT managers will have to troubleshoot less often. Goodbye, Hot Swap One feature that Mac OS X sorely lacks is the ability to hot-plug devices such as CD or CD-R modules into the PowerBook’s bays. Under OS 9, I can switch easily among 802.11b wireless, an RJ-45 Ethernet connection and PPP dial-up networking protocols without restarting most applications, much less the computer. Under Mac OS X, such hardware changes require a reboot. Worse, even changing network protocol stacks requires a reboot. While I expect that I will adjust to most of the changes of the new operating system, the loss of hot-plugging will be painful. Thompson is a training specialist at Metrowerks Inc. You can reach him at thompson@metrowerks.com. Operating SystemsLinuxApple SUBSCRIBE TO OUR NEWSLETTER From our editors straight to your inbox Get started by entering your email address below. Please enter a valid email address Subscribe