Ir para conteúdo

Drivers do Windows A FUNDO - Parte 2


Mensagem Recomendada

  • Administrador

O artigo abaixo foi atualizado em 2019 com informações adicionais a atualizadas deste vídeo publicado em 2017:

Essa é a segunda parte do artigo Drivers do Windows A FUNDO. No primeiro artigo eu abordei os vários tipos de driver, além de detalhar como o Windows instala os drivers e os dois únicos cenários aonde um atualizador de driver é recomendado.

Nessa segunda parte eu abordo temas adicionais e importantes sobre drivers do Windows. Se você não leu a primeira parte desse artigo, eu sugiro que você leia para evitar que você tenha dúvidas nesse artigo que você não teria se você tivesse lido a primeira parte.

Bem, nesse artigo eu complemento o vídeo anterior com cinco dicas interessantes sobre drivers. Vamos lá:

Drivers em uso e drivers WHQL

Como saber quais drivers o Windows está utilizando?

Drivers do Windows | Drivers instalados

Para saber isso, basta abrir uma janela de comando ou PowerShell e digitar o comando driverquery, e se você quiser mais detalhes sobre cada drivers, digite driverquery/v.

Se você prefere utilizar um aplicativo mais prático para isso, eu sugiro o uso do InstalledDriverList da NirSoft, que é uma versão portátil que não precisa ser instalada.

Além dele mostrar detalhes de cada driver, ele mostra como o driver é carregado (como por exemplo durante o boot, se é carregado automaticamente pelo Windows, etc) e também gera um relatório completo em HTML.

Se você quer ver a lista de drivers por ordem de empresa, para você saber quais drivers são da Microsoft e quais são de outras empresas, basta clicar em File Company. No lado esquerdo do nome do driver há uma esfera com cores diferentes:

Verde: driver está rodando em kernel

Amarelo: driver não está rodando em kernel

Vermelho: driver não está rodando em kernel, mas é carregado na inicialização do Windows (isso pode indicar um problema com o driver)

O que é um driver WHQL?

Quando uma empresa cria um novo periférico, ela também precisa criar um driver para que ele possa ser identificado e utilizado no Windows.

Como a Microsoft não tem nenhum controle sobre a qualidade desse driver, há muitos anos empresas disponibilizam drivers instáveis e com bugs que causam todo tipo de problema no sistema operacional, principalmente tela azul.

Voltando um pouco no tempo, a época do Windows 95 foi a Era Medieval dos drivers, pois o sucesso estrondoso desse sistema operacional fez com que empresas do mundo todo lançassem rapidamente todo tipo de periférico e acessório para esse sistema operacional.

Infelizmente essas empresas não perdiam muito tempo realizando testes exaustivos com os drivers, chegando ao ponto de, acredite se quiser, vender um periférico que vinha com um CD com os drivers BETA dele, ou seja, o próprio driver era uma versão de teste pois o driver final ainda estava sendo desenvolvido(!)

Obviamente o resultado disso foi desastroso, os usuários que não faziam ideia sobre estabilidade de drivers, e por isso culpavam diariamente o Windows e a Microsoft por esses problemas.

Drivers do Windows | WHQL

Para acabar com a instabilidade de drivers bugados, muitos anos atrás a Microsoft criou um programa de testes de drivers em que o fabricante enviava seu periférico e o driver para a própria Microsoft. Ali ele era exaustivamente testado em diversos computadores durante vários dias, e se esse driver funcionasse perfeitamente sem causar nenhum problema no Windows ele se tornava um driver aprovado e certificado pela Microsoft.

Esse driver é o conhecido WHQL, indicando que ele foi aprovado pelo Windows Hardware Quality Labs, o Laboratório de Qualidade de Hardware do Windows, e que ele pode inclusive ser distribuído via Windows Update.

Na época do Windows 95 e 98 os fabricantes não faziam muita questão que seus drivers fossem WHQL, pois o procedimento do próprio teste era meio arcaico: além de alguns fabricantes de periféricos precisarem enviar até 25 unidades para Redmond para a realização do teste, o próprio teste poderia demorar até 60 dias, o que obviamente desestimulava empresas asiáticas que criavam periféricos novos a cada dia.

WHQL no Windows 10

Há tempos o teste de drivers para obtenção do WHQL é muito mais automatizado e rigoroso, aonde o fabricante baixa uma ferramenta da Microsoft e um certificado digital específico que devem ser instalados em todos os computadores que serão utilizados para testar o driver, e essa ferramenta realiza automaticamente todos os testes necessários.

E no final desses testes, a própria ferramenta envia para os servidores da Microsoft o resultado deles para validação do driver, aonde um driver só se torna WHQL se ele passar em todos os testes.

Todos os drivers nativos do Windows e aqueles que vêm via Windows Update são WHQL justamente para garantir que eles não vão causar nenhum problema, além do Windows 10 impedir automaticamente a instalação de drivers que não sejam WHQL.
Para você ter uma ideia da dificuldade de um driver de vídeo se tornar WHQL no Windows 10, o teste automatizado que o fabricante precisa realizar com esse tipo de driver inclui uma sequência de 1525 testes específicos para garantir que esse driver é estável e pode ser utilizado em todas as edições do Windows 10 (incluindo a versão ARM para dispositivos móveis), além do Windows Server.

Drivers do Windows | WHQL 2

O teste específico para drivers de placas de vídeo dura quase 30 horas algumas dezenas de horas, e envolve desde a reprodução de vídeos com diferentes codecs como o H264, HEVC (ou H.265 que suporta vídeos com resolução de até 8K) e VP9, testes detalhados em 2D e 3D sob DirectX (inclusive testes de compatibilidade com DX8 e DX9), renderização e texturização de objetos, testes de envio de sinal para displays externos, e também um teste de stress que dura 4 horas para garantir a estabilidade do driver em uma situação extrema.

Se você tem interesse em saber detalhes sobre cada um testes, além dos testes de drivers de outros periféricos além da placa de vídeo, você pode acessar um arquivo do Windows Hardware Lab Kit que tem mais de 11 MIL páginas repletas de informações.

Mas mesmo com todos esses testes, isso não indica que o driver seja absolutamente infalível. Você se lembra do caso que eu citei na primeira parte desse artigo sobre o driver 196.75 da NVIDIA que queimou placas de vídeo? Aquele driver era WHQL!

E como foi possível um driver WHQL ter um bug tão destrutivo? Esse problema aconteceu pois o problema não era relacionado ao driver de vídeo em si, mas sim um bug relacionado ao controle de velocidade da ventoinha, que é algo que o teste de WHQL obviamente não testa, comprovando que até mesmo novos drivers WHQL podem ter bugs.

Outro detalhe interessante é que sempre existem diferenças entre o driver instalado via Windows Update (que veio através do banco de dados de driver da Microsoft) e a instalação do driver via site do fabricante.

Driver básico x driver completo

Drivers do Windows | Impressora Isso acontece pois os drivers baixados pelo Windows Update incluem funcionalidades básicas do periférico. No site dos fabricantes, por outro lado, as versões são usualmente encapsuladas com todo tipo de funcionalidades, sendo muitas delas simplesmente inúteis.

Exemplo simples: enquanto o driver genérico de uma impressora permite que ela funcione perfeitamente, o pacote de download do fabricante também inclui esse driver, além de "funcionalidades extras" como um assistente de instalação da impressora, opção de compra online de cartuchos originais que aparece na tela do seu monitor quando o programa detecta que o nível dos cartuchos está baixo, programa de correção de fotos e reconhecimento de caracteres em impressoras que também têm scanner, etc.

Com isso, enquanto um driver de impressora com pouco mais de 10 MB é suficiente para ela funcionar, fabricantes disponibilizam pacotes com 100, 200 e até 500 MB com tranqueiras adicionais que muitas vezes ocupam espaço à toa tanto no disco rígido quanto na memória RAM, pois muitos desses aplicativos são carregados na inicialização do Windows:

Drivers do Windows | Driver básico x driver completo

E para piorar, mesmo que o driver seja WHQL nesse pacote, muitos aplicativos atrapalham o Windows e o usuário, pois às vezes o fabricante instala um aplicativo que faz algo que o Windows faz nativamente, como por exemplo detecção de redes Wi-Fi.

Aliás, como isso também se aplica aos fabricantes de notebook, é justamente por esse motivo que eu sempre reinstalo o Windows "do zero" em notebooks novos, pois dessa maneira o usuário se livra dos bloatwares, programas inúteis e versões trial que vêm pré-instalados no note atrapalhando bastante o seu desempenho.

Por que drivers do Windows têm data 21 de junho de 2006?

Drivers do Windows com data 21 de junho de 2006

Muitos usuários estranham o fato de vários drivers do Windows 10 e também das versões anteriores do Windows serem de 2006, e em vários fóruns há dúvidas e reclamações sobre isso - inclusive no próprio fórum da Microsoft.

Embora esses drivers têm a data de 2006, na verdade esses drivers são novos e atualizados. E porquê eles têm data de 2006? Isso é necessário para permitir que o usuário instale um driver específico sem que o Windows atualize automaticamente esse driver por outro mais recente.

Quando o Windows pesquisa por um driver, ele primeiro checa o Hardware ID do periférico e quais drivers foram desenvolvidos especificamente para esse periférico - e se dois drivers foram criados especificamente para esse periférico, o Windows dá preferência ao driver mais recente. Se os dois drivers tiverem a mesma data, o driver com a maior versão é o driver escolhido:

Drivers do Windows | Hardware ID do periférico

Isso é muito prático e eficiente, mas o que acontece se o fabricante do seu PC disponibiliza um driver específico que você precisa utilizar (seja por questão de compatibilidade ou teste) e esse driver tem uma data anterior aos drivers mais novos? Nesse caso o Windows sempre substituiria ele por outro driver mais recente (pois a data dele é mais recente), e na prática você jamais conseguiria utilizar esse driver do fabricante.

Exemplificando de uma maneira simples: se o Windows vier com um driver de 2017 e você precisa instalar um driver de 2015 no lugar dele, assim que você instalar esse driver de 2015, o Windows vai substitui-lo pela versão mais recente, que é a versão 2017 que veio com o próprio Windows 10. Com isso, você jamais poderia utilizar esse driver de 2015 pois o Windows considera esse driver como "antigo":

Drivers do Windows | Drivers do periférico

MAS, como o Windows 10 vem com um drive de 2006 (pois ele não sabe que na verdade esse driver é de 2017), quando você instalar o driver de 2015, o Windows vai manter esse driver de 2015, porque para ele esse driver de 2015 é uma versão muito mais nova do que o driver "antigo" que estava lá e era de 2006.

Windows Vista

E porquê os drivers têm a data 21 de Junho de 2006? Pois os drivers das versões mais novas do Windows precisam ser compatíveis com o hardware disponibilizado depois do Windows Vista, uma vez que o modelo do funcionamento interno dos drivers atuais foi introduzido com o Windows Vista - e a versão RTM do Windows Vista, que foi a primeira versão oficial  disponibilizada ao público, foi finalizada no dia... 21 de Junho de 2006 :) 

Remoção de drivers antigos para recuperar espaço e backup

Remoção de drivers antigos para recuperar espaço

Como eu informei no primeiro artigo, a pasta DriverStore é a pasta que armazena os drivers do Windows, e ela tem em média 2 GB de tamanho, embora esse número varie de acordo com o tipo de PC e periféricos instalados. E toda vez que você instala um driver novo, o driver anterior continua existindo nessa pasta, pois dessa maneira é possível reverter para o driver anterior caso o driver novo tenha algum problema.

