Zum Inhalt springen

Gary Kildall and the OS IBM Didn't Take

Zusammenfassung

Gary Kildall invented the operating system model that made the personal computer industry possible. His CP/M — Control Program for Microcomputers — was the dominant OS for 8-bit microcomputers throughout the late 1970s, the software infrastructure on which thousands of applications ran, the product that proved that one operating system could work across dozens of different hardware configurations. When IBM came to Kildall in 1980 to license an OS for its new personal computer, the negotiations collapsed. IBM turned to Bill Gates, who bought someone else’s CP/M clone for $50,000 and licensed it to IBM. The rest is the history of Microsoft. Kildall spent the decade that followed watching a technically inferior copy of his work become the standard for personal computing, fighting Microsoft with better products that never caught up, and never fully recovering from the moment everything changed. He died in 1994, at 52, from a head injury, with his memoir unfinished. He is remembered, when remembered at all, as the man who wasn’t there when IBM called.

The First Computer Scientist in the Room

Gary Arlen Kildall was born on May 19, 1942, in Seattle, Washington. His father ran a navigation school that taught sailors to use sextants and charts. Kildall grew up around instruments, precision, and practical problem-solving — a childhood inflected by the technical culture of maritime Seattle.

He studied mathematics at Seattle Pacific University, graduating in 1967, then pursued graduate work at the University of Washington. His PhD, completed in 1972, was in computer science — a discipline so new that the University of Washington’s program was among the first in the country. Kildall was part of the inaugural cohort of people who could legitimately call themselves computer scientists rather than mathematicians or engineers who had drifted into computing.

His dissertation focused on data flow analysis — formal techniques for understanding how data moved through programs, used to optimize compiler output. It was rigorous theoretical work, the kind that belongs in research laboratories. Kildall was not drawn to theory for its own sake. He wanted to build things.

After completing his doctorate, he took a faculty position at the Naval Postgraduate School in Monterey, California, teaching computer science to military officers. The position came with a side arrangement that would change the industry: the Navy contracted him as a consultant to Intel, which was then struggling to find software for its new microprocessors. Kildall was given access to Intel’s chips before they were commercially available. He was, for a brief period, one of the few people in the world who knew how to program them.

PL/M: The First Language for Microprocessors

The Intel 8008, released in 1972, was the first commercially available 8-bit microprocessor. It was an extraordinary piece of engineering — an entire central processing unit on a single chip — but programming it required writing assembly code: direct manipulation of registers and memory addresses in the chip’s native instruction set. Writing an assembler was straightforward. Writing anything of real complexity was not.

Kildall’s response was PL/M (Programming Language for Microprocessors), a high-level programming language designed specifically for microprocessor development. Released in 1973, PL/M borrowed heavily from PL/I, the IBM systems language, but stripped it to what was practical on a chip with 8-bit registers and minimal memory. It allowed programmers to write systems software — device drivers, I/O routines, embedded control programs — without descending to assembly for every operation.

PL/M was not glamorous. It had no academic prestige, no Turing Award waiting for it. It was engineering: get the job done. But it established Kildall’s method. He approached software pragmatically, as infrastructure — tools that existed to make other work possible, not as ends in themselves. The approach was exactly right for the moment the industry was entering.

Intel used PL/M internally. It became the implementation language for much of Intel’s development software in the mid-1970s. Kildall received consulting fees, not royalties. He was still thinking of himself as an academic with interesting side projects.

CP/M: The Architecture of the Operating System

In 1974, Kildall received an Intel 8080 development board. He wanted to connect it to a floppy disk drive — useful for storing and loading programs without manually toggling switches. The problem was that every interaction with the disk required hardware-specific code: different disk controllers had different interfaces, different timing, different sector sizes. Any program that read or wrote files would have to be rewritten for each hardware configuration.

Kildall’s solution was architectural. He divided the problem into two layers:

The Basic Input/Output System (BIOS): a thin, hardware-specific module that the user (or hardware manufacturer) provided for their particular disk controller and I/O hardware. The BIOS handled the physical details — reading a sector, writing a byte — in terms specific to that machine.

Above it, CP/M itself (Control Program for Microcomputers): a hardware-independent operating system that managed files through a consistent interface, maintained a directory structure on disk, and provided a command interpreter. Programs wrote to CP/M’s standard calls; the BIOS translated those calls into hardware operations. A program written to CP/M ran on any machine that had a CP/M BIOS written for it.

