Software Information |
Device Driver Basics
Most people understand that the "hardware" part of their computer is the real physical parts, like the keyboard, mouse, modem, hard drive and so on. They understand that the "software" is computer bits stored on the hard drive, CD-ROM, or other storage media. But most people are a little hazy about exactly what a "driver" is. In this article, I'm going to reveal in plain English what a driver is, why we need drivers, and exactly where the drivers are hiding. To give you a basic understanding, I'm going to go back, way back, to the early days of computers. The Early Days The year is 1981 and the world is in the midst of a severe resession. IBM's main frame business has slowed and the company is losing money. Up until now they had been laughing at the array of microcomputers on the market: Atari, Commodore, sinclair. Toys really, mostly used to play computer games. The problem was, these "toys" were selling like hot cakes. IBM had to get into that market and get into it fast. They didn't have time to design and build a computer complete enough to compete in the market, so they built an "open system". They used commonly available electronic components and they published every design detail (including the code), and they even provided plug in slots so that others could build components for their computer. And people did provide components for the IBM PC. They provided video cards, memory expansion cards, input-output port cards, game port cards, hard disk interface cards, and much more. How were all these various devices able to interface with the PC's operating system? That's where a "driver" comes in. A hardware device is constructed with various electronic components using various control signals, but the software interface to the operating system is standardized. A device's interface to the operating system must follow the interface specification. A driver is a piece of software that translates the hardware's control signals to signals that the operating system expects, and translates signals from the operating system to the hardware's control signals. When the computer is started up, it would look in the "system" directory for files with the extension ".drv" and load them into memory. Specific files like autoexec.bat, config.sys, and win.ini were used to inform the operating system about drivers. Hardware would be configured through these files, or through jumpers located on the device itself. The driver specification evolved along with the PC. Today when a PC starts, it executes the program ntdetect.com which queries the hardware components and builds the registery key HKEY_LOCAL_MACHINEHARDWARESYSTEMCurrentControlSet. This key exists only in memory and is created each time the computer boots. If all the drivers are loaded successfully, a copy of the key is saved as ControlSet00X. Under the registery key CurrentControlSet, the subkey "Enum" contains a subkey for each harware device on the computer. Each device key contains fields for Hardware ID, Driver ID, Device Parameters, and other configuration data. The 32-bit drivers are files with the extension ".sys" and can be found in the folder C:/winnt/system32. Driver Signing Microsoft has been the brunt of much criticism because of the poor reliability of the Windows Operating System. I feel that much of this criticism is justified. On the other hand, as I described in part 1 of this article, the PC was designed by IBM as an "open" system. Anyone can sell a hardware device (or software) for the PC. Should Microsoft be held responsible for the quality from a third-party? As I described in Part 1 of this article, the operating system doesn't interface directly to a hardware device. There is a piece of software called a "driver" that translates the hardware's control signals to signals that the operating system expects, and translates signals from operating system to the hardware's control signals. Obviously, the hardware manufacturer provides the driver. Because the driver works between the operating system and the hardware, a bug in the driver can cause a serious problem. Many of the problems with Windows have come from bugs in third-party drivers that Microsoft had nothing to do with. For this reason, Microsoft created a Hardware Quality Lab to test drivers. A hardware manufacturer can submit their driver for testing, and if it is passes rigorous compatibility testing, it receives Microsoft's digital signature. You may have received a message during the installation of a hardware device warning that the driver was not signed. Why would a hardware manufacturer fail to have their driver certified by Microsoft? The computer hardware market is very competitive and the manufacturer might want to bring a new product to market before thorough testing can be completed. Or maybe they don't want to or can't afford to pay Microsoft for certification. The question is, should you click on the "Continue" button to install the unsigned driver? In my experience, I have never been able to trace a problem to an unsigned driver. If it's your home computer and you performed a back-up recently, go ahead and install the unsigned driver. If it's a computer on a corporate network, you may want to back-out of the installation and see if you can locate a signed driver first. Many times a manufacturer will release a product with an unsigned driver, then later provide a signed driver as a free download from their website. If you decide to go ahead and install an unsigned driver, you can always update the driver later. If your computer works with the unsigned driver, I would not update the driver. When it comes to updating drivers (or the computers BIOS) I go by the old saying, "if it ain't broke don't fix it". To update a driver, select Start | Settings | Control Panel and double-click on the "System Properties" Utility. In the "System Properties" Utility, select the "Hardware" tab and click on the "Device Manager" button. In the "Device Manager" window, right-click on the device in the list and select "Properties" in the popup menu. In the "Properties" dialog box, select the driver tab and click on the "Update Driver..." button. In the "Properties" dialog box driver tab, you may have noticed the "Roll Back Driver" button. If your computer has problems with the new drive, you can click on the "Roll Back Driver" button to roll back to the previous the driver. Driver roll back saves only one previous driver, so if you update a driver, then update it again, the original driver is gone. If the computer has problems with the new driver, always roll back to the original driver before trying a different one. That way you'll always have the original driver to roll back to. Copyright(C) Bucaro TecHelp. Permission is granted for the below article to forward, reprint, distribute, use for ezine, newsletter, website, offer as free bonus or part of a product for sale as long as no changes are made and the byline, copyright, and the resource box below is included. About The Author Stephen Bucaro To learn how to maintain your computer and use it more effectively to design a Web site and make money on the Web visit bucarotechelp.com To subscribe to Bucaro TecHelp Newsletter visit http://bucarotechelp.com/search/000800.asp
MORE RESOURCES: Unable to open RSS Feed $XMLfilename with error HTTP ERROR: 404, exiting |
RELATED ARTICLES
Hubris - Definition: Microsofts Passport Before September of 1995, Microsoft ignored the Internet because their 16-bit Windows 3.1 operating system couldn't handle the 32-bit Internet world. Start Developing Your Own Software Learning how to program software seems like a daunting task fit only for the geeks and nerds who lock themselves away in dark rooms staring at their monitors for days on end as they pour over thick manuals written largely in zeros and ones. Fortunately the reality is that it's not as complicated to make basic applications as people may think. Antivirus Software - Get The Bugs Before They Get You! You turn on your computer, and it doesn't look quite right. Maybe your icons have changed, or the background picture is wrong. Most Common Ways to Accumulate Spyware (where It is Downloaded to Your PC) It is possible that if one avoided all sources of spyware, ad-ware and virus infection that infection would be at minimal levels. Although I don't recommend using only this method as a form of fighting spyware, it can be a potentially effective mean. ERP Remote Support: Microsoft Great Plains Analysis - Pluses & Minuses Former Great Plains Software Dynamics/eEnterprise and currently Microsoft Business Solutions Great Plains serves midsize and corporate clients as ERP system in the following countries and regions: USA, Canada, Mexico and Latin America, Brazil (where MBS actually promotes Navision and has GP for multinational corporations), Saudi Arabia, OAE, Egypt and the rest of Middle East, South Africa, Nigeria and the whole African continent, U.K. Is Software Tester a Most Infamous Person in a Software Project Team? The fact that a software tester is a most infamous person in a software project team has some grounds underneath it. This is because a software tester usually speaks of the bugs in the developer's code. Spyware, What is it? Spyware, what it is and what it does. Basically, spyware is a program put on your computer usually after you have downloaded some kind of program or went to a certain site. Why do Manufacturers Invest in Business Management Software? With many manufacturing shops heading over seas in favor of lower cost, it is tough to compete in today's marketplace. As a result, the goal for manufactures who want to compete going forward is to run leaner, faster and more accurately. Microsoft Great Plains Installation - Overview for IT Director/Controller Microsoft Great Plains is main mid-market application from Microsoft Business Solutions. This is short article, written in question/answer/FAQ style to give IT Director/Controller balanced top level information on Microsoft Business Solutions Great Plains implementation. Microsoft Great Plains POP: Purchase Order Processing - Overview For Consultants Great Plains Purchase Order Processing (POP) module makes up one-third of the core Great Plains Inventory and Order Processing group (the other two being Inventory Management and Sales Order Processing). POP seamlessly integrates with other Great Plains modules (GL, PM, FA, SOP, etc. How To Identify, Cure and Prevent Spyware/Adware Infections Just when you thought you were Web savvy, one more privacy, security, and functionality issue crops up - spyware. Installed on your computer without your consent, spyware software monitors or controls your computer use. History of Java The java programming language is becoming more and more popular each day. It is the language without which one cannot even hope to a land a job thesedays. Microsoft CRM Custom Design & Development: SDK, C#, SQL, Exchange, Integration, Crystal Reports Microsoft CRM is new player on the CRM software market. The whole conception behind CRM seems to be different. Microsoft Great Plains: Annual Enhancement Program - How To Be Re-Enrolled Microsoft Business Solutions Great Plains is mid and even corporate market ERP and as being relatively complex and difficult to do self-support in-house, Microsoft Business Solutions requires you first to have so-called VAR of record, or your MBS partner and second - pay annual enhancement program, which is typically 16% of you software price list. Enhancement program allows you to get new version of the product as well as purchase and add new modules you might need. Did You Ever Want to Completely Erase Everything on Your Computer? Did you ever want to erase everything on your computer? This is a program I found that does that for you quickly and easily.Active@ KillDisk is a hard drive eraser and is powerful and compact DOS software that allows you to destroy all data on hard and floppy drives completely, excluding any possibility of future recovery of deleted files and folders. What is Shareware? Shareware is software that you can try before you buy; shareware is a kind of marketing method for software. Software developers post trial versions of their software on websites. Microsoft eCommerce Web-development: Great Plains eConnect .Net - Highlights for Programmer In our small article we'll consider Microsoft Business Solutions Great Plains Sales Order Processing module as eCommerce backend. Plus we'll cover what is possible and impossible in eConnect and why. Microsoft C# vs. VB.Net Hi, Guys,I believe a lot of programmers are trying to speculate which Microsoft language is the language of the future .Net applications. Great Plains Sales Order Processing and Invoicing Modules - Tips For Consultants We'll give you non formal view, based on our consulting practice.Common Features. Selecting Microsoft Great Plains Partner/VAR/Reseller: ERP Implementation & Customization - Overview In the case when you represent mid-size or mid-size-to-large business, it is not a surprise that you have to do ERP selection and switch to new technologies, doing your own research. If you a trying to stay with Microsoft technologies and try Microsoft Business Solutions products: Microsoft Great Plains, Microsoft Navision, Solomon, Axapta with integration to Microsoft CRM, you should know the history of Great Plains Software and Navision partners over the last 10 years. |
home | site map | contact us |