|
|
|
|
MacOS
and Windows Evolutions
Learning
the facts about Operating System Evolution
|
|
|
While it is true that Windows definitely had more "suck"
factor when it started, it is a fallacy that the Mac has not
evolved more (or evolved better), though evolution is a
complex thing. Evolution is good and bad. It is bad when
people want revolution (major change) -- but it is good to
make things better. Remember the goal of evolution is not
change for changes sake -- the goal is improvement. So
sometimes fewer evolutions are better (since they show one
proper path), sometimes multiple evolutions is better since
there are stages in the process. Here is my take on how
things evolved in Interface, Software and Hardware.
Interface
The Mac User Interface (UI) started off better (thousands
of times better), so there was less need for evolution.
Windows was so bad that Microsoft basically had to keep
scrapping old behaviors and metaphors and replacing them
with new ones until they got it usable -- the conclusion was
something that looked more like the Mac than the original
Windows. People noticed Microsoft changes because they were
inconsistent and dramatic -- but the goal of good interface
is consistency and nice smooth (subtle) evolution. This is
why many think the Mac's "look and feel" is the same as it
was 15 years ago -- almost nothing actually is the
same, it has just grown consistently so that people don't
notice the changes.
MacOS
|
PCs
(Win98)
|
Mac OS started as a simple
Black and White interface, with a 512 x 384 single
monitor.
|
PCs started out monochrome displays -- but by
the time of the Macs release they had color high
resolution graphics (so we should start there).
|
The Mac evolved quickly
and easily to a graphics standard that allowed many
resolutions, full color (with features like color
matching), multiple displays, and so on. It was all
pretty painless, and almost completely transparent.
|
PCs didn't use their graphics well before
Windows becauase they didn't have an interface to
take advantage of them. The PC made great strides
going to a GUI -- unfortunately, the transition to
Windows (from DOS) was painful, lots of bugs and
incompatibilities and took years (decade) to
migrate.
|
Remember, the Mac just
evolved once (nicely). From limited resolution to a
virtual desktop that allowed for many size screens,
color depths, and so on. There was a minor hurdle
to get to color (some Applications hadn't paid
attention to the rules, and so broke) -- but once
the transition to Color QuickDraw), everything just
worked -- and continued working. The majority of
Apps never broke and things kept working -- despite
tons of evolutionary steps in hardware. Users
hardly noticed at all.
|
Windows (PC) evolution on display sizes,
resolutions and color depths has been far more
painful. It has really been a collection of modes
-- MGA, CGA, EGA, VGA, SVGA, XGA and so on. Each
mode has all the other modes in it and different
resolutions and depths (some requiring Application
or System updates), and some things kept forcing
you to drop back to an older "mode" to work. Each
version of Windows is different and requires some
retraining. It was anything but smooth and
painless.
|
Many controls, dialogs,
windows, menus and other visual elements just
worked. Apple laid them out, and then later tweaked
them for color, but they were there and evolved
smoothly. It works so smoothly that people don't
realize how much has changed. Changes were usually
additions -- like adding a control (not moving one
or changing a behavior). This is smooth and good
evolution.
|
What controls looked like, how things behaved,
where they were placed and the entire look and feel
kept changing for Windows. There are many partial
interfaces in Windows (Win1, Win3, Win95, and a
pseudo newer tweaks). There is lots of change and
not really in any one direction -- it jumps around,
and gets mixed up (there are pieces of previous
look and behavior that pop up in all their
inconsistant ugliness). This is bad (rough)
evolution.
|
Red text is who has evolved more,
better or smoother
Of course this is just a sampling of UI evolution, and
there are many more examples. But this should give you the
idea. The Mac evolved a lot in interface, but usually
smoothly. Windows jumped around and had false starts --
changing, then changing again -- and it still hasn't evolved
to anything that is "as constant", "clear", "simple" or
"elegant" as the Mac -- though there are lots of annoying
gimmicks (like animated menus that slow down productivity,
and the like). Many of the ideas on Windows were on Mac
first, so the Mac out evolved Windows (PCs) when it comes to
interface.
Software
Software Evolution is another form of evolution. Again,
Windows is not nearly as sucky as it was in the past -- so
it has evolved a lot. But the Mac has evolved as well (in
dozens of ways).
MacOS
|
PCs
(Win98)
|
Networking
|
The Mac had no networking
and very quickly evolved to a platform standard
(AppleTalk / LocalTalk), that was not very fast,
but very easy to use and setup.
|
PCs started out with the goal of being a network
terminal (by IBM). Despite that, networking
evolution was slow and painful -- and there were
many funky competing ways, which took years to
smooth out.
|
AppleTalk / LocalTalk gave
way to Ethernet (EtherTalk), which again, just
worked. You could use either, and mix them in a
company. This sped things up, and Ethernet became a
standard on the Macs very early.
|
PCs had a few proprietary solutions, like Novell
or TokenRing. Later there was a transition to
standardized hardware but it took longer for the
software to get standardized. Things worked, but it
could get pretty complex. Many pseudo standards
were obsoleted -- and networks had to be
redone.
|
The Mac went through many protocol stacks. Most
of these were transparent to the user (AppleTalk to
MacTCP was painless), but some weren't. The
transition to Open Transport was about as painful
as some of the PC transitions. Now there is another
transition coming. In general the transitions were
smoother -- but more of them. It is hard to say who
was better, each got some features sooner or better
than the other.
|
WinSock became the platform standard protocol
(which was borrowed from UNIX with some proprietary
stuff added). It worked and has been there since.
It isn't as versatile as Streams (Open Transport)
but is more common, and there has been less
shifting in Windows, and some superior features and
performance -- but performance for some things have
leapfrogged each other (back and forth) as
well.
|
Scheduler / Kernel
|
Mac started with a very simple scheduler. In
some ways it didn't progress much at all. It got
cooperative multitasking, and stayed that way.
(Consistent). In other ways Mac OS could be run on
Unix (A/UX, MAE), but that wasn't used much. Now
there looks to be a single transition going from
old style to new style (OS X and UNIX), but it has
taken a long time, and there was some time while
the scheduler has been long out of date. Of course
the system was usable all this time, and the MacOS
had some advantages over mainstream Windows (like
MP support) -- but for about 2/3 the history the
Mac was slightly ahead, and about 1/3 the time
Windows was.
|
Windows started with a hybrid
(Cooperative/Preemptive) scheduler. It was unusable
because of memory issues for a long time. It
evolved to a more Preemptive style (Win95) and got
some advantages over the Mac. Of course there was
10 years before that where the Mac generally
multitasked better -- and Win95 (and 98) are only
steps towards the true goal, to get people to shift
to WinNT. This transition started 5+ years ago, and
is still not complete (probably 5 years more). So
the Mac is behind on some things, but I think the
transition will be smoother, faster, and one leap,
instead of Windows little fragmented leaps (each
with lots of little problems).
|
Filing System
|
Mac Started with a very
primitive filing system (MFS) designed for a 400K
floppy Disk (with no Hierarchy). This quickly (1-2
years) evolved to a much better Filing System
(HFS). Years later (about the same time as Windows
for their bump) the Mac evolved to a better Filing
System (HFS+). The Mac also works with other Filing
Systems like UFS (using OS X Server) and Windows
Filing Systems to allow more compatibility. The Mac
also didn't have problems with file name sizes
(8.3) and other issues that plagued the PC and its
file system, and the Mac deals with PC files and
even has built in translation software. But of
course the Mac has a few issues of its's own. HFS+
as a filing system is powerful design (and can ride
on other file systems), but the implementation
still needs some work and higher level API support
-- but this can be put in without breaking things.
|
DOS started with a filing system that was called
FAT -- this was roughly equivalent to HFS, but more
limited. The OS and computers had some problems
with drive and partition issues (as well as the
filing system) and there were little incremental
bumps and improvements -- and not all of them were
smooth. There was a migration to FAT32 that went
off pretty well. With NT things got ugly in that
there were multiple Filing Systems, and there is
still some ambiguity on which one to choose and
why, and features/compatibility issues -- but much
of this was hidden by the fact that Windows didn't
support external drives well (for a long time).
Eventually everything will go to NTFS (I assume)
which is superior to HFS+ for most things, but they
have a ways to go. Windows98 does not have built in
compatibility for working with other file systems
(NT can for serving).
|
Memory
|
Macs started with 24 bit
addressing, but jumped to 32 bit in a couple of
years (1988?)
|
Windows started with 16 bit addressing, and has
not gotten completely away from that with Win95 /
98. (Win95 supports 32 bit, but still has 16 bit
code). NT will be the unified OS (in 2002?) and
will finish the jump to all 32 bit.
|
Early Macs had all shared memory space, and
could only run DA's out of Applications memory. Now
there is protected memory for some things, and
concepts like temp mem, and Virtual Memory, and
other major improvements. It got a lot better
quickly -- then didn't get much else. Part of that
is because it was "good enough", where Windows kept
needing more to be usable. There were ways to run
Mac Apps protected (like MAE), but they weren't
really used often. Both Mac and Windows 98 need
memory improvements (the Mac probably a smidgen
more), Both are ugly (and it is really tough to say
which is more ugly).
|
Windows started with a memory model that was
worse than the Macs. It was many years before
Windows was even usable because of it. Then around
'91 it got some improvements (like more protected
memory support than the Mac and has better VM
support which it needed since it was less efficient
with memory). But Win still has global allocation
spaces for variables (GDI), and other nasties.
Recently the Mac has been catching up -- but both
need work. NT is better, but few people
(relatively) use it -- and A/UX and OS X Server
work similarly for the Mac (for those that use
them).
|
Red text is who has evolved more,
better or smoother
Of course there are many other areas I could get into.
And some aren't that clear as it is -- like the Filing
System. But in general the Mac made smooth but large jumps,
rarely and fairly painlessly -- while Windows isn't always
as elegant as that. The exception of course is the Mac jump
to a better kernel -- where the jump will likely be
smoother, but it is also later.
Hardware
And lastly there is hardware evolution. Now I must admit
that PCs were pretty ugly to begin with, and I thought the
Mac was a more elegant tool. But the Mac was a simple,
elegant tool, that actually removed a lot of complexity in
order to be better specialized for its task (usability). In
some ways this meant the Mac started out less expandable --
in other ways, not so much so. But the PC hasn't evolved
that much -- I mean it still looks and has lots of
architectural similarites with a nearly 20 year old PC. This
one isn't done because it was good to begin with, but
because legacy holds the PC back.
MacOS
|
PCs
(Win98)
|
Started on the Motorola
68000 family of microprocessors and evolved all
through that product line.
|
Started on the Intel x86 family of
Microprocessors and Evolved all through that
product line. Though the Mac started on earlier
versions than Windows (but not than the PC in
general)
|
Apple made a leap to
PowerPC family of microprocessor, with the
smoothest microprocessor transition for a
mainstream OS. Mainstream Windows (95/98) will
probably never make a transition to another
architecture.
|
WinNT had support for quite a few RISC machines,
but cross compiles and other issues made it
unmanageable (or cost ineffective) and all but one
variant was killed. If MS can migrate NT to the
mainstream, then they will try to migrate NT (and
users) to another architecture (IA64).
|
Apple has added System
support for DSP with their A/V Macs. They almost
added (and dropped) support for Phillips TriMedia
chip (a second type of DSP specializing in
multimedia) -- but instead they opted to add a
DSP/NSP directly to the PPC (in the form of
AltiVec). So far it looks like this will be a very
powerful and smooth transition. There is more
support, training, libraries and tools -- and the
single jump to AltiVec offers far more than both
1/2 jumps the PC did with MMX and MMX2.
|
Windows may add some support for MMX which is
sort of an on-board DSP (years after NeXT and the
Mac had them). The transition didn't go well, in
that it didn't perform well enough to be compelling
and all the tools weren't in place -- but it is
being used. MMX2 (KNI) is also added, and
struggling for acceptance. The implementation,
libraries, System support and tools just aren't as
advanced (or compelling) as Apple's offerings --
though it has beat AltiVec to market. There are
other PC choices (like 3DNow) increasing ambiguity
and incompatibility and slowing adoption.
|
First Macs had no
expansion - quickly went to PnP expansion with
NuBus and now PCI. Macs started without any card
expansion slots. Moved to industry standard NuBus
which started PnP slots a decade before PCs (except
for Microchannel which flopped). Some incremental
improvements to NuBus that worked smoothly, There
was also PDS slots (early AGP), that worked but
wasn't the greatest way to go. Now Apple has
migrated away from all older standards and is all
PCI slots. Apple may make a big jump to add in AGP
support in the future. All were pretty smooth
transitions.
|
Windows started with 8 bit ISA slots (stinky)
and had many ugly transitions that all sort of
worked. There were 16 bit ISA, and 32 bit ISA.
Microchannel, and some others. Some worked well,
but many people had to throw away all their cards
during transitions. Now PCs support PCI, but still
haven't fully dropped their anachronistic ISA
legacy (transition still isn't complete). Some PCs
have AGP (which is like a fast PDS) -- but there
are a few versions of that technology as well. PnP
didn't work well until about '97 or '98 (10 years
after Macs) and still isn't as good as Mac (but
closer).
|
For user input, Macs
started with 1 keyboard port and 1 mouse port.
Quickly added ADB. Now moved over to full USB
support and has eliminated ADB. All pretty painless
transitions.
|
Windows started supporting1 keyboard port. Mice
were added later in multiple (incompatible) ways.
They didn't get a peripheral bus until 10 years
after Mac (via USB), and the transition to USB is
taking a lot longer than it is on the Mac.
|
Macs started with no hard
drive support but quickly jumped to SCSI. Which was
better than IDE for a decade. Just as IDE start to
realize real cost advantages, Apple added support.
When IDE became performance competitive as well,
then Apple moved over to all IDE. Both IDE and SCSI
support on Macs is more painless than on Windows,
and now USB and FireWire drives are being added to
the support as well.
|
Windows started supporting tons of proprietary
standards (MFM, SASI, etc.). They added IDE drives
-- but didn't have a good way to connect external
drives for a decade+. Finally, Windows got better
SCSI support about 5+ years after the Mac. There
were lots of quirks with drives and behavior (ATAPI
issues, etc.), and things that didn't work well --
but today, drive support on PCs is pretty easy.
|
Macs started supporting
128k of RAM. Jumped almost immediate to 512, 2 Meg,
4 Meg and then just physical limits (as many slots
as you have). In general the Macs were ahead of PC
in amount of memory supported and easy of use. Now
handles up to 1 GIG or more physical (with 4 Gig
theoretical limit).
|
PC's started supporting 640k of ram, but now
support as much as the Mac -- with a lot of painful
barriers bumped along the way (and usually broken
well after the Mac). The advantage of the PC was
more of them supported ECC or Parity memory --
which is nearly useless for anything, but it did
support it.
|
I will add to this list over time
- and input is welcome.
Conclusion
Which computer is technologically more advanced in each
of these areas is a more complex, and requires a lot more
effort to explain than a simple table. I hope that the rest
of this site helps you to understand each of those
issues better -- but this is just meant to give you an idea
of the basics.
I do believe there are very small areas where Windows is
superior, especially for small areas of time. But many of
those areas are often small and insignificant overall, and
over-hyped to the point of being ridiculous. An operating
system is the collection of all its parts - while MS's
marketing tries to program people that the only parts that
are important are the one or two areas that they happen to
be doing slightly better at a given time. When Apple
surpasses them in those areas, again, they change what is
the really critical parts of an OS. Unfortunately most users
aren't computer savvy enough to know all the details -- and
some buy into the marketing too much.
In general, evolution in the Windows arena was a painful
and frequent process (often done to try to catch up with the
Mac). In general, evolution on the Mac is required less
often and goes smoother. But there are lumps, and glides on
both sides. There are cases where Windows jumped ahead --
but they weren't always good "ahead". Sometimes they were
just "beta-testers" that dealt with all the bugs and quirks,
and once things got working properly (after two or three
generations of bumps, bruises and false starts) then Apple
would jump in and do the transition once correctly and be
out ahead again. Much of the time it was Apple doing
something like ADB, or NuBus (PnP self configuring slots)
and it taking 5 or 10 years for PCs to start the transition
to catch up (with many thumps along the way). Even in those
cases, the PC would finally create a comparable technology a
decade later (like USB or PCI), and then Apple still
succeeded in jumping in and adopting a technology smoother
and more quickly, and beating the PC's to conclusion. (The
conclusion being a complete transition to the better
technology, to the point where you could drop support for
the older one). Being a smaller market has advantages and
often that includes being able to change directions faster,
better and more universally.
So while there have been some bumps on Mac transitions,
and some smooth transitions in the PC market -- and while
there has been some minor cases where the PC got a
technology (concept) first (for the few early adopters,
quirks and all) and it took a year or two for the Mac to
leapfrog -- I would not trade the Mac's easy evolutions for
the PC's complex, more frequent, and more torturous
transitions! If only more people understood the realities of
all this.
|