Reporting from the Intel Developer Forum last month, I covered an Intel initiative called the Extensible Firmware Interface, or EFI. It was, I thought, a solid but unexciting story: Intel plans to popularise a tiny operating system designed to replace the PC's BIOS. And why not? The BIOS -- basic input output system -- is a real reptilian hindbrain hangover from the 1981 birth of the PC. It's a chunk of hand-crafted assembly language programming, the sort that looks like it's been encrypted even when it hasn't. Keeping it up to date in the modern world has been like trying to teach a crocodile to tango. Intel's proposal is focused, clever and apposite.
What the BIOS does is absolutely vital to modern computing: it holds the instructions that the computer runs first thing in the morning. It has the low-level magic that ensures that the computer's memory controller, hard disk interface, video card and so on all turn on properly: it wakes up the motherboard's workforce and gets them ready for the operating system. This has to work with whichever of a zillion different expansion options are ready -- many with their own bits of BIOS -- and it has to be uncommonly reliable. As there's no operating system loaded when the BIOS runs, and as it has to live in the restricted confines of a flash memory chip, it has to be minuscule and very highly optimised -- hence the handwritten assembler. You can't do that sort of thing in C or Java.
EFI updates the plot. Instead of the BIOS, there's a very small -- tiny enough to live on a chip -- operating system. It knows just enough to load more of itself from disk, talk over the network and handle basic files. It also has a small interpreter that can run programs originally written in C -- or whatever -- and compiled to byte code, like Java. People who need to write BIOS-type programs can now write proper software, turn them into byte code and know that they'll run on any EFI system. Intel says that this could mean the end of people having to write separate low-level drivers to make their expansion cards run in different classes of system, and the start of lots of really useful little utilities to help debug problems with hardware on PCs. All very welcome -- but there's another side.
The original BIOS defined the dynamics of the whole early PC industry. IBM was very open about its original PC -- it published all the circuit diagrams and the complete listing of the BIOS in the famous IBM PC Technical Reference Manual. This was unheard of at the time: the purple-covered ringbound book, known universally as the TechRef, was a guarantee that if you were building add-ons or writing software, you knew exactly what you were aiming for. You could examine every detail of the PC, and the TechRef soon became holy writ in R&D labs around the world.
But woe betide you if you tried to copy any of it. IBM was open in publishing the details under the hood because it had great faith in its army of intellectual property lawyers. Hence the flood of almost-compatible computers that came with their own versions of MS-DOS: without the same BIOS, they couldn't run real IBM compatible software. And as many people wrote software that demanded the original IBM BIOS and other hardware details for performance's sake -- 4.77MHz processors left little room for sloppiness -- this meant that the PC itself kept its status as the gold standard of desktop computers. IBM, needless to say, had no interest in selling its BIOS to competitors.
Until Compaq came along. It pulled off a stunt previously thought impossible: it produced a working BIOS that was entirely IBM-compatible but didn't contain any of IBM's intellectual property. The company found bright young engineers who had never so much as peeked inside a PC, let alone the TechRef, and gave them a description of what the BIOS did. They were then thrown into programmers' purdah, forbidden to talk to anyone who might contaminate them with details of what went on inside IBM's chip. The code they produced did everything the IBM BIOS did, but stood up to intensive forensic examination by Big Blue's lawyers: they couldn't be touched.
The rumour is that IBM tried very hard to find a flaw in Compaq's legal defence. They failed, and the market in true compatibles took off. IBM made a desperate attempt to regain control of the PC world with its radically different PS/2 range, but by then it was too late. These days, with much tougher copyright and IP laws, it's unlikely Compaq would have got away with it -- and the PC market would be five years behind where it is now.
With EFI, Intel has the chance to re-establish proprietary control over the BIOS. With that control, it could also introduce much tougher digital rights management -- on its terms. The industry should not be seduced by all the good things in EFI if the downside is going to be so regressive: nobody wants more monopoly control. Intel has said that it's not going into the BIOS business: it should go further and say that it won't stop anyone else from doing so.