OS/2 a quarter century on: Why IBM lost out and how Microsoft won
Let's pile into the DeLorean to see what might have been
The new PC operating system
The third strand of the IBM offensive was its new PC operating system, OS/2. This presented a new challenge for the company. For years, software was simply part of "the computer" that a customer bought, and only following Justice Department action in 1968 did IBM offer software unbundled from the hardware, in June the following year. Most big iron software continued to be written for, and tied to, the host hardware. IBM had never had to sell system software into a mature open market before, a market in which customers could make their own system software decisions. These were entirely new waters for Big Blue, and in those waters lurked something very aggressive indeed.
With its multitasking, fine-grained multithreading, IPC goodies like pipes and queues, a GUI and a new file system, OS/2 was a match for anything on the market. The kernel was extremely well-designed, and capable of multi-tasking everything thrown at it, and running apparently indefinitely. The OS/2 APIs also reflected the planning and foresight intended of a system which was meant to be used for many years ahead.
IBM had partnered with the relatively tiny outfit Microsoft to produce OS/2, and despite nearly axing the partnership, somehow the two staggered on to launch day. Here’s Bill Gates demonstrating Microsoft OS/2 in a 1987 corporate video:
So OS/2 was truly a new "platform". But it was brand new, and had no applications at launch. OS/2 needed an "ecosystem", as we call them today. What, then, to do?
What’s a platform?
IBM at the time had no idea of the concept of a hardware-independent platform. Quite literally, it didn’t know what it didn’t know. But then why would it have to? Customers generally bought what IBM told them to buy, the only question being whether they would buy the products sooner rather than later. OS/2 needed a market of developers, and widespread buy-in from hardware manufacturers, so that OS/2 could drive a wide range of graphics cards, printers and other peripherals. This was the classic chicken-and-egg problem. Why devote resources to a market that isn’t there?
For all the technical wizardry of the system, OS/2 applications offered few advantages of their own, and adopting OS/2 gave enterprise support teams a lot of new headaches.
IBM’s size and sheer industry authority compelled a few big DOS app vendors to make the switch: Ashton Tate produced dBASE for example, but the presence of the apps on OS/2 didn’t transport the ecosystems across. On the hardware side, device drivers were fiendishly difficult to produce, and three years after launch it was hard to get OS/2 to print. Today, platform vendors know they need to seed and cajole and even bribe these markets into existence – paying developers or device driver writers. Microsoft knew this, but IBM didn’t.
When it came to backward compatibility, OS/2 didn’t have a great story. Designed at first to be 16-bit, the new system didn’t take advantage of the useful features of the Intel 32-bit chip 80386, which allowed virtual DOS machines to run well. The ‘DOS Compatibility Box’ in 16-bit OS/2 was unreliable and slow. And so the only advantage of running OS/2 - in the absence of uniquely attractive apps or hardware support - was allowing applications to use more than 640kb of memory. As it happened, the summer of 1988 saw another surge in DRAM pricing, putting the 2MB needed to run OS/2 into the realm of the painfully expensive. Nor was the GUI particularly compelling. OS/2 with the Presentation Manager GUI put the new platform beyond the reach of even more legacy PCs.
Soon it was making more sense for a business to patch its DOS PCs with Heath Robinson task-switchers and memory extenders, at least for now.
The first version of OS/2 that staggered into existence at the end of 1987 was a limited, if rock-solid character mode interface, with built-in task switching. It would be a full year before the "real" graphical version of OS/2 with Presentation Manager arrived. It didn’t even have the modern file system, HFS, with hot-fixes and large file and partition support, that had been promised.
Ideas above your workstation
One development in the summer of 1988 would fundamentally change the relationship. DOS had had a memory barrier of 640kb, and there was a thriving market of DOS extenders, which both juggled memory blocks around and tricked the processor into lending the system a little more. OS/2’s undoubted selling point was its memory handling, with no restriction for applications all the way up to 15MB. But an intern at Redmond that summer had found a way of tricking DOS into running in the Intel 286’s Protected mode, giving it more memory.
The intern’s boss showed the work to Steve Ballmer, and Microsoft executives began to wonder if Microsoft could use the Windows shell to act as a DOS extender too. The PC could boot into DOS, start Windows, and gradually replace the DOS components underneath it, much like a driver making a wheel change while the car was moving. It would be tricky. But getting Windows to run at all was full of such hacks – it was, technically speaking, already self-modifiying code.
The "shell plus DOS extender" would not have the rich APIs of OS/2 – and the system would never ever be stable. It wouldn’t even give the user long filenames. DOS used the archaic 8+3 (“LTTR2BOB.WPD”) common a decade before. It wasn’t an operating system at all. But it was a GUI and with a bit of smoke, a few mirrors and a lot of faith on the part of the consumer, it could be presented as a new operating system.
And perhaps even at a stretch Windows could be marketed as a new "platform". The new platform meant all your existing applications were passé, but shiny new, more exciting ones would soon come along. No DOS GUI shell had a critical advantage at the time. It was potentially a winner.
Microsoft had several great advantages. One was that it was well-placed to coax an "ecosystem" into life: it had developer tools, it could price them cheaply, and it knew how to market Windows as "a new era", something with ever increasing momentum. Microsoft didn’t have legacy internal divisions to placate.
Secondly, it had a tremendous advantage in its relationship with PC builders. The PC builders, the OEMs, paid for Microsoft MS-DOS whether they shipped it or not. All customers wanted was something that ran dBase and 1-2-3. Microsoft could easily slip Windows onto every hard disk that shipped too, if it needed to. And trying out Windows was fairly painless and non-disruptive.
Thirdly, the press and pundits largely wanted Microsoft to succeed, and IBM to fail. This wasn’t through any great affection for Microsoft at all. But the clones had created a thriving market and nobody wanted IBM to control both the hardware and the software industry again. There was a strong desire not to return to a world controlled by one huge vertically integrated giant. This wasn’t apparent when Windows 3.0, the first version to do the Protected Mode trick, made its official debut in the summer of 1990, three years after OS/2 had been announced. Much of the press described Windows 3.0 as just another contender, vying with the GEM DOS shell, and Quarterdeck memory extender, for the DOS business.
But Microsoft had one more trump card to play.