Isso é muito prático, mas a atualização constante de drivers faz com que essa pasta cresça cada vez mais, pois ela continua armazenando drivers antigos - e eu já vi casos aonde essa pasta tinha mais de 40 GB.

Isso acontece muito com quem adora baixar drivers da NVIDIA, aonde cada driver pode ter mais de 450 MB. Somente no ano de 2017 a NVIDIA disponibilizou 20 drivers GeForce oficiais que somados totalizam quase 9 GB - e se alguém baixou todos eles e não apagou a versão anterior, certamente a pasta DriverStore dessa pessoa deve estar imensa.

Para você saber em detalhes sobre os drivers da pasta DriverStore e apagar automaticamente os drivers antigos, eu sugiro o uso do ótimo DriverStoreExplorer (que deve ser executado como Administrador).

No exemplo abaixo existem 6 drivers de adaptadores de vídeo da NVIDIA, sendo que dois deles estão em uso, enquanto 4 outros são as versões antigas desses drivers, totalizando quase 2 GB:

Drivers do Windows | Remoção de drivers antigos

Se tudo está funcionando corretamente com o driver de vídeo atual e eu quiser remover esses 5 drivers antigos, basta selecioná-los e clicar em Delete Package, ou fazer isso automaticamente com todos os drivers instalados (driver de rede, som, etc) clicando em Select Old Drivers.

Essa opção permite selecionar automaticamente todos os drivers antigos, além de mostrar o total de espaço que eles ocupam. Para remover todos eles, basta clicar em Delete Package, e com isso você remove definitivamente esses drivers, recuperando um bom espaço em disco.

Backup de drivers

Poucos sabem, mas se você quiser fazer backup dos drivers de terceiros instalados no Windows, ou seja, todos os drivers que não fazem parte dos drivers nativos que já vem no Windows, você não precisa de nenhum aplicativo para isso, pois usando um simples comando do PowerShell, o Windows copia esses drivers para uma pasta.

Isso é recomendado quando o seu computador está funcionando perfeitamente com os drivers que você instalou manualmente, e você quer fazer um backup desses drivers.

Para fazer isso, abra uma janela do PowerShell Admin e execute este comando: Export-WindowsDriver -Online -Destination C:\BackupDrivers

Drivers do Windows | Backup de drivers

Esse comando exporta os drivers dos dispositivos listados no Gerenciador de Dispositivos (inclusive drivers antigos que estão na pasta DriverStore) para a pasta C:\backup-drivers

Fazendo isso, se algum dia você precisa reinstalar algum driver dali, basta informar o Windows que o local dos drivers está nessa pasta:

Drivers do Windows | Restauração de drivers

E se você quer fazer backup de todos os drivers (incluindo antigos e os que não estão em uso), eu sugiro o uso do DriverBackup! que é gratuito e não precisa ser instalado. Você precisa apenas executá-lo e clicar no botão Iniciar Backup:

Drivers do Windows | Backup de drivers com o DriverBackup!

Agora clique no botão Sfoglia para escolher aonde os backups serão salvos, e altere os dados da Descrição e Date format. Clique em OK e o backup será iniciado. No final cada driver estará em uma pasta única para fácil localização dele.

Drivers do Windows | Backup de drivers com o DriverBackup! 2

Como atualizar corretamente os drivers do seu computador?

Como atualizar corretamente os drivers do seu computador?

Se você leu a primeira parte desse artigo e compreendeu tudo que eu falei sobre drivers, você certamente já sabe o que fazer e principalmente o que NÃO fazer em relação à atualização deles.

Conhecendo os riscos envolvidos na atualização de drivers, aonde um novo driver normalmente corrige algum bug ou problema do driver anterior, vamos pensar de maneira racional e coerente:

