# What exactly are device drivers and INF files

device managerdriversinf

I know that a device driver is a piece of software that enables the OS to communicate with a piece of hardware, but recently I've heard about INF files and have gotten quite confused. Some sources say that an INF file is used during driver installation, while others say that an INF file is used to provide information about the hardware.
Even more recently, I came across the Intel Chipset Device Software (or INF Update Utility). What exactly does it do?

Both are correct. INF files are used during driver installations, and are used to provide information about hardware.

As Wikipedia states:

An INF file (stands for information) or Setup Information file, is a plain text file used by Microsoft Windows for installation of software and drivers. INF files are most commonly used for installing device drivers for hardware components. (...) INF files are part of the Windows Setup API.

From Microsoft Technet:

Device information (INF) files provide information used by Windows 95 to install software that supports a given hardware device. When hardware manufactures introduce new products, they must create INF files to explicitly define the resources and files required for each class of device.

(...)

An INF file is organized in several sections which define information that Setup and the hardware detection process use to determine the resource needs of the hardware device and to install software for that device. An INF file is organized by hardware, with each class of device described in its own section.

INF files have been around since Windows 95. If you open a INF file using notepad (or another text editor) you can see it's a text document containing lots of paremeters (these parameters are explained in the Technet article I linked above).

In at least Windows 95 and XP, if you right-click an INF file, there is an option called "Install". Although I have had varied degrees of success installing drivers that way (always on INF files contained on folders from install/driver CDs), the recommended way of installing drivers is by running the setup.exe file on the CD the device comes with. Many times the INF file is there just as a part of the process.