Linux a pesar de poseer una buena base de drivers dentro de su kernel, cuando no hay un dispositivo soportado hay que esperar que el nuevo kernel incluya dicho driver o se pueda compilar un modulo para poder usar el dispositivo. Sin embargo hay cierta resistencia por parte de muchos desarrolladores de Linux a usar codigo cerrado, ademas de que se alega que se viola el licenciamiento de el kernel (que es GPL) al usar codigo propietario en el kernel.
Las empresas que fabrican dispositivos y perifericos alegan que ellos protegen su propiedad intelectual al dar modulos ya compilados. Pero quienes sufren directamente las consecuencias son los usuarios, debido a que su hardware no es completamente soportado o no se usan al 100% todas las funciones que posee por usar un modulo basado en codigo abierto, y tienen que usarse modulos basados en ingenieria en reversa para determinar el funcionamiento de el hardware.
Esto hace que muchas empresas no liberen driver ni codigo para sus dispositivos para Linux, lo cual conlleva a otras empresas a usar otras alternativas al ellos crear S.O. para superar esa limitante. Un ejemplo de esto es
Tomahawk Computers que cambio la base de su S.O. de Linux a FreeBSD. Porque???, simplemente quieren que su producto no este limitado por la GPL al no poder usar codigo cerrado, ya que el licenciamiento de los S.O. basados en BSD no tienen esa limitante y son mas abiertos a aceptar codigo propietario en su kernel (una razon por la cual Apple se baso en FreeBSD para crear OS X).
El espiritu de la GPL se basa en que el conocimiento es parte de la humanidad y que nadie puede lucrarse (o aprovecharse) tomando como propio algo que es derecho universal. Junto con eso se aduce que la mala calidad de el codigo que producen los fabricantes para sus productos.
Aun con el hecho de que las empresas fabricantes de hardware no quieran liberar drives bajo la GPL, Linux demuestra que el trabajo colectivo puede superar dichos inconvenientes.
Y en mi propia opinion, si un producto no llena las espectativas de los clientes, este esta condenado a desaparecer. En el caso de Linux quizas sea esto una de las cositas de porque no ha despegado mucho en las desktop, pero creo que es mas a que los usuarios y desarrolladores estan mas adaptados a Windows y no quieren invertir mas tiempo en aprender algo nuevo.
Aunque debo observar que la parte de el hardware si es un argumento tambien valido, las empresas con el pretexto de proteger su "Propiedad Intelectual" no liberaran codigo abierto para sus productos tan facilmente, por eso hay momentos que nos quedamos con los colochos hechos al instalar un Linux y ver que no soporta la tarjeta de sonido por ejemplo.
Pero quien debe ceder??? Las empresas o los desarrolladores de Linux y los defensores de la GPL???