As an aside, most histories conclude that IBM "fucked up" and allowed a PC clone ecosystem to grow-up, so they only dominated PCs for 7 years or so, and after that it was too late to put the genie back in the bottle.
But if you look at the market for business PCs back in 1981, it was completely open anarchy surrounding the CP/M-80 "8-bit PC standard". There were hundreds of vendors, including some big names in the computer industry. (IBM certainly didn't care about Commodore and etc. And as the article mentions, this took tons of support time from understaffed DR.)
So I think IBM quite strategically wanted to define the "16-bit PC standard", which they controlled for most of the decade. And Microsoft was the most compliant vendor. (There were antitrust restrictions on IBM too...)
On a larger level, it sounds like DR thought 16-bit was just a repeat of the early 8-bit computer industry and didn't really understand what IBM was up to.
On the software end, after reading a couple of books about MSFT in that era (pre-Win 3.0), I think it is clearly manned by people who are smart and determined to be dominant in the business. I think they are more serious than a lot of their competitors.
I think the key was that Microsoft could see the market was expanding exponentially. I think grasping the effects of exponential change is difficult for the human mind but I think Gates, et al grasped that.
Exchanging a smaller short term reward for control of something exponentially growing is obvious in hindsight but a brilliant insight at the time.
There other insight was to go for the business and not home market like so many, frankly, better products in the 80s. The difference being that businesses replace their equipment once it’s been written off. The cycle times for home and educational users being much longer.
IBM themselves concluded that they fucked up with the PC. The PS/2 line was their second bite at the apple; the Micro Channel bus was proprietary. If they couldn't actually put the genie back in the bottle, it wasn't for lack of trying.
Most people are not aware that after the failure of the PS/2 attempt to control the PC market, IBM tried a third time using 7 patents it had for the PC AT (they didn't have any on the original PC or the XT). In the first half of the 1990s they went after the chipset makers (mostly in Japan at that time) and in the second half of the 1990s they went after the PC makers themselves all around the world. The would threaten to sue for all machines made up to that point unless they licensed not only the 7 AT patents (which would expire in 2001) but also a bunch of other unrelated patents that were much newer. As far as I know everybody signed the deal, which meant that IBM could make money without actually making any PCs themselves.
This is true, but the patents were all RAND-licensed, so the press reported that IBM made about $5 per PC. Which isn't nothing, but IBM had no ability to restrict PCs market segments (like they had with Microchannel). So we soon saw "commodity" PC servers and even midrange systems, stealing IBM's bread+butter.
In 'Managing Technical People', 1997, page 199, Watts Humphrey says that, after several failed attempts to produce a PC by IBM procedures, they set up an independent team that could skip the procedures as necessary to get the job done. This worked in the short term but it had two side-effects that were catastrophic in the long term: they lost control of the operating system to Microsoft, and they also lost control of the chips to Intel. He says both of these side-effects would have been caught by the checks inherent in the normal IBM procedures.
They might have caught the mistakes but I think the resulting product would have been a flop.
If IBM hadn't done what it did somebody else would have dominated the market with a product to fit the same niche. Perhaps somebody "downmarket" in the more consumer space who managed to punch upwards -- maybe Apple who had some business success with the Apple II + VisiCalc, etc. or maybe Kaypro or somebody in the CP/M space. Or perhaps somebody else "upmarket" like DEC, who came too late the personal computer space with products that nobody really bought (DEC Rainbow, etc) but maybe they'd have had more success if IBM hadn't gotten in there.
The market wanted a relatively open product to innovate in. When the PS/2 came along a few years later with proprietary bus, etc and tried to put the genie back in the bottle, it flopped.
One of my favorite scenes from Pirates of Silicon Valley is when Steve Ballmer (played by John DiMaggio, yes, the voice of Bender) narrates an audience aside, positively giddy with Ballmer glee at how his clever friend Bill put one over on those stodgy fellows from IBM and got them to give away the golden goose. It was like harpooning the great white whale. While it was a telefilm and thus a fictionalization, near as I can tell things happened pretty much as described.
I have been in similar meetings a couple times, when the client didn't really understand the long-term ramifications of they game plan - and we did. Of course, we weren't as fortunate as Microsoft, but on one instance I remember clearly - and where I made remarks privately as we left the building - the client was more or less forced to acquire, for a unreasoinably high amount, the tiny vendor a couple years down the line.
A meaningful gamble IBM made at the time was whether the BIOS was copyrightable - Williams v. Artic wasn't a thing until 1982, and it was really Apple v. Franklin in 1983 that left the industry concluding they couldn't just copy IBM's ROMs.
(Copying my own comment from Lobsters, because I wondered why this didn't show up on here.)
It's interesting to me that this story hasn't had a lot of reaction.
It is the reason that Linux exists. It's the reason BSD came second. It's the reason for OS/2 and Windows 3 and Windows NT.
CP/M-86 was badly late: it followed over three years after the release of the 8086, the official successor to the 8080, the device that made Intel's fortune.
There was a single default OS for the 8080: DR's CP/M.
It was the industry standard, and the early business microcomputer industry ran on it and essentially nothing else. (But it needed at least a single floppy drive, which meant it was for £1000+ business computers, which in turn is why BASIC-in-ROM dominated in the inexpensive home-computer space: Commodore PET, Apple II, TRS-80, and their various 1980s successors.)
The Z80 was a tweaked 8080. Business was waiting on the 8080 successor that could handle more RAM -- which shipped as the 8086 in 1978.
DR didn't have an OS for it. It wasn't binary compatible: you couldn't run CP/M-80 on it, like you could with a Z80.
This article explains why DR didn't do that.
As a result, a cheap 3rd party compatible OS dominated, and that made the fortune of Microsoft, and that (alongside IBM's poor contract negotiation, which permitted MS to sell it to whoever it wanted) created the x86 PC industry.
DOS is why the 286 was a bit of a flop. That drove the 386.
(Aside: and, briefly, the Atari ST and Commodore Amiga -- and the Acorn Archimedes, whose CPU became the most popular best-selling CPU family in the history of humanity, and is why Intel is in financial difficulties now.)
The original all-32-bit 80386DX was too expensive. So, again, DOS drove the development of the cheaper 16-bit-bus 80386SX for cheap DOS 386s which didn't multitask and didn't run GUIs but ran DOS really well.
That market of cheap commodity 386 PCs is the soil in which Linux grew.
But in the late 1980s, the BSD folks were still focussed on minicomputers and things and they missed the PC gravy train.
286 protected mode gave you 16 MB of memory space, but it still had mandatory segments. Usable but it needed hard work and careful thought.
IIRC, that is why the 286 version of MCW Coherent OS still only allowed a maximum program size of 64 kB of code -- plus 64 kB of data. Very limiting. OK for early-Unix-style (say up to UNIX V6, of Lions Book fame and "you are not expected to understand this" comment.)
386 protected mode gave you 4GB of space, and you could choose the segment size, which meant everyone chose a segment size of ALL THE RAM PLS KTHXBYE. That meant you got flat addressing: all pointers could be flat 32-bit INTs. Simples!
The 386 also added the ability to seamlessly jump from 8086 mode to 386 mode and back.
The 286 intended that to be a one-way trip. DR and others found a loophole (IIRC the `LOADALL` instruction) and a way to exit 286 mode again but it forced a full CPU reset, so it was slow.
Not only did the 386 make it easy to get in and out of 8086 mode for DOS binaries, it natively supported multiple concurrent hardware-assisted 8086 VMs, plus memory management so you could keep most of DOS's 640kB free. So, win for protected-mode code, win for DOS code.
Intel aimed to please the DOS folks, and to alleviate jealousy of the 680x0 and its nice flat memory space, and make it easy to port UNIX and other memory-managed OSes over from minis and workstations.
TL;DR
The 286 protect mode was meant for 286 native OSes and it was not easy to run 8086 stuff, or change modes. Plus, segments, which everyone hated.
The 386 protect mode optionally got rid of all the stuff that people disliked about 16-bit x86 and offered alternatives that rivalled other platforms than x86.
Biggest change until x86-64 came along in 2001-2002 or so.
- In May 1990, Windows 3.0 running on a Intel 80386 could run multiple DOS VMs simultaneously
- In April 1992, OS/2 2.0 finally supported multiple DOS VMs. OS/2 1.x supported running only one DOS app at a time.
While MS Excel had been available on Windows for many years before Win3.0, Word for Windows had only been released a year before Win3.0.
So many PC users would still have been using the DOS version of WordPerfect (and maybe the DOS version of Lotus 123). Windows 3.0 allowed the user to run many of their DOS apps at the same time, which DOS and OS/2 couldn't do.
Windows/386 could do that in 1987, but not many people bought it. Power users had DESQview/386 or something similar.
If IBM had listened to Microsoft, OS/2 1.0 could have done that in 1987 too... and then I think OS/2 could have been a hit and Windows 3.0 might never have happened.
But if you look at the market for business PCs back in 1981, it was completely open anarchy surrounding the CP/M-80 "8-bit PC standard". There were hundreds of vendors, including some big names in the computer industry. (IBM certainly didn't care about Commodore and etc. And as the article mentions, this took tons of support time from understaffed DR.)
So I think IBM quite strategically wanted to define the "16-bit PC standard", which they controlled for most of the decade. And Microsoft was the most compliant vendor. (There were antitrust restrictions on IBM too...)
On a larger level, it sounds like DR thought 16-bit was just a repeat of the early 8-bit computer industry and didn't really understand what IBM was up to.
Exchanging a smaller short term reward for control of something exponentially growing is obvious in hindsight but a brilliant insight at the time.
There other insight was to go for the business and not home market like so many, frankly, better products in the 80s. The difference being that businesses replace their equipment once it’s been written off. The cycle times for home and educational users being much longer.
https://hardcoresoftware.learningbyshipping.com/p/019-billg-...
If IBM hadn't done what it did somebody else would have dominated the market with a product to fit the same niche. Perhaps somebody "downmarket" in the more consumer space who managed to punch upwards -- maybe Apple who had some business success with the Apple II + VisiCalc, etc. or maybe Kaypro or somebody in the CP/M space. Or perhaps somebody else "upmarket" like DEC, who came too late the personal computer space with products that nobody really bought (DEC Rainbow, etc) but maybe they'd have had more success if IBM hadn't gotten in there.
The market wanted a relatively open product to innovate in. When the PS/2 came along a few years later with proprietary bus, etc and tried to put the genie back in the bottle, it flopped.
It's interesting to me that this story hasn't had a lot of reaction.
It is the reason that Linux exists. It's the reason BSD came second. It's the reason for OS/2 and Windows 3 and Windows NT.
CP/M-86 was badly late: it followed over three years after the release of the 8086, the official successor to the 8080, the device that made Intel's fortune.
There was a single default OS for the 8080: DR's CP/M.
It was the industry standard, and the early business microcomputer industry ran on it and essentially nothing else. (But it needed at least a single floppy drive, which meant it was for £1000+ business computers, which in turn is why BASIC-in-ROM dominated in the inexpensive home-computer space: Commodore PET, Apple II, TRS-80, and their various 1980s successors.)
The Z80 was a tweaked 8080. Business was waiting on the 8080 successor that could handle more RAM -- which shipped as the 8086 in 1978.
DR didn't have an OS for it. It wasn't binary compatible: you couldn't run CP/M-80 on it, like you could with a Z80.
This article explains why DR didn't do that.
As a result, a cheap 3rd party compatible OS dominated, and that made the fortune of Microsoft, and that (alongside IBM's poor contract negotiation, which permitted MS to sell it to whoever it wanted) created the x86 PC industry.
DOS is why the 286 was a bit of a flop. That drove the 386.
(Aside: and, briefly, the Atari ST and Commodore Amiga -- and the Acorn Archimedes, whose CPU became the most popular best-selling CPU family in the history of humanity, and is why Intel is in financial difficulties now.)
The original all-32-bit 80386DX was too expensive. So, again, DOS drove the development of the cheaper 16-bit-bus 80386SX for cheap DOS 386s which didn't multitask and didn't run GUIs but ran DOS really well.
That market of cheap commodity 386 PCs is the soil in which Linux grew.
But in the late 1980s, the BSD folks were still focussed on minicomputers and things and they missed the PC gravy train.
IDK why but this feels like an over-simplification of the differences between real vs 286 vs 386 protected mode. But I'd love some good exposition...
Executive summary:
286 protected mode gave you 16 MB of memory space, but it still had mandatory segments. Usable but it needed hard work and careful thought.
IIRC, that is why the 286 version of MCW Coherent OS still only allowed a maximum program size of 64 kB of code -- plus 64 kB of data. Very limiting. OK for early-Unix-style (say up to UNIX V6, of Lions Book fame and "you are not expected to understand this" comment.)
386 protected mode gave you 4GB of space, and you could choose the segment size, which meant everyone chose a segment size of ALL THE RAM PLS KTHXBYE. That meant you got flat addressing: all pointers could be flat 32-bit INTs. Simples!
The 386 also added the ability to seamlessly jump from 8086 mode to 386 mode and back.
The 286 intended that to be a one-way trip. DR and others found a loophole (IIRC the `LOADALL` instruction) and a way to exit 286 mode again but it forced a full CPU reset, so it was slow.
Not only did the 386 make it easy to get in and out of 8086 mode for DOS binaries, it natively supported multiple concurrent hardware-assisted 8086 VMs, plus memory management so you could keep most of DOS's 640kB free. So, win for protected-mode code, win for DOS code.
Intel aimed to please the DOS folks, and to alleviate jealousy of the 680x0 and its nice flat memory space, and make it easy to port UNIX and other memory-managed OSes over from minis and workstations.
TL;DR
The 286 protect mode was meant for 286 native OSes and it was not easy to run 8086 stuff, or change modes. Plus, segments, which everyone hated.
The 386 protect mode optionally got rid of all the stuff that people disliked about 16-bit x86 and offered alternatives that rivalled other platforms than x86.
Biggest change until x86-64 came along in 2001-2002 or so.
So many PC users would still have been using the DOS version of WordPerfect (and maybe the DOS version of Lotus 123). Windows 3.0 allowed the user to run many of their DOS apps at the same time, which DOS and OS/2 couldn't do.
Windows/386 could do that in 1987, but not many people bought it. Power users had DESQview/386 or something similar.
If IBM had listened to Microsoft, OS/2 1.0 could have done that in 1987 too... and then I think OS/2 could have been a hit and Windows 3.0 might never have happened.