Se você fosse um administrador de rede de uma empresa, sendo responsável pela estabilidade e funcionamento dos computadores e notebooks de 50 mil funcionários, você aceitaria que eles instalassem livremente qualquer driver desconhecido, seja fazendo isso manualmente ou através de algum atualizador de driver?

Obviamente NÃO, pois certamente a sua equipe de suporte teria muito mais problemas para resolver (problemas esses que não existiam antes da mudança de driver) sem ter na prática NENHUM benefício em troca disso. Esse raciocínio também vale para 100 mil computadores, 1 milhão de computadores ou um único computador.

Repetindo pela última vez: a atualização de um driver deve ser realizada somente quanto isso for REALMENTE necessário. E quando isso acontecer, a atualização deve idealmente seguir esse fluxograma:

fluxograma-instalacao-drivers.jpg

Se todos os periféricos do seu computador estão funcionando perfeitamente, sem nenhum problema, bug, travamento ou tela azul e você está satisfeito com ele, entenda que na prática você simplesmente NÃO PRECISA atualizar nenhum driver pois é desta maneira que o Windows permanece estável e rápido.

Se houver algum problema ou limitação de algum driver, o primeiro passo é executar o Windows Update para verificar se existe algum novo driver disponível. Se não houver, você deve procurar se existe um driver novo via Gerenciador de Dispositivos, e eu mostro como fazer isso no primeiro artigo.

E se não houver nenhum driver ali, daí você deve acessar o site do fabricante do periférico e baixar dali o driver mais recente. Se não houver nenhum driver novo no site do fabricante, isso normalmente indica que o driver que você está utilizando agora é o mais atual.

Nesse caso, eu sugiro você desinstalar totalmente o periférico, reiniciar o computador e reinstalá-lo com os drivers originais ou os drivers instalados pelo próprio Windows. Se o periférico continuar com problemas, daí você deve contatar o suporte do fabricante.

Evite ao máximo baixar drivers beta, drivers "modificados" ou "otimizados" que são anunciados em muitos fóruns e sites, pois esse é o primeiro passo para você começar a ter sérios problemas de estabilidade, confiabilidade e segurança no Windows.

Se você tem um periférico que não é reconhecido pelo Windows, o ideal é que você baixe o driver mais recente diretamente no site do fabricante do periférico, e se isso não for possível (quando por exemplo você não faz ideia de quem seja o fabricante), daí você deve utilizar um atualizador de driver. E assim que o periférico for detectado e o driver for instalado, você desinstala o programa de atualização de drivers pois ele não é mais necessário.

E se mesmo assim o periférico não foi reconhecido, eu sugiro você desinstalar totalmente o periférico, reiniciar o computador e reinstalá-lo com os drivers originais ou os drivers instalados pelo próprio Windows. Se o periférico depende de algum cabo, como USB, experimente também substituir o cabo. Se nada disso funcionar, daí eu sugiro você contatar o suporte do fabricante.

Um detalhe final é que muitos drivers desenvolvidos para o Windows 7 e 8.x também funcionam no Windows 10.

Bem, agora que você entende mais a fundo sobre drivers no Windows, você compreende porquê os computadores que dão mais problemas com Windows são justamente computadores de usuários que fuçam em tudo e que instalam qualquer porcaria de otimizador de PC e que instalam qualquer driver recente achando que o PC dele vai ficar milagrosamente mais rápido.

Se você deixar o Windows em paz, trabalhando da maneira como a Microsoft criou ele, sem instalar nenhuma tranqueira, otimizador, booster ou qualquer outra porcaria que promete melhorar o Windows, você verá que o Windows ficará mais rápido, estável e confiável.

Se você ainda duvida disso, faça o teste por uma semana removendo todos esses 171 digitais e você ficará bastante satisfeito com o resultado :)

[]s
 
Aurélio “Baboo”
assinatura-baboo-forum-2022.png

Link para o comentário
Compartilhar em outros sites


Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Quer postar a sua dúvida? Cadastre-se pois é rápido e fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...