OS X & Rhapsody

Joe Barrera (joebar@MICROSOFT.com)
Tue, 11 Aug 1998 12:13:34 -0700


> [ from Greg's SJM article ]
> OS X will run traditional Mac programs, or at least most of them,
> says the plan. There may be minor rewriting involved for some,
> though nothing like the scale that Rhapsody had been demanding.

> The traditional programs won't get all the benefits of OS X, though.
> For example, a traditional program that crashes won't crash the entire
> Mac, but it will crash other traditional Mac programs running at the
> same time.

So basically,

OS 8.x and below ~= Win16 (Windows 3.11 and below) - cooperative
multitasking, single address space
OS X = Win32 (Windows NT) - preemptive scheduling, separate address spaces

You'll note, though, that Microsoft provided a platform for Win32
development (Windows 95, and before that, Win32s on Windows 3.x), so that by
1996 most new Windows apps were Win32 apps. (No, I can't substantiate that
claim, beyond reporting what I remember seeing in CompUSA, Fry's, etc.).
True, Windows 95 has a lot of Windows 3.x and DOS inside of it, but its
interface allowed app writers to move ahead and develop for its replacement,
namely, Windows NT. (Unfortunately the driver story was not as coordinated;
only in Windows 98 and NT 5 is there a unified driver story.)

So again, it's unfortunate that when Steve/Avie/et. al. showed up, they
didn't spec out an interface for OS X, and that they didn't provide a
thunking (translation) layer to that interface on top of System 8 when they
shipped System 8. (Yes, there are real-world advantages to the separation of
interface and implementation.)

I suppose it's akin to what would have happened if Microsoft continued to
expect app developers to write to OS/2, and never came up with Win32.

- Joe

Joseph S. Barrera III
http://research.microsoft.com/~joebar
Work: (415) 778-8227, Home: (650) 588-4801