Tuesday, June 24, 2008

Snow Leopard: Clever Kitty or Dried Apples?

There's been discussion that Apple's next operating system MacOS X v. 10.6, will use myriad tricks and optimizations to run better in environments with space constraint -- such as costly Flash drives.

Advertised not as a thick-with-features upgrade full of flashy things to show the public but an opportunity for Apple to improve performance and support future advances, Snow Leopard has been lauded for promising to reduce the OS' footprint and speed the performance of things running on it.

MacOS X v.10.5 was advertised as "Leopard", and "Snow Leopard" is positioned as a "mere" refinement on that platform. Assuming that the features in 10.6 are the kinds of things that will draw developer attention and cause application updates to abandon prior versions (which we saw in 10.5 when developers wanted to use tools like CoreData in their applications and were unwilling to reimplement major parts of their applications merely to support folks unwilling to buy a software upgrade -- 'cause those folks ... aren't willing to buy a software upgrade, and the developers' businesses depend on the folks being willing to buy a software upgrade -- Stone Design being excepted), folks could get pulled into upgrading to get applications require back-end support for threading, or don't perform well without optimizations in Cocoa frameworks introduced in 10.6. My personal hope for 10.6 is that the kernel will go from being a 32-bit environment (with all that implies for access to instruction sets and registers on x86) to which larger-than-32-bit memory management has been bolted on as a kind of klugde, to a genuine 64-bit environment in which 10Gig-E drivers can work fast enough to saturate the hardware rather than take breaks continuously to juggle memory frames the driver must view through a 32-bit memory window. The fact that more widespread use of Apple's new compiler tools may lead to smaller, faster code won't hurt, either -- while developers can compile their apps with the new tools, getting these performance benefits from all parts of the system would (presumably) require Snow Leopard.

LLVM isn't new in Apple projects: Apple's just-in-time graphics optimizations and the whole OpenGL stack depend on it.

But is Snow Leopard such a clever kitty, or is Apple merely finding savings by shipping a dehydrated fruit basket? It seems here that Apple may have been shipping gobs of utterly unnecessary files never actually used by the tools Apple ships for building its apps and apps made by third-party developers -- and is trying to capitalize on the "feature" of removing the old junk that never should have been there in the first place. Have a look at the Leopard applications that have had the dead weight removed, and compare them to the Snow Leopard reported "new, improved, smaller" applications. I swear. I've got an older notebook with a 30GB drive that probably is half full of this kind of BS.

Meanwhile, confidence in the future of Apple is on the rise at Microsoft, even as its CEO Mr. Ballmer continues to pooh-pooh the iPhone, Apple's music business, and so forth. The way that poor man rants, I'd hate to be his cardiologist.

No comments: