Device support in Windows vs. Linux

By apexwm, 30 July, 2010 14:51

One of the highly debated subjects with Windows and Linux is with device support. The two have different methods of how drivers are created and implemented into the operating system. With Windows, Microsoft writes generic drivers to help ensure that users can get up and running, then 3rd party supplied drivers can be installed to optimize performance. With Linux, drivers are all included with the Linux kernel, and devices are detected and the appropriate drivers are then activated on the fly. There are no 3rd parties to contact for drivers (unless a proprietary driver is needed, in which case it has to be manually installed, similar to Windows; this is rare but sometimes necessary).

I've found that driver support in Linux is excellent. But you may have seen somebody exclaim that their PC just isn't supported with Linux, and rumors have circulated around for years that Linux just doesn't have good hardware support. This is not entirely true, however. You have to consider the order of events of hardware and software. The hardware comes out first, then software is modified to adapt to the hardware. If you run out and buy the latest and greatest hardware, there's a good chance that there will be something that isn't supported by the current version of the Linux kernel. However, it doesn't take long for the kernel development teams to eventually implement drivers into the kernel. With Windows, it is more prevalent and the manufacturer of the hardware devices try to ensure drivers are available for Windows customers to download and use, around the same time the hardware is released. When Windows 7 first came out, Windows fanboys immediately exclaimed that hardware support was excellent now over Windows XP, because you could install Windows 7 and all of the drivers were present and you could be up and running very quickly. What I would point out to them is that Linux was the same way. However, what they did not realize is that eventually, Windows 7 would age and newer hardware would come out, and the old issues of Windows XP not supporting hardware out of the box would also happen with Windows 7, and sure enough that became true.

Overall, I've found that Linux is much easier to set up, because a majority of the time no 3rd party drivers are needed. Personally, I use a 3rd party driver for my nVidia video card because nVidia has chosen to keep the driver proprietary, and the Noveau (free open source nVidia driver) is still being rapidly developed to catch up to the nVidia supplied one. Even installing a printer in Linux requires no installation CD.

Recently, I attempted to help somebody with a Windows XP laptop and an AT&T mobile broadband card. I installed AT&T's custom software for using the card, along with the AT&T drivers. Everything worked, but a day or so later I was informed that Windows XP was prompting for an administrator password when the laptop was booted up. It seems that Windows still needed administrator access to install something even though the card had been working. This same behavior in Windows XP can happen with USB printers. Take a working USB printer, unplug it, and plug it into an alternative USB port. Does it prompt for an administrator password? Chances are it will, unless you are running with administrator privileges which is not recommended for security reasons.

Linux bypasses these device installation issues with drivers that are all included in the kernel. The kernel itself loads modules and drivers as needed, without any interaction with the user needed. So for the above example, I was able to take the AT&T card, plug it into a laptop running Fedora Linux 12, go to the NetworkManager applet in the upper right corner, and connect to the AT&T network with two clicks. Linux automatically detected the card and activated it, without any interaction necessary, and all in about 10 seconds. No driver installation, no proprietary software installation, no extra work, no administrative rights popups, and no worries about issues popping up on the road.

 

 

Talkback

Five years ago driver availability for Linux was an issue. Nowadays it isn't. People who harp on about this tend to be the same ones who go on about having to wget tarballs & make & compile by hand. Either they haven't used Linux since the last century or they're vindictive MS fans.
AndyPagin 2 August, 2010 10:47
Report offensive content Reply

I agree that Linux installs are much easier to go through, due to that fact that all the hardware will magically work, I was surprised my printer already worked right after the install. And sure, you may run into one or maybe even two drivers that need to be downloaded and confirmed, but nothing majorly serious that the Linux supporters can't handle in due time. However most problems i've run into involving linux drivers are usually the result of uncooperative manufacturers. But still, Windows is much more supported in the way that there are drivers for ANY device out there, you just have to find it. But overall, i just love the fact i can setup up Ubuntu on almost any machine and have it ready to fly.
lukekire 9 August, 2010 18:16
Report offensive content Reply

As a computer refurbisher I deal with a pretty big volume of a variety of different computer systems. I don't deal with Windows Vista or 7 systems, so I can barely comment on them except to say we tried the Windows 7 beta for some time on a stock 3GHz IBM Netvista that previously had XP Pro and Windows 7 crashed every weekend when we were away. We're a MRR (Microsoft Registered Refurbisher) that has always done Linux.

Nine years ago we started developing our own in-house Linux distribution based on Debian GNU/Linux. It got released as WCLP (Working Centre Linux Project) and is still available, but ancient and outdated. Linux has come a hugely long way since 9 years ago. One of the "that's really cool" things a lot of our volunteers with Windows experience find is Linux's ability to detect USB printers. With the exception of Canon, we've found most manufacturer's printers can just be plugged in and they work. Back when we did our Windows 7 beta trial it took 7 reboots before Windows 7 saw our in-house HP Laserjet 5si printer.

As a MRR we do Windows XP-based machines for not-for-profits and low-income earners who qualify through a technology access program. Inevitably where a lot of volunteers get stuck is finding drivers. We've simplified the process a bit through a PXE-based network install from (you guessed it) a Linux file server. The server has a number of unpacked drivers that get installed... however there's usually 1 driver, often the audio, that doesn't get installed. Sometimes we can solve it by mapping to the driver map on our server, but we don't have 100% of all the drivers out there.

Just yesterday we had an interesting experience with a Dell Dimension 1100. Dell's are easy to get drivers for, usually you just enter Dell's asset tag number into their site and you can get all the drivers. Unfortunately on this particular model the ADI audio driver link resulted in a 404 error page. Same on the US mirror. We found a number of links on the Dell web site for drivers for other dell models with the same ADI model number, but the drivers were not the same. Google turned up a few links, almost all to the same dell site.

The fact that the Linux kernel has so many drivers is a blessing for us. We crank out Linux machines much faster than Windows machines because we almost always have less to worry about when it comes to drivers.
chaslinux 15 September, 2010 22:42
Report offensive content Reply