This was the BIOS abstraction — the separation of hardware-specific code from the operating system proper. Kildall did not name it as a principle; he built it as a practical solution to a practical problem. But the architecture he established in 1974 defined how operating systems would relate to hardware for decades. When IBM designed its PC BIOS in 1981, it was following Kildall’s model. When Microsoft licensed the BIOS concept into Windows, it was following Kildall’s model. Every subsequent operating system that separated kernel code from hardware drivers — every modern OS — is architecturally descended from the structure Kildall devised to connect an Intel 8080 board to a floppy disk.

CP/M 1.4, released in 1977, was the version that established the standard. It ran on machines using the S-100 bus — the expansion bus introduced by the Altair 8800 — and shortly thereafter on dozens of other hardware configurations. The key was the BIOS: hardware manufacturers who wanted their machines to run CP/M’s growing software library needed only write a BIOS for their specific hardware. Kildall supplied the OS; they supplied the hardware layer. This OEM model — licensing an operating system to hardware manufacturers who adapted it for their machines — was the commercial structure that CP/M pioneered and that MS-DOS would later replicate.

CP/M’s Technical Innovations

CP/M introduced several concepts that became standard across the industry:

  • File Control Blocks (FCBs): data structures for managing open files, providing programs a consistent interface to disk I/O regardless of underlying hardware.
  • Transient Program Area (TPA): the memory region above the resident OS where user programs ran, establishing the model of OS-resident code at fixed addresses with programs loaded above.
  • The command line interpreter (CCP): a built-in command processor handling file operations — DIR, ERA, REN, TYPE — that became the template for MS-DOS’s COMMAND.COM and Unix shells on microcomputers.
  • BIOS as hardware abstraction layer: the concept that would appear in every subsequent PC architecture.

When Microsoft’s QDOS (later MS-DOS) was designed to replace CP/M on the IBM PC, it was designed to be compatible enough that CP/M programs could be ported with minimal change. This was not coincidence. The programmer who wrote QDOS, Tim Paterson, was explicit: he was building a CP/M-compatible system for the 8086.

Digital Research and the CP/M Empire

In 1976, Kildall and his wife Dorothy McEwen founded Digital Research, Inc. (DRI) to commercialize CP/M. The company was based in Pacific Grove, California — a small coastal town near Monterey, a place more associated with marine biology than technology. The address was less Silicon Valley than afterthought, but it did not matter. CP/M spread by reputation, through hobbyist networks, Byte magazine articles, and the testimony of users who had discovered that one operating system could run on dozens of machines.

By 1980, CP/M had approximately 600,000 licensed installations — a large number for an era when the entire personal computer market was measured in the low millions. It ran on over 3,000 software packages: WordStar (the dominant word processor), dBASE II (the dominant database manager), Turbo Pascal (the breakthrough programming environment), Supercalc (a VisiCalc competitor). The CP/M software ecosystem was the richest in the personal computer market.

Digital Research was generating millions in revenue. Kildall was wealthy, respected, and technically in the strongest possible position for what was coming.

What was coming was IBM.

The Meeting That Changed Everything (1980)

In the summer of 1980, IBM was developing its first personal computer under a project so secret it was codenamed Project Chess. IBM’s traditional approach to new products — years of internal development, proprietary components, controlled distribution — had been abandoned under competitive pressure: the Apple II and its imitators were taking corporate customers IBM regarded as its own. The solution was to build a PC quickly, using off-the-shelf components and outside software, and ship it within a year.

IBM’s software team, led by Jack Sams, arrived at Digital Research’s Pacific Grove offices in August 1980. Their goal was to license CP/M for the IBM PC. CP/M was the obvious choice: it was the dominant operating system, it had the largest software library, and it had demonstrated it could be ported to new hardware.

What happened at that meeting has been disputed for four decades. The account that became legend — propagated by Paul Allen’s memoir, by various Microsoft-adjacent sources, and by the general narrative of Gates’s rise — is that Kildall was out flying his private plane when IBM arrived, leaving his wife Dorothy to deal with the visitors. According to this version, Kildall’s casual attitude cost him the most important business meeting of the decade.

The reality, reconstructed from multiple contemporary accounts and from Kildall’s own unfinished memoir, is more complicated.

Dorothy McEwen did meet IBM’s team initially. She was Digital Research’s president and a full business partner; this was not an unusual arrangement. The first meeting broke down over IBM’s nondisclosure agreement: IBM’s NDA was written to give IBM sweeping rights over any information Digital Research revealed during negotiations — terms that Digital Research’s lawyers found unacceptable. IBM routinely presented such agreements to the smaller companies it dealt with; Kildall’s team was one of the few that pushed back.

Kildall did subsequently meet with IBM’s representatives. The negotiations continued. Where they foundered was on licensing terms: IBM wanted to purchase the rights to CP/M outright, or to license it on terms that would have given IBM extensive control over the software’s development. Kildall refused. He had spent years building CP/M and Digital Research; he was not willing to surrender control of his core product to a single customer, however large.

Tom Rolander, Kildall’s technical vice president and close confidant, described the breakdown in subsequent interviews as a matter of terms: Digital Research was unwilling to accept the conditions IBM required, and IBM was unwilling to accept Digital Research’s counter-proposal.

IBM turned to Microsoft.

The Legend vs. The Record

The “Kildall missed the meeting” story has been repeated so many times that it has calcified into received history. It is a convenient narrative: the flaky inventor who couldn’t be bothered versus the sharp businessman who seized the opportunity. Kildall disputed it vigorously. Multiple Digital Research employees present that week corroborate that Kildall participated in negotiations and that the breakdown was over contract terms, not absence. The documentary record — IBM’s own accounts, Digital Research employee testimony, Kildall’s memoir drafts — supports a more nuanced picture.

The legend persists because it serves the Microsoft narrative: Gates’s success as deserved, the result of competitive hunger rather than circumstance. The contractual account is less dramatic but more accurate: two companies with incompatible positions on intellectual property and control, and an impatient IBM that found an alternative.

MS-DOS and the Replicated System

IBM, having failed to acquire CP/M, turned to Bill Gates. Gates, who had a relationship with IBM through Microsoft’s BASIC interpreter, initially referred IBM back to Digital Research. When that went nowhere, Gates introduced IBM to an operating system Microsoft did not yet own.

Seattle Computer Products had developed QDOS (Quick and Dirty Operating System) for its own 8086-based hardware. QDOS was explicitly modeled on CP/M — its creator, Tim Paterson, had CP/M documentation in hand while writing it — adapted for the Intel 8086’s 16-bit architecture. Microsoft purchased the rights to QDOS from Seattle Computer Products for $50,000 (later paying another $25,000 for full ownership), renamed it MS-DOS (Microsoft Disk Operating System), and licensed it to IBM as PC-DOS.

IBM shipped the IBM PC in August 1981. PC-DOS was available for $40. CP/M-86 — the 8086 port of Kildall’s OS, which Digital Research had been working on — was available for the IBM PC at $240, and had to be specially ordered rather than purchased at retail. The price differential alone made the outcome predictable. IBM’s marketing machine, the largest in the computer industry, was behind MS-DOS. CP/M-86 was an afterthought.

The IBM PC clone market — which IBM had accidentally enabled by using off-the-shelf components and a relatively open architecture — standardized on MS-DOS. By 1983, CP/M was irrelevant to the mainstream PC market. A software ecosystem that had taken Digital Research six years to build was obsolete in eighteen months.

The Long Rearguard (1982–1991)

Kildall did not give up. The decade that followed the IBM deal was a sustained technical effort to compete with a company that had the IBM imprimatur, distribution advantages, and Microsoft’s considerable commercial aggression.

Digital Research’s responses were frequently technically superior to their Microsoft equivalents and commercially ineffective:

CP/M-86 and Concurrent DOS addressed the 8086 market but could not overcome MS-DOS’s installed base and pricing. Concurrent DOS offered multitasking that MS-DOS could not provide; users preferred compatibility.

GEM (Graphical Environment Manager), released in 1985, was a graphical user interface for DOS that predated Windows 1.0. GEM’s desktop and icons closely resembled the Apple Macintosh interface — possibly too closely. Apple sued Digital Research in 1985, and the settlement forced DRI to remove several interface elements, crippling GEM’s functionality. GEM survived as the interface for the Atari ST — a popular computer in Europe — and as the interface for Ventura Publisher, a desktop publishing application. As a general-purpose GUI for DOS, it was finished.

DR-DOS, released in 1988, was Kildall’s most direct assault on Microsoft’s position. DR-DOS was fully compatible with MS-DOS — it ran all the same applications — while offering genuine technical improvements: superior memory management (using DOS’s upper memory blocks more effectively), built-in disk compression, better networking support, and multi-user capabilities. In technical comparisons, DR-DOS consistently matched or exceeded MS-DOS. PC Magazine gave it favorable reviews.

