Wednesday, July 15, 2009

An expansively Compaq architecture

In response to Jake Kuramoto's original "it just works" post, I briefly noted that there is a reason why Apple products "just work" while other products don't. Despite our love of open this and open that, Apple is pretty much a closed shop. In my response, I compared Apple to the popular alternative, and in the process stated the following:

In essence, the reason that Windows sucks is because IBM built its original PC on an open, easy-to-duplicate architecture, using an operating system that they didn't exclusively control. The sin of open systems?

However, in a follow-up post, Jake noted that I didn't get the facts quite right, at least on the hardware end:

I don’t agree entirely with John that the PC architecture was open; IBM didn’t open its architecture; it was legally reverse-engineered. Maybe it was accidentally open or improperly closed.

Here's how the writers of Wikipedia frame the issue:

The origins of this platform came with the decision by IBM in 1980 to market a low-cost single-user computer as quickly as possible in response to Apple Computer's success in the burgeoning market....The only proprietary component of the PC was the BIOS (Basic Input/Output System)....

The original "clones" of the IBM Personal Computer were created without IBM's participation or approval. Columbia closely modeled the IBM PC and produced the first "compatible" PC (i.e., more or less compatible to the IBM PC standard) in June 1982 closely followed by Eagle Computer. Compaq Computer Corp. announced its first IBM PC compatible a few months later in November 1982—the Compaq Portable. The Compaq was the first sewing machine-sized portable computer that was essentially 100% PC-compatible. The company could not directly copy the BIOS as a result of the court decision in Apple v. Franklin, but it could reverse-engineer the IBM BIOS and then write its own BIOS using clean room design.

Of the three computers mentioned by the Wikipedia writers, the one name that is still recognizable today (this recognition will probably be the topic of a future post) is Compaq. Paul Dixon provided additional insight into Comapq's process:

Programmers who had read the BIOS were known as dirty and others were known as clean. Dirty programmers were banned from working on the BIOS, but could work on the other big project which was BASIC.

Functionality of the IBM BIOS was not determined by looking at IBM code - this was banned. In fact, functionality was determined by a process known as "black boxing", which involved treating the BIOS as a black box and feeding every possible input to it and recoding the output.

For example, the keyboard driver was written by Steve Flannigan who had written the code for Silent 700 terminals at TI. He produced what appeared to be a fully compatible set of routines, but was told by someone that his code was only 50% of the size of IBM's. Compaq never found out why IBM's code was so much bigger, and no incompatibilities were ever attributed to this section of the BIOS, but hours were spent in trying to find additional functionality.

No one in Compaq ever declared that the BIOS was 100% compatible. The figure was a moving target, keeping a systems engineering department on their toes for years.

Whatever the true percentage - and nobody will ever really know unless IBM buys HP or vice versa - it was clear that the Compaq BIOS "just worked" and that this, coupled with the ability to purchase the "MS-DOS" (as opposed to "PC-DOS") operating system from Microsoft, was enough to get Compaq into the game. And to land Compaq in the Fortune 500 by 1986. But success was not always assured, as the New York Times noted in 1984:

WHEN I.B.M. recently announced it was introducing a portable personal computer, many pundits on Wall Street declared the death of companies manufacturing I.B.M. PC-compatible computers. Stock prices of corporations like Compaq plunged to what would have been considered bargain-basement prices if the shares had not been priced at a premium to begin with.

Now that I.B.M. has a portable of its own, are these companies that grew up as clones of Big Blue by offering a portable I.B.M.-like machine really finished after only a couple of years of skyrocketing success? Will such computers as the Chameleon, the Compaq, Columbia, Corona and Hyperion vaporize into the smoke of last year's best sellers as the Osborne did? Chances are they will not.

Certainly, some firms will fail, an inevitablility in the computer business. But, on the whole, PC-compatible computers, under another name, should be around for quite some time. The reasons are price and innovation.

This is obviously just a small part of the PC architecture story, and a small part of the stories of IBM and Compaq, but I'm happy to correct my previous error regarding the openness of the IBM PC architecture.

As to why we still recognize the Compaq name today, that's the topic of another post.
blog comments powered by Disqus