A Closer Look at Apple's OS X 10.3.6 Update
Apple released Mac OS X 10.3.6 last week on a post-election Friday afternoon, with little fanfare and the typical useful-but-sparse release notes. The company documents 22 changes in Mac OS X 10.3.6, which come from nearly 1,200 changed files in nearly 1,000 different directories or folders, many of them in large bundles or packages. Here’s a closer look at what Apple has told users about what’s inside the OS X update.
Mac OS X 10.3.6 changes two of the system's top-level applications and two graphical utilities. The biggest one is Safari, now up to version 1.2.4 (v125.11). Although any Safari release is bound to fix dozens of tiny bugs, Apple mentions only one: the browser no longer waits forever if your startup disk's name contains a non-ASCII character.
One other Safari change deserves note: Mac OS X 10.3.6 eliminates the browser’s time-out value. Safari no longer gives up on a Web page or form after 60 seconds, a decidedly short time-out period that led to all kinds of unsupportable haxies (like SafariNoTimeout ) to eliminate it.
The other revised application is—believe it or not—Calculator. Although it’s not all that powerful a calculator, Calculator has still gotten plenty of negative attention this year. Sites like MacFixIt continue to collect reports of incorrect rounding and crashes during currency conversion updates. Mac OS X 10.3.6’s new version of Calculator improves “many calculating and conversion features.” Note, however, that the hidden plug-ins in the Calculator bundle may not work correctly.
The /Applications/Utilities folder contains new versions of both Installer and NetInfo Manager, though no release notes point to any specific reasons for these updates. We only learned far after the fact that Mac OS X 10.3.4’s revised Installer added the entire “patch update” capability, so who knows what kind of intrigue Apple is up to this time. The NetInfo Manager update is mostly revised code of an unknown nature.
Sizing Up the System Library Folder
The vast majority of what we know as Mac OS X lives in the /System/Library directory hierarchy. As usual, it sees plenty of changes in a big OS update. A new version of the Apple File Server application (/System/Library/CoreServices/AppleFileServer.app) in the Core Services folder probably fixes most of the AppleShare or AFP-related bugs mentioned in the release notes. Any such bugs not fixed there probably are squashed in revised AppleShare file system code in the Filesystems folder. Apple mentions lots of changes, from the generic “improves AFP service performance” to fixing a bug that could prevent network-based applications from opening applications in /Network/Applications or on other auto-mounted AFP volumes.
The Core Services folder contains many of the applications that Mac OS X uses to provide its own services. In Mac OS X 10.3.6, we also find an updated version of Classic Startup, undoubtedly to fix the unspecified “issues that could cause Classic to unexpectedly quit when starting up”—that is, could cause Classic Startup to crash. The Mirror Agent application’s icon—the .Mac globe on top of a hard disk—gives away that it handles synchronizing an iDisk with a volume on your machine. It’s also revised in Mac OS X 10.3.6, probably to fix the documented bug that had not correctly resized a local iDisk clone after you’d changed your .Mac storage allocation in System Preferences.
Core Services also hosts a new version of Login Window, the application that’s a lot more important than it looks. It not only displays the login window, it actually logs you in—all programs that you launch are sub-processes of Login Window, which remains running silently in the background all the time. The new version is probably what “makes it easier to scroll through a long list of user names in the login window,” and probably a separate issue that could have prevented logging in via a network user account.
Mac OS X 10.3.6 also has new versions of the Kerberos and Security Agent applications in the Core Services folder, plus a revised Security Agent plugin for Login Window, though no one outside Apple seems to know what that is. (The Kerberos program is a carry-over from Security Update 2004-09-07, as Mac OS X 10.3.6 includes almost all post-Mac OS X 10.3.5 updates.) Finally, the Core Services folder holds the SystemVersion.plist file that defines the new OS release as Mac OS X 10.3.6 Build 7R28.
Most of the changes in the update’s Frameworks folder are mysteries as well. Apple provides no context for revisions to the Core Foundation, Carbon, DVD Playback, Directory Services, Disc Recording (and Disc Recording human interface), FireWire Audio, IOKit device drivers, Kerberos, or LDAP frameworks, yet each one of them is updated in Mac OS X 10.3.6.
Mac OS X 10.3.6 includes an updated kernel (the /mach_kernel file). That usually means a boatload of revised kernel extensions, and that holds true this time as well. They include lots of ATI and Nvidia extensions, several Apple extensions with code names that only in-house engineers understand, audio updates, IOKit kernel extensions, and even the new iPod driver.
Either the revised kernel or one of the USB kernel extensions must fix the “kernel panic... that could occur when using an external, wireless USB broadband modem with Mac OS X 10.3.5.” It also seems likely that a display driver or kernel extension fixes an oft-reported bug where “the display could sometimes remain dark when waking from display sleep—the mouse pointer might appear, but normal function could not be restored—if using a screen saver password on a portable computer.”
Similarly, Apple notes that Mac OS X 10.3.6 “improves ColorSync calibrating” for the 23-inch Apple Cinema HD Display, but doesn’t note how. There’s no new version of the ColorSync utility, or of any ColorSync frameworks, or even of Quartz or QuickDraw. However, the /System/Library/Displays/Overrides folder contains a mess of files for individual displays that contain updates to built-in display parameters, such as default settings or built-in display profiles, so the change could be there—or in a display driver, though probably not in the Mac OS X kernel itself.
There are plenty more changes in the System Library folder, but none of them easily map to one of the few documented changes. The Image Capture folder has updated drivers for some cameras as well as for reading photos from media card readers. The Login Plug-ins folder, apparently an adjunct to Login Window, has new MCX and Bezel Services plugins. The MCX functionality is not documented, but we know the Bezel Services functions in Login Window are what provide those translucent indicators that quickly fade when you change system volume or display brightness from the keyboard.
The Private Frameworks folder has new versions of an undocumented AppleVA framework, as well as revised Disk Arbitration, Disk Management, Internet Connect, Network Config, and Password Server frameworks. There’s also a new MediaKit private framework, the one that Cocoa uses to manage disk formatting and partitioning; and an updated version of the DesktopServicesPriv framework, the private Desktop Services bundle that contains much of the back-end code for the Finder. None of the release notes hint at what might have changed in any of these components.
Finally, the System Library folder has the QuickTime BMP Update component from Security Update 2004-09-30, a revised NFS startup item for mounting NFS volumes, and a revised SPPlatformReporter plug-in for the frameworks that back up Apple System Profiler. All are updated without notes or hints.
Updated Unix Folders
Not all of the changes to these folders are complete mysteries. As with the Kerberos changes, some of them are carried over from previous Security Updates, as almost all of the post-10.3.5 updates are included in Mac OS X 10.3.6. A lot of those files show up again in the standard Unix folders, like /etc, /sbin, and /usr.
Mac OS X 10.3.6 might have a new version of Samba, the open-source code to provide Windows-compatible file sharing and printer sharing. Apple notes that in Mac OS X 10.3.6, “SMB/CIFS servers in /Network no longer suddenly disappear and reappear after the network changes.” Samba provides the SMB and CIFS services to Mac OS X, and its many commands are sprinkled throughout the Unix directories.
The /usr/sbin folder has lots more Kerberos code from security updates, plus Samba commands, a tcpdump revision from Security Update 2004-09-07, the revised CUPS dæmon from Security Update 2004-09-30, and a revised disk arbitration dæmon to go along with the similar private framework. It also has older security update fixes for IPSec, DNS lookups, and even a revised installer commandline tool to go with the revised Installer application (though not, oddly enough, a revised Installer private framework). Subfolders inside /etc have revised files for Open Directory services and the Xinet dæmon.
Oddly enough, Security Update 2004-10-27 is not included in Mac OS X 10.3.6—you need to install it separately if Software Update offered it to you. It’s one of the least consequential security updates ever and only affects systems with Apple Remote Desktop client version 1.2 installed. If it’s not there, the installer politely tells you that you can’t install the update.
As for installing OS X 10.3.6, a “patch” version, available to some Mac OS X 10.3.5 users via Software Update, contains only differences between the 10.3.5 and 10.3.6 versions of files changed in the update, and may be as small as 14MB. The downloadable installers contain full versions of all the updated files and are substantially larger—34MB for the “delta” update you can install only over Mac OS X 10.3.5, and 92MB for the “combo” update you can install over any version of Mac OS X 10.3.
Some people should use the combo updater even if offered a delta or patch updater. If you have changed any of the files that belong to the OS, or especially if you’ve replaced any Mac OS X 10.3.5 files with their counterparts from an older version of Mac OS X 10.3, you should use the combo updater. Otherwise, you could wind up with some files from older versions that you installed manually that don’t work with Mac OS X 10.3.6. You can either restore the original versions of all the files you tinkered with, or run the combo updater instead of another one.
The Friday release of Mac OS X 10.3.6 leaves Apple’s customers in the lurch yet again. If they obeyed Software Update and installed Mac OS X 10.3.6 as soon as it shows up, they risked early-adopter problems on a weekend, a time when Apple doesn’t answer questions. So, more than ever, take standard installation precautions: prepare a full backup of your startup volume, remove or reinstall third-party utilities that may interfere with the update. If you’re extra paranoid, run a disk repair utility first to make sure no lingering HFS problems are waiting to bite you.
Don’t interrupt the installation by launching new programs, because that may try to use system components that are only partially updated at the time you need them. Similarly, don’t try adding or removing FireWire or USB devices during the update, just in case that leads the OS to try dynamically loading a device driver that it hadn’t needed before, and again catching the system with only part of 10.3.6 installed.
We’ve seen no first- or second-hand problem reports with Mac OS X 10.3.6 since it’s been available. Yet anecdotes can reveal things Apple chose not to share, such as the fact that Safari 1.2.4 can resume interrupted downloads, something we didn’t think to try but works for us. If you install it now, take precautions. If you want to wait a few days until some other reports shake out some potential conflicts, no one will blame you. You can’t expect much more from a sparsely-documented 42MB OS update released late on a Friday afternoon with no fanfare or guidance from Apple.
Excerpted with permission from the November 7 issue of MDJ, published by MacJournals.com. Copyright 2004, GCSF Incorporated. For a free trial to MDJ, visit www.macjournals.com.