This chapter covers the critical topic of device driver installation and updates for the CompTIA A+ Core 1 (220-1101) exam. Device drivers are essential software components that allow the operating system to communicate with hardware devices. Understanding how to install, update, and troubleshoot drivers is a fundamental skill for any IT support professional. This topic appears in approximately 5-10% of exam questions, often integrated into broader hardware or software troubleshooting scenarios.
Jump to a section
Think of a device driver as a specialized translator between a foreign diplomat (the operating system) and a local official (the hardware device). The OS speaks a generic language of high-level commands like "print this document" or "play this sound." The hardware, however, speaks a very specific, low-level language of registers, interrupts, and memory addresses unique to its design. Without a translator, the diplomat's commands would be meaningless. The driver is that translator: it takes the OS's generic request and converts it into the exact sequence of electrical signals, register writes, and data transfers that the hardware understands. For example, when Windows wants to write data to a hard drive, it calls a standard function like WriteFile(). The storage driver translates this into ATA or NVMe commands, specifying the Logical Block Address (LBA), the number of sectors, and the DMA (Direct Memory Access) transfer parameters. If the translator is outdated or incorrect, the hardware may respond with errors, operate slowly, or refuse to work at all. Just as a bad translator can cause a diplomatic incident, a faulty driver can cause system crashes (Blue Screen of Death in Windows) or data corruption. Updating the driver is like giving the translator a new dictionary that includes the latest protocols and bug fixes, ensuring smooth communication between OS and hardware.
What is a Device Driver?
A device driver is a specialized software component that enables the operating system (OS) to interact with a hardware device. Every hardware component—from the motherboard chipset to a USB mouse—requires a driver. The driver acts as an abstraction layer, translating OS-level API calls into device-specific commands. Without a driver, the OS cannot control the hardware. For example, when you plug in a new printer, the OS needs a driver to understand the printer's command language (like PCL or PostScript) and send data in the correct format.
Types of Drivers
Kernel-mode drivers: Run in the OS kernel space with high privileges. They have direct access to hardware and system memory. Examples include storage drivers (e.g., NVMe, SATA), network drivers, and graphics drivers. A bug in a kernel-mode driver can crash the entire system (Blue Screen of Death in Windows).
User-mode drivers: Run in user space with limited privileges. They rely on the OS to access hardware. Examples include printer drivers and some USB device drivers. A crash in a user-mode driver typically only affects the associated application, not the whole system.
Function drivers: The main driver for a device, responsible for its primary operations (e.g., a network adapter driver handling data transmission).
Filter drivers: Intercept I/O requests to add functionality (e.g., antivirus filter drivers scan file operations).
Bus drivers: Manage communication between the system and a bus (e.g., PCIe, USB). They enumerate devices on the bus and load appropriate function drivers.
How Drivers Work Internally
When an application requests an I/O operation (e.g., read a file), the OS sends an I/O Request Packet (IRP) through the driver stack. The stack may include multiple filter drivers above and below the function driver. Each driver processes the IRP, possibly modifying it or passing it down. Eventually, the function driver communicates with the hardware via memory-mapped I/O, port I/O, or DMA. For example, a storage driver issues ATA commands (like READ DMA) to the disk controller. The driver uses the device's registers (e.g., command register, status register) to send commands and check results.
Driver Installation Methods
#### Plug and Play (PnP) Installation
PnP is a system that automatically detects hardware and installs appropriate drivers. When a device is connected, the PnP manager identifies it by querying the device's descriptor (e.g., USB device descriptor) or reading hardware IDs from the PCI configuration space. The PnP manager then searches for a matching driver in the driver store (C:\Windows\System32\DriverStore\FileRepository). If found, the driver is installed automatically. If not, Windows prompts the user to provide a driver. PnP works for most common devices (keyboards, mice, USB drives).
#### Manual Installation via Device Manager
For devices not automatically recognized, or to update a driver, use Device Manager: 1. Open Device Manager (devmgmt.msc). 2. Locate the device (often under "Other devices" with a yellow exclamation mark if no driver is installed). 3. Right-click and select "Update driver." 4. Choose "Browse my computer for drivers" to manually point to an .inf file or a folder containing the driver. 5. Alternatively, select "Let me pick from a list of available drivers on my computer" to choose from previously installed drivers.
#### Using an Installer Executable
Many hardware vendors provide a setup.exe or .msi file that installs the driver and associated software (e.g., control panel, utilities). This method often installs additional components like device management tools. It may also modify system settings (e.g., adding startup entries).
#### Windows Update
Windows Update can deliver drivers that have been signed and submitted to Microsoft's Windows Hardware Quality Labs (WHQL). These drivers are generally stable. Windows Update may automatically install critical driver updates, especially for security fixes.
Driver Signing and Digital Signatures
Driver signing ensures the driver comes from a trusted source and hasn't been tampered with. Windows has a Driver Signature Enforcement (DSE) policy that blocks unsigned kernel-mode drivers from loading on 64-bit systems (enforced since Windows Vista). Signed drivers have a digital signature embedded in the .sys file or catalog (.cat) file. The signature chain must be valid and trusted by the system. To load an unsigned driver (e.g., for testing), you must enable test signing mode (bcdedit /set testsigning on) or disable DSE (not recommended for production).
Driver Updates: Why and How
Driver updates fix bugs, improve performance, add features, and patch security vulnerabilities. For example, a graphics driver update may increase frame rates in new games. A network driver update may resolve intermittent disconnections.
#### Update Methods
Device Manager: Right-click device > Update driver > Search automatically for updated driver software. This checks Windows Update and the local driver store.
Windows Update: Advanced options > Optional updates > Driver updates. Windows Update lists available driver updates that are not critical.
Vendor Tools: Many manufacturers provide update utilities (e.g., Intel Driver & Support Assistant, NVIDIA GeForce Experience, Dell Command Update). These tools scan the system and download the latest drivers from the vendor's servers.
Manual Download: Download the driver from the vendor's support site and install via Device Manager or by running the installer.
Driver Rollback
If a new driver causes issues, you can roll back to the previous driver. In Device Manager, right-click device > Properties > Driver tab > Roll Back Driver. This restores the previous driver files from the driver store. The rollback option is available only if a previous driver was installed and the system maintains a backup.
Driver Store
The driver store (C:\Windows\System32\DriverStore\FileRepository) is a protected folder that contains all approved driver packages. When a driver is installed, Windows copies the driver files to the store. This allows for automatic driver reinstallation if needed (e.g., after a driver corruption). The store can become bloated with old driver versions. You can safely delete old driver packages using the Disk Cleanup tool (cleanmgr.exe) and selecting "Device driver packages."
Common Driver Installation Errors
Driver not found: The system cannot locate a suitable driver. Solution: Download the correct driver from the vendor's website.
Driver signing error: Windows blocks an unsigned driver. Solution: Obtain a signed driver or enable test signing mode (temporary).
File not found: The driver package is missing required files. Solution: Re-download or extract the driver properly.
Access denied: Insufficient permissions to install the driver. Solution: Run the installer as Administrator.
Device cannot start (Code 10): The driver failed to initialize. This often indicates a hardware problem or incompatible driver. Solution: Update driver, check hardware connections, or replace the device.
Verifying Driver Installation
Use Device Manager to check the driver status. A device with a working driver shows no warning icons. Right-click device > Properties > Driver tab displays the driver provider, date, version, and digital signer. Use the driverquery command in Command Prompt to list all installed drivers and their details. For example:
driverquery /vThis shows driver name, display name, driver type, and module name.
Best Practices
Always download drivers from the official manufacturer's website. Avoid third-party driver download sites that may bundle malware.
Before installing a driver update, create a system restore point.
For critical systems (e.g., servers), test driver updates in a non-production environment first.
Keep drivers updated, but avoid unnecessary updates if the current driver is stable.
Use signed drivers to maintain system security and stability.
How Drivers Interact with the OS
In Windows, drivers are loaded by the I/O Manager. The driver's entry point is the DriverEntry function, which registers callback functions for various IRP major function codes (e.g., IRP_MJ_CREATE, IRP_MJ_READ, IRP_MJ_WRITE). The driver communicates with hardware via HAL (Hardware Abstraction Layer) calls. For example, a driver may use READ_PORT_UCHAR to read a byte from an I/O port. On Linux, drivers are either built into the kernel or loaded as modules (.ko files). The modprobe command loads modules with dependencies. Device files in /dev provide user-space access.
Troubleshooting Driver Issues
Device Manager errors: Yellow exclamation mark indicates a problem. Right-click > Properties > General tab shows error code and description.
Event Viewer: Look for driver-related errors under Windows Logs > System. Filter by source "DriverFaults" or "volmgr."
Safe Mode: Boot into Safe Mode to load only essential drivers. If the problem disappears, a third-party driver is likely the cause.
Driver Verifier: Windows Driver Verifier (verifier.exe) stresses drivers to detect misbehavior. It can identify memory leaks, IRQL violations, and other issues. Enable it for problematic drivers (use with caution, as it may cause crashes).
Exam Tips
The 220-1101 exam tests your ability to install, update, and troubleshoot drivers. Know the methods: Device Manager, Windows Update, vendor tools. Understand driver signing and the driver store. Be familiar with common error codes (Code 10, Code 28, Code 31). Remember that rollback is available only if a previous driver exists. Know that unsigned drivers can be blocked on 64-bit Windows.
Identify the Hardware Device
Before installing a driver, you must know the exact make and model of the hardware. For internal devices, check the Device Manager for unknown devices (yellow exclamation mark). For external devices, look at the device label or packaging. Use the device's hardware ID to search for the correct driver. In Device Manager, right-click the device > Properties > Details tab > Hardware Ids. This string (e.g., PCI\VEN_8086&DEV_100E) uniquely identifies the device. Write it down or copy it for driver search.
Obtain the Correct Driver
Download the driver from the manufacturer's official support website. Navigate to the support section, enter the device model, and select the appropriate operating system (e.g., Windows 10 64-bit). Avoid third-party sites that may offer outdated or malicious drivers. For built-in devices like network adapters, Windows Update may provide the driver automatically. If the device came with an installation disc, use it, but check for newer versions online.
Install the Driver
Run the downloaded installer (setup.exe) if available. Follow the on-screen instructions. If the driver is provided as an .inf file, use Device Manager: right-click the device > Update driver > Browse my computer for drivers > select the folder containing the .inf file. Windows will parse the .inf and copy necessary files. For unsigned drivers, you may need to reboot with driver signing enforcement disabled (advanced startup options) or use test signing mode.
Verify Driver Installation
After installation, check Device Manager to ensure no warning icons remain. Right-click the device > Properties > Driver tab to see the driver version, date, and digital signer. Test the device functionality (e.g., print a test page, transfer files, or play audio). Use the `driverquery /v` command to list all drivers and confirm the new driver is loaded. If the device still shows an error, reboot the system to finalize installation.
Update or Rollback if Needed
If the device malfunctions after installation, consider updating to a newer driver or rolling back. To update, repeat steps 1-3 with a newer driver version. To rollback, go to Device Manager > device properties > Driver tab > Roll Back Driver. This option is only available if a previous driver was stored. If rollback fails, use System Restore to revert system changes. As a last resort, uninstall the device (right-click > Uninstall device) and reinstall the original driver.
Scenario 1: Enterprise Deployment of Graphics Drivers
A large corporation with 5,000 workstations uses NVIDIA Quadro graphics cards for CAD applications. The IT team uses a centralized deployment tool (e.g., Microsoft SCCM or PDQ Deploy) to push driver updates. They first test the driver on a pilot group of 50 machines, monitoring for performance improvements and stability. The driver package is extracted to a network share, and a script runs the installer silently with command-line switches (e.g., /s /noreboot for NVIDIA). After deployment, they verify driver version using PowerShell: Get-WmiObject Win32_PnPSignedDriver | Where-Object {$_.DeviceName -like "*NVIDIA*"}. A common issue is that the new driver may conflict with custom display settings; they use a configuration file to preserve settings. If a driver update causes blue screens, they roll back via SCCM by deploying the previous driver package. They also maintain a driver store on each machine to allow easy rollback.
Scenario 2: Printer Driver Management in a School
A school district has 200 network printers from various vendors (HP, Brother, Canon). The IT support team uses Group Policy to deploy printer drivers to Windows computers. They add the drivers to the driver store on a central server and publish printers via Active Directory. When a new printer model is added, they install the driver on a reference machine, capture the driver package using Print Management console (printmanagement.msc), and deploy it via Group Policy. A frequent problem is that 32-bit and 64-bit driver versions are needed. They ensure both are added to the print server. When a driver update is released (e.g., to fix a security vulnerability), they test it on a few printers first. If the update breaks printing, they revert by removing the updated driver package and redeploying the old one. They also use the pnputil command to manage driver packages in the store: pnputil /delete-driver oemXX.inf to remove a problematic driver.
Scenario 3: USB Driver Issues in a Hospital
A hospital uses specialized USB medical devices (e.g., patient monitors, infusion pumps) that require custom drivers. A new Windows update causes the devices to stop working because the update replaces the custom driver with a generic one. The IT team identifies the issue by checking Device Manager (yellow exclamation mark) and Event Viewer logs (driver load failure). They roll back the driver using Device Manager's Roll Back Driver option, but the generic driver keeps reappearing. They then disable automatic driver updates via Group Policy: under Computer Configuration > Administrative Templates > Windows Components > Windows Update, enable "Do not include drivers with Windows Updates." They also add the hardware ID to the "Prevent installation of devices that match any of these device IDs" policy to block the generic driver. The custom driver is then installed manually. They create a system restore point before any driver changes to allow quick recovery.
What the 220-1101 Exam Tests
For Objective 3.7, the exam expects you to know how to install and update device drivers using various methods. Specifically:
Install drivers via Device Manager (manual and automatic).
Use Windows Update to obtain drivers.
Understand driver signing and why it matters.
Perform driver rollback.
Troubleshoot driver-related errors (Code 10, Code 28, Code 31).
Know the Driver Store and how to manage it (e.g., using Disk Cleanup).
Recognize the importance of downloading drivers from manufacturer's website.
Common Wrong Answers and Why Candidates Choose Them
"Always download drivers from Windows Update": Windows Update provides only WHQL-signed drivers, which may be outdated. For the latest drivers, especially for graphics cards, the manufacturer's site is better. The exam tests that you know both sources.
"Roll Back Driver is always available": This is false. Rollback is only possible if a previous driver was stored. Candidates think it's a universal undo button.
"Uninstalling the device removes the driver permanently": Actually, uninstalling a device in Device Manager often leaves the driver package in the driver store. To fully remove, you must check "Delete the driver software for this device."
"Signed drivers are always safe": Signing verifies the publisher, not the absence of bugs. A signed driver can still cause issues.
Specific Numbers and Terms
Code 10: Device cannot start. Often driver-related or hardware failure.
Code 28: Driver not installed. The .inf file is missing or invalid.
Code 31: Driver failed to load. Often due to corruption or incompatibility.
Driver Store location: C:\Windows\System32\DriverStore\FileRepository.
Command to list drivers: driverquery /v.
Command to manage driver packages: pnputil.
WHQL: Windows Hardware Quality Labs.
Edge Cases and Exceptions
Driver rollback unavailable: If no previous driver exists, the Roll Back Driver button is grayed out.
Unsigned drivers on 64-bit Windows: Blocked by default. Enable test signing mode or disable driver signature enforcement via advanced boot options.
Driver installation requires admin rights: Standard users cannot install drivers. Run as Administrator.
Driver updates via Windows Update are optional: They appear under Optional Updates > Driver Updates.
How to Eliminate Wrong Answers
When given a scenario, identify the symptom (e.g., yellow exclamation mark, error code). Match the error to the likely cause. If the question asks for the best method to update a driver, consider the environment: for a single user, Device Manager or manufacturer site; for enterprise, group policy or deployment tools. If the driver is not signed, the answer will involve signing or enabling test mode. If rollback is mentioned, check if a previous driver exists. Always prefer manufacturer's website for the most current driver, but Windows Update for convenience and safety.
Device drivers are essential software that allow the OS to communicate with hardware.
Install drivers via Device Manager, Windows Update, or manufacturer's installer.
Driver signing ensures the driver is from a trusted source; unsigned drivers are blocked on 64-bit Windows.
Driver rollback is only available if a previous driver version is stored.
Common driver error codes: Code 10 (device cannot start), Code 28 (driver not installed), Code 31 (driver failed to load).
The Driver Store is located at C:\Windows\System32\DriverStore\FileRepository.
Always download drivers from the manufacturer's official website for the latest version.
Use `driverquery /v` to list all installed drivers and their details.
For enterprise deployments, use Group Policy or deployment tools to manage drivers centrally.
Before updating a driver, create a system restore point to allow recovery.
These come up on the exam all the time. Here's how to tell them apart.
Device Manager (Manual)
User has full control over which driver version to install.
Can install drivers from any source (manufacturer's website, CD, etc.).
Requires manual search and selection of the correct driver.
Allows driver rollback and uninstall.
Better for troubleshooting specific driver issues.
Windows Update (Automatic)
Automatic; no user intervention needed.
Only provides WHQL-signed drivers.
May not offer the latest drivers; updates are often delayed.
Can be disabled via Group Policy if it causes issues.
Convenient for common devices like mice and keyboards.
Mistake
You must always uninstall the old driver before installing a new one.
Correct
In most cases, you can install a newer driver over the old one. The installer usually replaces the files. However, for major version changes (e.g., graphics driver), it's recommended to clean install using Display Driver Uninstaller (DDU) to avoid conflicts.
Mistake
Windows Update always provides the latest driver.
Correct
Windows Update provides WHQL-signed drivers that have passed Microsoft's testing, but they may be older than the manufacturer's latest version. Manufacturers often release newer drivers directly on their websites.
Mistake
All drivers are kernel-mode drivers.
Correct
Many drivers, especially for printers and USB devices, run in user mode. Kernel-mode drivers have higher privileges and can crash the system if faulty.
Mistake
A signed driver is guaranteed to be bug-free.
Correct
Digital signing only confirms the publisher's identity and that the driver hasn't been tampered with. It does not guarantee the driver is free of bugs or compatible with all systems.
Mistake
Rolling back a driver always works.
Correct
Rollback is only possible if a previous driver version was saved in the driver store. If no previous version exists, the Roll Back Driver button is disabled.
Reveal each answer, then mark whether you got it right. Score 60%+ to unlock the next chapter.
A device driver is a software component that enables the operating system to communicate with a hardware device. It translates generic OS commands into device-specific instructions. Without a driver, the OS cannot control the hardware. For example, a printer driver converts print jobs into the printer's page description language (PCL or PostScript). Drivers are essential for all hardware components, from internal devices like graphics cards to external peripherals like keyboards.
To install a driver manually, open Device Manager (devmgmt.msc). Locate the device (often under 'Other devices' with a yellow exclamation mark). Right-click and select 'Update driver.' Choose 'Browse my computer for drivers' and navigate to the folder containing the driver files (e.g., .inf, .sys). Select the folder and click Next. Windows will install the driver. Alternatively, run an installer executable (setup.exe) provided by the manufacturer.
Windows 10 64-bit enforces driver signature verification by default. Unsigned kernel-mode drivers are blocked because they could be malicious or unstable. To install an unsigned driver, you can enable test signing mode (bcdedit /set testsigning on) or disable driver signature enforcement during boot (via advanced startup options). However, this reduces security and is not recommended for production systems.
To roll back a driver, open Device Manager, right-click the device, select Properties, go to the Driver tab, and click 'Roll Back Driver.' This restores the previous driver version from the driver store. The button is only available if a previous driver was saved. If rollback is grayed out, you may need to reinstall the old driver manually or use System Restore.
Error Code 10 indicates that the device cannot start. This can be due to a driver problem (incompatible, corrupted, or missing), hardware failure, or resource conflict (e.g., IRQ or memory address conflict). To troubleshoot, update the driver, check for hardware issues, or use Device Manager to disable and re-enable the device. Also check Event Viewer for more details.
To completely remove a driver, open Device Manager, right-click the device, and select 'Uninstall device.' In the confirmation dialog, check 'Delete the driver software for this device' to remove the driver package from the driver store. Alternatively, use the pnputil command: `pnputil /delete-driver oemXX.inf` (find the .inf name via `pnputil /enum-drivers`).
The Driver Store is a protected folder at C:\Windows\System32\DriverStore\FileRepository that stores all driver packages installed on the system. It allows Windows to reinstall drivers automatically. Over time, it can accumulate old driver versions. To clean it, use Disk Cleanup (cleanmgr.exe): select 'Device driver packages' and click OK. This removes outdated driver packages that are no longer needed.
You've just covered Device Driver Installation and Updates — now see how well it sticks with free 220-1101 practice questions. Full explanations included, no account needed.
Done with this chapter?