Microsoft’s response to DR-DOS was not technical. Internal Microsoft emails, later disclosed in litigation, showed Microsoft engineering Windows to display error messages on systems running DR-DOS — messages suggesting Windows was not compatible with the OS, even though the underlying problem did not exist. This FUD (Fear, Uncertainty, and Doubt) campaign — discouraging users from adopting a technically superior competitor through manufactured compatibility concerns — was later the subject of antitrust investigation in the European Union, which concluded that Microsoft had engaged in exclusionary conduct.

DR-DOS gained market share despite Microsoft’s tactics. When Novell acquired Digital Research in 1991 for approximately $80 million, DR-DOS had sold over a million copies and was a credible alternative. Novell eventually sold DR-DOS to Caldera, which continued antitrust litigation against Microsoft; the case settled in 2000 for an undisclosed amount.

By 1991, Kildall was done. He sold Digital Research to Novell, retained some involvement in technology investments, and turned to other projects. He appeared as a technical host on “Computer Chronicles,” the public television technology program. He was working on a multimedia project called KnowledgeSet. He was writing his memoir.

Dead End: When Being Right Isn’t Enough

The story of CP/M is the encyclopedia’s most direct case study in platform economics overriding technical merit.

CP/M was not a dead end because it was bad. It was the best personal computer operating system available when IBM was making its platform decision. The BIOS abstraction it pioneered became universal. The file system concepts it introduced became standard. The command-line interface it shipped was the template for everything that followed — including DOS. Its successor DR-DOS was technically superior to MS-DOS.

What CP/M could not survive was platform lock-in at the moment of industry formation. The IBM PC was not just a computer; it was the decision point at which the entire industry would standardize. Once IBM chose MS-DOS and the clone market formed around it, the question shifted from “which OS is better?” to “which OS runs more software?” Every application ported to MS-DOS increased DOS’s advantage; every ISV choosing to develop for DOS first (or only) increased the penalty for running CP/M. Network effects are not neutralized by technical excellence.

The second factor was IBM’s price structure. Digital Research, negotiating in 1980, had no way to know that IBM’s PC would catalyze a clone industry, that the clone industry would be the real market, and that software sold through IBM retail channels at $40 would establish a price ceiling that made CP/M-86 at $240 uncompetitive before it launched. IBM’s distribution and retail pricing were not part of the negotiation; they were the negotiation’s aftermath.

The third factor was Microsoft’s aggressive response to competition. Kildall built better products. Microsoft used its Windows relationship to suppress the adoption of those products through technical manipulation and FUD. The DR-DOS antitrust settlement, the internal emails about engineering compatibility failures into Windows — these document a competitive strategy that was not about technical merit.

The Counterfactual

What if Digital Research had accepted IBM’s terms in 1980? The counterfactual is irresistible and unanswerable. CP/M-86 would have become the IBM PC standard. The clone market, if it formed (and IBM’s architecture made clones possible regardless of the OS), would have standardized on CP/M. Microsoft would have remained a programming languages company — BASIC, Fortran, COBOL — without the DOS royalties that funded Windows development. Kildall’s BIOS abstraction would be the heritage of a successful company rather than a footnote in Microsoft’s origin story.

The counterfactual matters less than what it reveals: the outcome of 1980–1981 was not determined by technical quality, market fit, or entrepreneurial merit. It was determined by the terms of a single licensing negotiation, IBM’s impatience with those terms, and Bill Gates’s willingness to move fast with someone else’s software.

The End

Gary Kildall died on July 11, 1994, in Monterey, California. He was 52 years old. The cause was a head injury sustained at a local bar — some accounts say a fall, others a confrontation. He was found unconscious and never regained consciousness. His memoir, “Computer Connections,” was never finished and was not published in his lifetime.

He had spent his final years watching the industry grow around the foundation he had built, increasingly absent from its public narrative. The people who knew him describe a man genuinely puzzled — not bitter, but genuinely puzzled — at how completely the record had been revised. He had not missed a meeting. He had not been flying his plane. He had negotiated seriously, declined terms he considered unacceptable, and lost a platform war through a combination of circumstances he could not fully have anticipated.

His contributions were substantial enough that they are impossible to ignore on examination: the BIOS abstraction, the OEM licensing model, the command-line interface architecture, the normalization of a single OS running on diverse hardware. These are not footnotes. They are the infrastructure of personal computing. They just arrived with someone else’s name on them.

Chris Larson, who worked at Digital Research and later wrote about the era, put it simply: Kildall figured out most of what an operating system needed to do, built it, proved it worked, and spent the rest of his career watching Microsoft profit from the proof.

For the IBM PC decision that bypassed CP/M, see The IBM PC. For the Microsoft that benefited, see Bill Gates and Microsoft.


📚 Sources