Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesBuilding a Better BIOS


September 1994 / Cover Story / Building a Better BIOS

Key to the success of Plug and Play is the BIOS (Basic Input/Output System), which is primarily responsible for booting up a PC compatible and handling low-level device I/O. Without the BIOS cornerstone, even a fully PnP-integrated operating system like Chicago cannot provide hassle-free system configuration.

The BIOS is a historical holdover from the days when hard drives weren't available for PCs and even floppy drives were optional. Some mechanism was needed to bootstrap the system before a higher-level operating system loaded, and the solution was to store some low-level code in ROM chips on the motherboard. By some accounts, Microsoft would like to see the BIOS vanish from the PC architecture altogether. (Programmers in Redmond have reportedly been spotted wearing T-shirts with the slogan ``BIOS? We Don't Need No Stinkin' BIOS!'') But short of redefining the PC platform, the BIOS will be around for a while longer.

To accelerate the rollout of PnP, Intel has been supplying a set of PnP extensions to BIOS vendors. This kit makes it easier to get a PnP-ready BIOS to market, while still leaving room for vendors to differentiate their products. As usual with a BIOS, however, you probably won't perceive much difference unless something goes horribly wrong.

In a PnP system, the BIOS is minimally responsible for booting up motherboard devices like the DMA controller and the PIC (programmable interrupt controller), as well as an input device (typically the keyboard controller), an output device (typically the video controller), and an initial program load device (typically the hard drive that stores the operating system, although some mobile computers might boot up the system software from ROM or a PCMCIA card).

Due to gray areas in the PnP specifications, what happens next isn't clearly defined. If the system has a PnP op erating system as Chicago will, Microsoft would prefer to see the BIOS bow out at this point and let the operating system's more sophisticated arbitrators take over. But some BIOS vendors are going a little further, incorporating simpler routines that try to configure all other devices in the system. That's desirable for PCs without a PnP operating system. But if there is a PnP operating system, the BIOS might leave the machine only partially configured and limit the operating system's options for resolving the problem. Unfortunately, the current PnP specifications don't define a way for the BIOS to know if a PnP operating system is going to run.

``PnP is a really complex technology,'' explains Albert Saraie, senior marketing manager for advanced technology at Phoenix Technologies (Norwood, MA), the leading BIOS vendor. ``If we try to solve every problem in the PC industry the first time around, we'll never get anything out the door.''

Phoenix shipped its first PnP-ready BIOS early this year, an d it's already appearing in new systems from NEC and Gateway 2000. Like most major BIOS vendors, Phoenix offers its PnP BIOS in a flash ROM, as well as a conventional mask ROM. Flash ROMs are rewritable, so if the BIOS ever needs upgrading, the system vendor can distribute a simple flash upgrade program on a floppy disk. The only way to upgrade a mask ROM is to swap chips.

Adding PnP to a BIOS isn't a trivial task. For the sake of economy, everything has to fit inside a single flash ROM with 1 Mb (128 KB) of memory. SystemSoft (Natick, MA) says its new PnP BIOS includes the regular system BIOS (about 64 KB), PCI (Peripheral Component Interconnect) extensions (10 to 12 KB), power management (2 to 10 KB), and PnP support (12 to 16 KB). Computers with an on-board VGA controller (mostly notebooks, but also some desktops) require an additional 32 to 40 KB of BIOS code. If there's any room left, BIOS vendors want to make it available as nonvolatile storage for PnP configuration information.

SystemSoft 's solution is to compress the BIOS code to conserve space in the flash ROM and then decompress the code and copy it into shadow RAM during boot-up. Other BIOS vendors also take this approach. SystemSoft began shipping its PnP BIOS in February, and the first systems should be available now.


Up to the Cover Story section contentsGo to previous article: What They're Saying About Plug and PlaySearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network