15

As far as I know the device drivers are located in the Linux kernel. For example let's say a GNU/Linux distro A has the same kernel version as a GNU/Linux distro B. Does that mean that they have the same hardware support?

16

The short answer is no.

The driver support for the same kernel version is configurable at compile time and also allows for module loading. The actual devices supported in a distro therefore depend on the included compiled in device drivers, compiled loadable modules for devices and actual installed modules.

There are also devices not included in the kernel per se that a distro might ship. I have not run into problems lately, but when I started with Linux at home I went with SuSE, although they had the same, or similar, kernel versions as RedHat, SuSE included ISDN drivers and packages "out of the box" (that was back 1998).

  • + non-free modules that distros may or may not include. – Braiam Nov 17 '14 at 20:27
8

Somewhat.

While what others are saying (that different distros build kernels differently) is technically true, it should be noted that because the Linux kernel has support for loadable modules, most distributions build support for all the hardware they can, because they might as well - this works because the drivers are built as modules, and then there's no expense when you load the kernel into memory. The only expense is hard drive space, which is abundant.

The main differences (as was, again, already mentioned) will be due to differing policies per distribution as to how they handle nonfree software like firmware blobs.

  • 2
    "The only expense is hard drive space, which is abundant." Sorry but this is short-sighted. You appear to be assuming a modern desktop environment, but there are far more use cases where storage space is at a premium. – Lightness Races with Monica Nov 17 '14 at 11:47
  • @LightnessRacesinOrbit: Fair point. Some of us tend to ignore or forget about things like embedded systems. A month or so ago I wrote a simple telnet program in Python and had fun poking around inside my old ADSL modem. It's amazing how much you can fit into a Linux system with only 6MB of storage. :) – PM 2Ring Nov 17 '14 at 11:55
  • @PM2Ring: And you won't get many loadable modules on one of those ;) – Lightness Races with Monica Nov 17 '14 at 11:56
  • 1
    Note also, there is a potential speed improvement from building in drivers as opposed to making everything a module, it lowers memory fragmentation and allows better cache optimization by the linker. – Vality Nov 17 '14 at 16:20
4

No, because :

  • each distribution makes different choices when selecting which kernel features are enabled when building the kernel from source. I don't expect an enterprise distribution that focuses on server hardware to provide much provide support for a large range of soundcards for instance.

  • some drivers still depend on vendor supplied (closed source) firmware even for the open source Linux driver included in the kernel. Different distribution have different policies with regards to including those. For some examples check for instance the Debian firmware-non-free package.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.