Esclarecendo a questão dos drivers: o problema do suporte a hardware

O dilema entre drivers de dispositivo livres e proprietários tem sido muito discutido ultimamente. Como minha primeira contribuição ao VOL, pretendo esclarecer de uma vez por todas este assunto que é mais complexo do que parece: por que a documentação do hardware é tão importante porém tão difícil de conseguir e o que podemos fazer quanto a isso?

[ Hits: 37.972 ]

Por: Jack Ripoff em 21/05/2007


Mas se a documentação é tão importante, por que é tão difícil de obter?



Como eu já disse, o projeto OpenBSD trabalha muito no sentido de suportar o hardware, e a prioridade número 1 deles é conseguir a documentação dos dispositivos. Porém muitas fabricantes de hardware têm uma resistência muito grande a liberar sua documentação. Algumas nem respondem aos pedidos (SiS, Broadcom). Outras acabam criando uma discussão interminável e nunca se consegue o que se quer. Nesses dois casos, tudo o que podemos fazer é continuar reclamando com as fabricantes.

Algumas fabricantes, no entanto, respondem com motivos pelos quais elas não podem (querem) liberar a documentação. Mas são sempre as mesmas desculpas esfarrapadas:
  • Motivos de "propriedade intelectual":
    1. Patentes - não importam, elas são documentos abertos! A não ser que eles estejam infringindo patentes de terceiros...
    2. Direitos de autoria (Copyrights) - não temos como infringir os direitos deles usando a documentação.
    3. Marca Registrada - não se aplica.
    4. Segredo comercial - o NDA só se aplica à pessoa com os documentos! Conclusão: tudo mentira!


  • Negócios ("precisamos proteger os nossos segredos"):
    Elas têm a impressão de que podem perder sua vantagem tecnológica se abrirem a documentação, mas isso não é verdade. As fabricantes taiwanesas são a prova viva disso. Elas nos entregam de bandeja toda a documentação, e no entanto vão muito bem de negócios (a Realtek, por exemplo, é dona de aproximadamente 90% do mercado de controladoras ethernet off-board).

  • Obscuridade (isto é, não revelar os bugs que o hardware tem):
    Na verdade elas nunca dão esta desculpa, mas depois de anos de experiência o projeto OpenBSD percebeu que todos os chips nos quais eles tiveram que fazer engenharia reversa eram mal-projetados.

  • A "desculpa da FCC":
    Algumas fabricantes de controladoras de rede Wi-Fi (e outros dispositivos que funcionam via rádio-freqüência) alegam que a FCC, comissão estadunidense responsável por regular dispositivos de comunicação, limita o que esses dispositivos podem fazer e, portanto, elas não podem nos dar a documentação para que nós não possamos modificá-los e fazê-los funcionar em outras freqüências. Mas a FCC nunca atacou as fabricantes que liberam a documentação. Mesmo que nós os modificássemos, os dispositivos de rádio não poderiam ser prejudiciais. E o melhor é que, se os programadores quisessem, já poderiam modificar o funcionamento deles porque eles permitem atualização de firmware!

  • Usuários que defendem as fabricantes:
    Nos fóruns muitos usuários dizem que as fabricantes não podem liberar os documentos por vários motivos que nunca foram sequer citados pelas próprias fabricantes. (???)

Nesse caso também só nos resta reclamar e continuar exigindo.

Há porém um outro grupo de fabricantes que requer o assino de um NDA (non-disclosure agreement) para liberar a documentação. Um NDA é um acordo de confidencialidade. Isso significa que o assinante concorda em manter a documentação em sigilo e só utilizá-la para si. Isso é mal, muito mal. Por quê? Porque o produto final é um mistério. Como ninguém mais tem acesso à documentação, nós acabamos com um driver que só pode ser mantido a muito custo. Trabalhar com um driver desses exige o uso de engenharia reversa.

E então vem a pergunta "mas quem concorda em assinar esses NDAs"? Em primeiro lugar, quem não liga para software livre: as empresas de software proprietário (Microsoft). Depois, vêm as distribuidoras de software livre que, apesar de trabalharem com software livre, no fundo só querem ganhar dinheiro e então não ligam a mínima (Red Hat).

Mas o pior de tudo não são essas empresas, afinal não se poderia esperar nada mais delas. O pior é quando os próprios desenvolvedores do Linux ou do FreeBSD concordam em assinar um NDA! Aí a casa cai, porque nós perdemos a chance de convencer essas fabricantes a liberarem a documentação. Quando nos dirigimos a elas, elas dizem que já fizeram NDAs com a comunidade do software livre e não vão nos dar a documentação.

É uma pena que alguns desenvolvedores vendam a liberdade tão facilmente, no desespero de melhorar o suporte a hardware do seu sistema. Se ao invés disso eles se unissem ao esforço do projeto OpenBSD de obter a documentação do hardware, nós provavelmente conseguiríamos muito mais do que já conseguimos (e acredite, nós conseguimos convencer diversas fabricantes - hoje, o OpenBSD é o sistema operacional livre com o melhor suporte nativo - sem blobs e sem ndiswrapper - a controladoras de rede Wireless por exemplo).

Esses acordos são comparáveis ao acordo entre a Microsoft e a Novell. A intenção de melhorar a compatibilidade entre os sistemas é boa, mas agora a Microsoft tem um motivo para dizer que o Linux infringe sua "propriedade intelectual". Além do que, se a Microsoft realmente quisesse melhorar a inter-operabilidade, ela liberaria as documentações das suas APIs, seus formatos de arquivo, seus protocolos, etc. Do mesmo modo, a intenção de escrever um driver livre é boa, mas agora as fabricantes têm um motivo para não liberarem a documentação.

Há ainda fabricantes que oferecem drivers completamente livres (Intel, IBM), mas não liberam a documentação. No fundo, a situação é a mesma que com os drivers sob NDA: não temos a documentação e por isso não podemos manter os drivers facilmente. Esse tipo de driver e os blobs nunca deveriam ser aceitos por ninguém, pois além de representarem um risco de segurança ainda por cima acabam com nossa liberdade. Infelizmente o FreeBSD e muitas distribuições de Linux acabam por aceitar esses tipos de drivers na esperança de oferecerem mais facilidade, mas no fundo só estão minando a liberdade de todos, abrindo problemas de segurança e estabilidade, favorecendo essas fabricantes e deixando o usuário na mão (se o usuário reclamar, não se pode fazer nada porque ou o driver é fechado ou não há documentação).

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. O que isso tem a ver comigo?
   3. Mas se a documentação é tão importante, por que é tão difícil de obter?
   4. O problema das OEMs
   5. E então, o que nós podemos fazer pra resolver esse problema?
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

O MP3 player e o Ogg Vorbis

Recuperando seus dados com o "truque da geladeira"

Linux, 100% compatível!

Netbook Positivo Mobo White 1020 com Mandriva

Instalando drivers da nVidia com kernel 2.6

  
Comentários
[1] Comentário enviado por mcjassis em 21/05/2007 - 13:24h

