Skip to content

Gary Kildall and the OS IBM Didn't Take

Abstract

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.

Gary Kildall
IEEE Milestone plaque for CP/M (1974) in Pacific Grove, dedicated in 2014. Image: Piotr J. Flatau, public domain, via Wikimedia Commons.

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 took his mathematics degree at the University of Washington in 1967, a master’s in computer science there in 1968, and a PhD in 1972, in a discipline so new that 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, “Global expression optimization during compilation,” worked on the data flow analysis that lets a compiler reason about how values move through a program in order to optimize its 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

Kildall and his wife Dorothy McEwen set up the company that became Digital Research, Inc. (DRI) to commercialize CP/M, registering it first under the name Intergalactic Digital Research. 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 first licensed QDOS from Seattle Computer Products in December 1980 for $25,000, then in July 1981 bought all rights outright for $50,000, 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 discouraged users from adopting a competitor through manufactured compatibility concerns. Microsoft’s licensing practices drew a separate antitrust response: the US Department of Justice, acting alongside the European Commission on identical terms, settled with Microsoft in July 1994 over per-processor licensing deals that made OEMs pay for MS-DOS on machines that shipped without it.

DR-DOS gained market share despite Microsoft’s tactics. When Novell acquired Digital Research in 1991, DR-DOS had sold over a million copies and was a credible alternative. Novell later sold DR-DOS to Caldera, which sued Microsoft over the compatibility sabotage; that case settled in January 2000 on terms not then disclosed.

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.

The memoir had a specific trigger. In 1992, the University of Washington’s computer science program celebrated its 25th anniversary. Kildall, one of the first PhDs the program had produced, attended as an ordinary member of the audience. The keynote was given by Bill Gates, a Harvard dropout whose connection to the university was as a donor. Kildall took the slight hard and began writing Computer Connections: People, Places, and Events in the Evolution of the Personal Computer Industry, completing a rough draft by late 1993. The manuscript is not a neutral document. “Don’t think for a minute that Gates made it ‘big time’ because of his technical savvy,” it says, describing Gates as “more of an opportunist than a technical type.” Harold Evans later used the unpublished draft as a primary source for the Kildall chapter of They Made America (2004), which concluded that Microsoft’s fortune rested on Kildall’s inventions; IBM and Microsoft both disputed that account as one-sided.

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, at 52. He had suffered a head injury three days earlier at a biker bar; accounts differ on whether he fell or was struck. He was discharged from hospital twice before he died, and the autopsy was inconclusive, though it noted evidence of chronic alcoholism. 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