Por que alguns dispositivos não exigem driver usb no Linux, mas no Windows?

4

Já vi vários projetos, que usam interface USB. Eles geralmente exigem um driver especial para o Windows, mas não para sistemas baseados em Linux. Por que é que? Quero dizer, mesmo o Windows tem alguns drivers genéricos para classes básicas de dispositivos USB, então o que o Linux suporta que o Windows não suporta?

    
por user32569 14.06.2014 / 00:00

2 respostas

6

Você também verá que no Linux, as distribuições padrão (e às vezes as compilações de kernel) tendem a incluir uma tonelada de drivers de hardware interessantes e específicos, principalmente devido às contribuições dos usuários ao longo do tempo. O Windows realmente não tem como os desenvolvedores arbitrários criarem drivers para hardware comum e incluí-lo em todas as novas distribuições do Windows. É um modelo diferente de software e distribuição. Com o Linux, muitas coisas fazem o caminho para o mainstream ao longo do tempo.

Não é só que o Linux tem mais drivers "genéricos" (mas isso é verdade, especialmente quando os contribuidores estão interessados em escrever drivers de escopo amplo, em vez de fornecedores que criam drivers proprietários para seu hardware específico). com uma grande coleção em que as pessoas podem contribuir e rapidamente chegar às principais distribuições, para sempre.

Eu vejo todos os tipos de coisas estranhas que acompanham o Linux. Por exemplo, CAN é uma interface serial e protocolo para uso em automação industrial e controle. O uso é relativamente raro, mas o kernel que vem com o Ubuntu tem suporte genérico ao CAN, e módulos de kernel de interface específicos do fornecedor de placa controladora são fornecidos com o padrão do Ubuntu. Esse tipo de distribuição não é possível com sistemas operacionais mais controlados, como o Windows ou o OSX. Eu não teria descoberto isso se não tivesse trabalhado em um projeto de robótica recentemente e, para minha surpresa, não apenas os drivers de interface foram incorporados ao kernel, mas os módulos para a placa controladora do meu fornecedor também já estavam (surpreendentemente) incluídos .

Off-topic-ish:

É importante notar também que, mesmo para os drivers que não são padrão, ambos os sistemas operacionais são muito melhores do que eram no passado. Distribuições populares do Linux têm trabalhado duro para tornar a obtenção de software o mais fácil possível para se manter competitivo, então em muitos casos um driver que ainda não está no sistema é facilmente obtido através de um repositório de pacotes (há 15 anos era muito mais difícil de obter hardware aleatório para trabalhar no Linux). O Windows, nos últimos anos, tem melhorado em ter um grande repositório de drivers disponíveis online para download automático quando o hardware é conectado - atualmente, pelo menos para mim, é muito mais raro encontrar "um driver para este dispositivo não poderia ser localizado "no Windows.

Ele só ficará melhor (em todos os sistemas operacionais) também. A facilidade de instalação de software e drivers é tão onipresente hoje (especialmente devido a avanços em plataformas de estilo "app" impulsionadas por dispositivos móveis - e agora veja; você tem o Ubuntu's Software Center, o Windows 8 Marketplace, a iTunes Store, o Google Play e até softwares individuais como o Chrome, o Firefox, todos têm novos recursos focados inteiramente na facilidade de encontrar e instalar novos softwares) que é quase esperado; é um bug se você tiver que procurar um software, onde costumava ser um bônus se você não o fizesse.

    
por 14.06.2014 / 01:25
0

O AFAIK Linux inclui todos os "drivers" no kernel, mas o Windows os mantém separados. Então o Linux tem drivers, mas eles já estão incluídos no coração do sistema. O Linux também usa drivers mais genéricos, enquanto o Windows possui drivers mais específicos para direcionar determinados dispositivos.

    
por 14.06.2014 / 00:44