Drivers: what they are and why you should care
In this post, we will try to understand what drivers are responsible for in our computing devices, why we should keep them updated, and why they can sometimes be responsible for unexpected and undesired behavior.
What is a (device) driver?
A (device) driver of a computing system like a laptop is a communication layer between the hardware, which are physical devices, and the software running directly on said hardware; usually, the software is an operating system and your applications on top of that. Drivers are necessary for our system to know out of the box how to leverage basic system resources such as the processor, memory, and storage. Otherwise, we wouldn’t even be able to properly start our system.
However, as computers have become more advanced, we added more and more functionality to them. The newest laptop models in particular come equipped with a lot of features and specialized devices such as fingerprint readers, IR-cameras for facial recognition, gesture recognizing trackpads, multi-GPU-systems and so on. While most of these devices are connected to the main system via standardized hardware interfaces, to be able to correctly communicate with these devices and to enable all their features, we must tell our operating system how to interact with these devices. This is done by drivers. They implement communication protocols to access these resources and make them available for the operating system and the user.
Most operating systems provide a basic set of drivers for a lot of different types of devices. However, while for example Windows has gotten better over time in providing a stable set of standardized drivers or manufacturer signed driver packages, the drivers shipped together with the operating system aren’t always the most optimized for the exact hardware you own, or they don’t include the latest updates and security patches. Sometimes, for a special type of device, the operating system might not even find a suitable driver on its own. Therefore, it’s recommended to install drivers provided directly by the manufacturer of your device and to check for updates regularly. This is especially important after performing a clean-install of the operating system, after which only the standardized driver set of the operating system is available.
Driver housekeeping with Neptun devices
To keep all the drivers updated on your laptop, there are the following options if you are running Windows. You can check the manufacturers webpage and search for your specific model and drivers. Usually you can find all the available driver’s installers as a download online. Since this can be quite tedious, all the manufacturers of our Neptun devices provide a software which manages the automatic download and installation of updates for your system. These clients normally come pre-installed when buying your new Neptun device. But after a clean-install of the operating system or sometimes to update the client, we need to download and install it ourselves. We can find the clients on the following webpages:
- HP: Support Assistant (user-friendly tool) or a more advanced business tool: Softpaq Download Manager
- Lenovo: Vantage (available as a free download in the Microsoft Store, no account needed) or an older tool: System Update
- Dell: SupportAssist (user-friendly tool) or a more advanced business solution: Command Update
These tools offer the option to automatically keep the system up-to-date in the background. However, for this to work the application has to be launched at least once to set up the automatic installation and give consent. It’s recommended to install not only critical components, but all the driver and hardware component related options. Software options suggested by the tools are often not necessary and can be installed as deemed useful.
Most Linux distributions offer good driver support out of the box for all the basic system components. For devices it’s advised to first check the manufacturer’s webpage for Linux support. In regards to Neptun devices, “TheAlternative” is a group of Linux enthusiasts from ETH Zürich and the University of Zurich who have a lot of experience concerning Linux support on Neptun devices and are always very helpful if you run into troubles or have any questions.
Apple Devices and Microsoft Surface
If you own a Mac or a Microsoft Surface device you need to worry a lot less about drivers. As hardware and operating system come from the same source, both Apple and Microsoft ship all the latest driver updates together with the general updates for your operating system. Thus, everything is already taken care of for you, as long as you keep your system up-to-date.
Whenever a hardware component in your system starts to misbehave it’s a good first option to check the component’s drivers. In Windows, you can check on the state of your drivers in the device manager or the reliability monitor. To prevent your system from driver related issues such as system crashes due to a malfunctioning driver, undetected hardware components or misbehaving hardware components, it’s recommended to keep the drivers in your system up-to-date, which is easily done by using the tools mentioned before. This also ensures the best optimized utilization of your hardware and the highest level of security.