Bom artigo...
Eu tenho uma outra proposta: voltemos a usar as máquinas de escrever, no máximo as modernissimas máquinas de escrever elétricas.
Para que tecnologia? Para que computador? Para que software livre? Vamos voltar a enviar cartas, ouvir fitas K7 (CD's nunca mais!)

Sou usuário do Ubuntu e confesso que gostei mto da iniciativa da DELL.
A DELL simplesmente visualizou que existia uma nova demanda "PC's OEM com Linux (td configurado, instalado e funcionando perfeitamente)".
A Canonical tbm vende suporte!

Pelo seu artigo uma revolução anarquista seria a saída! Ninguém é dono de nada! Todo mundo faz o q quer! E blah blah blah blah...
Ideais politicos são para serem discutidos em outro local...
Saudações...

[2] Comentário enviado por marcrock em 21/05/2007 - 14:14h


Ótimo artigo....
Eu acho que o fato de empresas como a SIS (tenho uma pc-chips m810 com chipset sis) não liberarem suas documentações já é um grande motivo para que nós boicotemos produtos delas, pense bem eatamos nos sujeitando demais as vontades dessas empresas, elas não respeitam os SO's livres( algumas até fingem que apoiam!!!). O que é mais estranho é que esse negócio de não divulgar porque se trata de segredo industrial é uma grande mentira, pois pra começar os componentes hoje em dia já são bem padronizados, ou seja, o diferencial está na qualidade dos materiais e do processo de produção e não no que uma peça faz e outra não faz!!!!
Assim como muitas empresas já estão disponibilizando drivers for linux em formato binário , poderiam divulgar os documentos e o código fonte, pois faz parte da ideologia do mundo open-source e cabe as empresas se adaptarem ao que cada SO oferece e o linux nos oferece liberdade, portanto cabe as indústrias até como um pensamento comercial dar essa liberdade aos programadores e usuários.
Isso não é fácil de se conseguir, mas não custa tentar e enquanto não conseguimos temos que nos virar com hardware for Rwindows, pois prá mim se a empresa não dá o drivers (Nvidia, ATI e etc...), não fornece documentação aoa programadores e nem os fontes, então esse é um hardware pra Windows e que portanto só combina com as suas ideologias e políticas (sem liberdade, sem fontes, sem melhorias e adaptações).

Parabéns pelo artigo!!!

Valew

[3] Comentário enviado por juliaojunior em 21/05/2007 - 17:18h

acho meio 'doidão' todo artigo 'político' publicado. é como ouvir um religioso defendendo sua própria religião. boa iniciativa, talvez, mas também meio sem foco.

[4] Comentário enviado por david.kwast em 21/05/2007 - 17:21h

Parabens, falou tudo, torco pra mesa virar mesmo. E concordo q empresas q soh visam lucros com Linux podem soh miar mesmo...

[5] Comentário enviado por GilsonDeElt em 21/05/2007 - 17:28h

Muito bom esse artigo!

Tarefa cumprida: mostrou bem como anda a questão do suporte a hadrware nos sistemas Livres.

Parabéns!

[6] Comentário enviado por segalla em 21/05/2007 - 19:44h

Jack, quero parabenizá-lo pelo seu artigo.

Ao pessoal que achou sem foco apenas posso lamentar pois não sabem o que estão dizendo.

Na minha modesta opinião de empresário (vejam que não sou xiita do software livre ou da gratuidade das coisas, estou no mercado para ganhar dinheiro e ter lucro), sempre tento maximizar o lucro da minha empresa e uma das formas é aumentar minhas vendas. Para aumentar as vendas e conseguir manter a qualidade dos meus produtos e serviços não posso canibalizar o preço de venda e nem querer concorrer com produtos ou serviços de menor qualidade, mantenho sempre em mente que tem mercado para todos.

A melhor forma de manter a qualidade dos produtos e serviços foi com a utilização de software livre e o que nos prejudica muito é justamente a falta de fabricantes com hardwares compatíveis, e aí entra a necessidade da disponibilização da documentação para o desenvolvimento de drivers confiáveis. Se nos fossem fornecidos drivers bugs-free (uma utopia pois sempre haverá um bug a ser corrigido) talvez nunca fosse necessário lermos a documentação, pois isso é custo, ao invés de investir tempo e esforço para desenvolver nossos produtos estaríamos gastando para corrigir problemas em produtos de terceiros.

Quando o pessoal se oferece para desenvolver o driver gratuitamente de algum dispositivo, o fabricante deveria ver uma ótima oportunidade de negócio, afinal ele só tem a ganhar com o aumento de possíveis compradores de seus produtos, seu público alvo cresceria sem investimento algum.

Eu, como empresário, só tenho a lamentar a falta de visão de mercado dos meus "colegas" empresários e eu, como engenheiro e apoiador do SL, adoraria poder desenvolver soluções mais estáveis e confiáveis e que não me causassem problemas por bugs em softwares de terceiros que não tenho acesso para corrigir.

Gostaria só de complementar que politicamente acho que o governo brasileiro atual mostra o tamanho de sua burrice ao querer impôr a utilização de SL (Software Livre), afinal para cada problema existem várias soluções no mercado e nem sempre a melhor solução é com SL.

E nem acho que todo software deva ser livre, existe mercado para todos mas o que não posso concordar é com a venda de um produto com problema e que quem vendeu não resolva o problema e nem me deixa resolver sozinho. Aí o meu lado consumidor se revolta pois quem está tendo prejuízo sou eu.

Abs,

Segalla
http://comendoemsampa.segalla.eng.br

[7] Comentário enviado por cybertux em 21/05/2007 - 22:03h

Excelente discussão vc criou aqui, acho que este é um espaço SIM para discussões, afinal poder expor pontos de vista e ideias é ser livre.

Este é um tema que deveria ter um envolvimento maior por todos nós.

Concordo com o colega acima, falta um pouco de visão de negócios para estas empresas, uma vez que se forem desenvolvidos drives que tornem os SL mas compativeis com o hardware eles passariam a vender mais.
Mas eles é que devem amadurecer e prestar mais atenção nas tendencias.

ABRAÇO

[8] Comentário enviado por freakcode em 23/05/2007 - 11:44h

Drivers fechados ou não, essas empresas uma hora acordam para o sistemas como Linux e BSD pois fica impossível ignorá-las.

nVidia tem um suporte incrivel para sua linha no Linux, no entanto, o driver é fechado. Eu não me importo que o driver seja fechado, uma vez que o objetivo do driver é apenas fazer a placa deles funcionar. O software livre, mas o hardware se leva anos de pesquisa para desenvolver, consumindo montantes expressivos de investimento. Ideologia não vai encher a barriga deles. Nem eles vão deixar de serem competitivos no mercado para apoiar uma causa que não é deles.

O que se percebe mesmo é falta de visão das empresas, onde alguém acaba fazendo gratuitamente um driver aberto por engenharia reversa para um dado hardware pela falta de suporte da empresa.

Mas muita coisa tem melhorado. Há bastante hardware com suporte OFICIAL no Linux. Placas de vídeo (nVidia, ATi, Matrox), placas de áudio (Creative, M-Audio), impressoras (HP, Lexmark, Epson tambem?), fora vira e mexe algumas surpresas ao comprar um hardware e descobrir que no site existe um driver para Linux.

[9] Comentário enviado por geckobr em 23/05/2007 - 13:47h

tb acho q qm deve cuidar do suporte a hardware para o linux sao as proprias empresas, afinal quem conhece melhor o produto delas do que elas mesmas? Mas qd falo cuidar, falo em cuidar mesmo, corrigir bugs e etc, assim como fazem no windows e não apenas criarem um driver e deixarem lá só pra dizer que dão suporte.

A parte ideologica desse artigo me pareceu meio radical, mas como não conheço bem o tema prefiro não comentar, talvez só um detalhe, uma posição radical, por imposição pode não ser bem aceita, o pensamento: "eu estou certo, vc esta errado!", raramente funciona.

[10] Comentário enviado por Jack Ripoff em 23/05/2007 - 21:20h

mcjassis, acho que você não leu o artigo inteiro. Se leu, não o entendeu bem. Sua proposta de que larguemos a tecnologia é impraticável, chega a ser surreal. A minha proposta é de aproveitarmos a tecnologia. Se eu não tenho o driver do meu hardware não posso usá-lo e portanto não posso gozar da tecnologia. É axiomático que se faça livre a documentação dos drivers, pois se nós compramos um dispositivo nós temos o direito de usá-lo em qualquer plataforma, em qualquer sistema operacional e em qualquer época que nós quisermos. As fabricantes já mostraram que são incapazes de manter drivers para nós. A comunidade, por outro lado, é capaz de manter drivers que funcionem em todas as arquiteturas que o software livre roda e em todas as versões de sistemas operacionais.

Não se trata de querer convencer os outros de que estou certo e que os outros estão errados. Isto aqui não é uma pregação. No artigo não tento convencer ninguém de que o software livre seja o caminho a ser seguido - ele se aplica apenas àqueles que gostam da liberdade e entendem o espírito do software livre (tanto é que eu explico toda a lógica do meu raciocínio partindo do pressuposto que quem está lendo entende a filosofia por trás). Ninguém é obrigado a gostar de ou apoiar o software livre. Há quem encara o software livre apenas como um produto ou como um modelo de negócios. Há quem usa apenas um sistema operacional em apenas uma única plataforma e portanto não se importa se os blobs da Nvidia não rodam em PowerPC.

Não queremos que as fabricantes apóiem a nossa causa. Não queremos nenhuma linha de código delas. Só queremos a documentação. É nosso direito. Eu expliquei claramente porque nós temos o direito de tê-la - independentemente de ser para um projeto de software livre ou não. Eu expliquei porque não podemos ficar contando que as empresas cuidem do hardware para nós: elas descontinuam produtos a todo o momento e não é porque a sua impressora é antiga que você não tem o direito de usá-la plenamente. Elas são incapazes de manter drivers para diversas plataformas e o Linux roda em uma porção de arquiteturas. Não preciso nem citar exemplos de dispositivos que não funcionam em sistemas operacionais novos (ex: Linux 2.6) ou cujos drivers são extremamente instáveis, até mesmo no próprio Windows. É fácil manter drivers para Windows pois ele é monolítico (um driver de Windows 2000 por exemplo geralmente funciona no Windows XP, um driver de Linux 2.4 quase nunca funciona no Linux 2.6) e monoplataforma. As fabricantes conhecem o produto porque elas tem a documentação - é claro, elas o criaram! Se nós tivermos a documentação saberemos tanto quanto elas e poderemos ser livres e independentes. Afinal, o lema desta comunidade não é "Porque nós amamos a liberdade!"?

Um grande abraço e obrigado a todos pelo retorno!

[11] Comentário enviado por Macuco em 23/05/2007 - 21:28h

É de entender que vendem menos não vendendo para nós, mas que não perdem com isso, mas ganham de outros que tem interesse que não vendam para nós.

[12] Comentário enviado por realnpc em 23/05/2007 - 22:57h

Gostei do artigo, muito educativo.
Mas fiquei confuso: se eu devo boicotar todos os fabricantes que se recusam a abrir a documentação, e esses são a imensa maioria dos fabricantes, como diabos eu vou comprar hardware?
Processador por exemplo: nada de Intel, AMD, Sparc da Sun, C3/C7 da Via (nunca vi driver aberto que preste pra Via, principalmente pro xorg e eles não liberam nada)... chipset entao nem se fala. VGA: intel, ati e nvidia nao servem... sis eh lenda. WiFi eh de lascar, Dell == Broadcom, ipw ultra-mega-popular eh da Intel... Tah complicado, tudo com ndiswrapper, firmware e o diabo.
Estou prestes a comprar um pc novo, porque o meu Laptop pseudo-linux-friendly Dell deu pau. Não sei o que comprar, sinceramente.

Shalom!

NPC.

[13] Comentário enviado por sombriks em 23/05/2007 - 23:23h

Deve ter sido essa parada de NDA que rolou com o driver de modem da motorola; 3 anos atrás tinha o driver e o fonte, mas isso sumiu do site deles... Mas outro dia eu vi um mandriva 2006 rolando net discad acom esse modem, sendo que o kernel era recente mas a última versão pública data de 2004... (ou 2003?)

Daí tenho que desencorajar qualquer um que esteja penando em comprar um modem discado motorola simplesmente porque um smartlink funciona bem em windows e o driver linux dele eh muito bom!

[14] Comentário enviado por Jack Ripoff em 24/05/2007 - 00:07h

realnpc, não se preocupe demais em boicotar as fabricantes! Como eu disse na parte 4 do meu artigo, as OEMs exercem uma influência muito maior sobre as fabricantes do que nós consumidores. Portanto o boicote é mais um ato simbólico, mas não é tão significativo.

Se você puder, boicote! Mas se não for possível, não fique tão preocupado. Mesmo porque algumas vezes é quase impossível achar um equipamento (por exemplo, um laptop) que seja completamente livre (você mesmo citou o exemplo da Dell). Também não precisa deixar de comprar os processadores da Intel! Compre os processadores, mas tente evitar as controladoras Wireless.

É muito melhor deixar claro para os programadores e as distribuidoras de Linux que NDAs são prejudiciais e nós não os queremos. A medida mais significativa é nos ajudar a reclamar enviando e-mails às empresas. Também nos ajude a convencer a Dell a persuadir as fabricantes votando lá no IdeaStorm, quem sabe nós não conseguimos chamar a atenção dessa grande OEM né? Mas não se prejudique por causa da atitude das fabricantes, se você realmente precisa de determinado hardware não deixe de comprá-lo.

[15] Comentário enviado por andreeduardo.sa em 24/05/2007 - 19:33h

Muito boa a matéria,

Concordo com você, pois eu faço o mesmo, boicoto o fabricante, posto mensagens malcriadas no fale conosco de diversas empresas que não fornecem suporte ao software livre. se todos nós tomassemos uma atitude em vez de ficar calados como carneirinhos talvez as empresas parassem pra pensar. O grande problema é que muita gente que fica reclamando se diz usuário de software livre, mas possui um SO proprietário em sua maquina com dual boot, aí o hardware que não funciona no linux roda no Windows com seu joguinho 3D. As pesoas tem que aprender a lutar por seus direitos e contestar os fabricantes.

Um Grande Abraço.

[16] Comentário enviado por realnpc em 24/05/2007 - 22:23h

Oi, gente.
Falando em reclamar e exigir direitos, algo interessante parece ter se tornado verdade também no Brasil.
Quando comprei meu Dell há 1 ano e meio não havia produto da Dell disponível no Brasil que não viesse com um produto da Micro$oft junto. Entao era venda casada mesmo, na maior cara-de-pau. Liguei pra lá e disse que queria o notebook, mas que não queria o Windows XP Home Edition junto. O vendedor me respondeu que não era possível vender separado e me ofereceu um desconto de R$350.00 por eu estar fechando a compra por telefone, usei parte do desconto numa garantia Compelte Care e o resto cobriu o frete. Entao eu fiquei tranquilo, consegui o que queria, e até hoje tenho os CDs em casa pegando mofo.
Pois bem, nos EUA é de praxe que os usuários que compraram alguma coisa que "obrigatoriamente" vem com Windows ligarem pra Dell e exigirem parte do dinheiro de volta, então a Dell deposita uns trocados na conta deles.
Há algum tempo a Dell já vende produtos com FreeDOS e agora com Ubuntu no Brasil e eu li em um Blog que usuários brasileiros que compraram computadores Dell com Windows podem receber parte do pagamento devolta, só não sei exatamente como, mas vale a pena tentar.

Shalom!

NPC.

[17] Comentário enviado por Jack Ripoff em 25/05/2007 - 17:24h

A Dell começou a oferecer PCs com Ubuntu justamente porque os clientes exigiram através do IdeaStorm, por isso acho importante nós votarmos no IdeaStorm para conseguir a documentação dos dispositivos (nem que seja apenas dos dispositivos da própria Dell).

http://www.ideastorm.com/article/show/64498


Há um bom guia no Linux.com sobre como conseguir esse pagamento:

http://www.linux.com/article.pl?sid=07/01/03/227237

[18] Comentário enviado por Kelno em 03/06/2007 - 03:04h

Artigo muito bom e importante para pessoas como eu q queremconhecer tanto as vantagens como as desvsntagens desse maravilhoso sistema operacional.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts