Device Driver Basics

Most people understand that the "hardware" part ofShould Microsoft be held responsible for the quality
their computer is the real physical parts, like thefrom a third-party?As I described in Part 1 of this
keyboard, mouse, modem, hard drive and so on.article, the operating system doesn't interface directly
They understand that the "software" is computerto a hardware device. There is a piece of software
bits stored on the hard drive, CD-ROM, or othercalled a "driver" that translates the hardware's control
storage media. But most people are a little hazysignals to signals that the operating system expects,
about exactly what a "driver" is.In this article, I'mand translates signals from operating system to the
going to reveal in plain English what a driver is, whyhardware's control signals. Obviously, the hardware
we need drivers, and exactly where the drivers aremanufacturer provides the driver.Because the driver
hiding. To give you a basic understanding, I'm going toworks between the operating system and the
go back, way back, to the early days ofhardware, a bug in the driver can cause a serious
computers.The Early DaysThe year is 1981 and theproblem. Many of the problems with Windows have
world is in the midst of a severe resession. IBM'scome from bugs in third-party drivers that Microsoft
main frame business has slowed and the company ishad nothing to do with. For this reason, Microsoft
losing money. Up until now they had been laughing atcreated a Hardware Quality Lab to test drivers. A
the array of microcomputers on the market: Atari,hardware manufacturer can submit their driver for
Commodore, sinclair. Toys really, mostly used to playtesting, and if it is passes rigorous compatibility
computer games.The problem was, these "toys"testing, it receives Microsoft's digital signature.You
were selling like hot cakes. IBM had to get into thatmay have received a message during the installation
market and get into it fast. They didn't have time toof a hardware device warning that the driver was
design and build a computer complete enough tonot signed. Why would a hardware manufacturer fail
compete in the market, so they built an "opento have their driver certified by Microsoft? The
system". They used commonly available electroniccomputer hardware market is very competitive and
components and they published every design detailthe manufacturer might want to bring a new product
(including the code), and they even provided plug into market before thorough testing can be completed.
slots so that others could build components for theirOr maybe they don't want to or can't afford to pay
computer.And people did provide components for theMicrosoft for certification. The question is, should you
IBM PC. They provided video cards, memoryclick on the "Continue" button to install the unsigned
expansion cards, input-output port cards, game portdriver?In my experience, I have never been able to
cards, hard disk interface cards, and much more. Howtrace a problem to an unsigned driver. If it's your
were all these various devices able to interface withhome computer and you performed a back-up
the PC's operating system? That's where a "driver"recently, go ahead and install the unsigned driver. If
comes in.A hardware device is constructed withit's a computer on a corporate network, you may
various electronic components using various controlwant to back-out of the installation and see if you
signals, but the software interface to the operatingcan locate a signed driver first. Many times a
system is standardized. A device's interface to themanufacturer will release a product with an unsigned
operating system must follow the interfacedriver, then later provide a signed driver as a free
specification. A driver is a piece of software thatdownload from their website.If you decide to go
translates the hardware's control signals to signalsahead and install an unsigned driver, you can always
that the operating system expects, and translatesupdate the driver later. If your computer works with
signals from the operating system to the hardware'sthe unsigned driver, I would not update the driver.
control signals.When the computer is started up, itWhen it comes to updating drivers (or the computers
would look in the "system" directory for files with theBIOS) I go by the old saying, "if it ain't broke don't
extension ".drv" and load them into memory. Specificfix it".To update a driver, select Start | Settings |
files like autoexec.bat, config.sys, and win.ini wereControl Panel and double-click on the "System
used to inform the operating system about drivers.Properties" Utility. In the "System Properties" Utility,
Hardware would be configured through these files, orselect the "Hardware" tab and click on the "Device
through jumpers located on the device itself.TheManager" button. In the "Device Manager" window,
driver specification evolved along with the PC. Todayright-click on the device in the list and select
when a PC starts, it executes the program which"Properties" in the popup menu. In the "Properties"
queries the hardware components and builds thedialog box, select the driver tab and click on the
registery key"Update Driver..." button.In the "Properties" dialog box
ontrolSet. This key exists only in memory and isdriver tab, you may have noticed the "Roll Back
created each time the computer boots. If all theDriver" button. If your computer has problems with
drivers are loaded successfully, a copy of the key isthe new drive, you can click on the "Roll Back Driver"
saved as ControlSet00X.Under the registery keybutton to roll back to the previous the driver. Driver
CurrentControlSet, the subkey "Enum" contains aroll back saves only one previous driver, so if you
subkey for each harware device on the computer.update a driver, then update it again, the original
Each device key contains fields for Hardware ID,driver is gone. If the computer has problems with the
Driver ID, Device Parameters, and other configurationnew driver, always roll back to the original driver
data. The 32-bit drivers are files with the extensionbefore trying a different one. That way you'll always
".sys" and can be found in the folder C:/winnthave the original driver to roll back to.Copyright(C)
system32.Driver SigningMicrosoft has been the bruntBucaro TecHelp.Permission is granted for the below
of much criticism because of the poor reliability ofarticle to forward, reprint, distribute, use for ezine,
the Windows Operating System. I feel that much ofnewsletter, website, offer as free bonus or part of a
this criticism is justified. On the other hand, as Iproduct for sale as long as no changes are made and
described in part 1 of this article, the PC wasthe byline, copyright, and the resource box below is
designed by IBM as an "open" system. Anyone canincluded.
sell a hardware device (or software) for the PC.