Por que em cada nova versão do Windows todos os drivers são datados no mesmo dia 21/06/2006? A Microsoft alguma vez atualiza drivers ou eles eram apenas um monte de sapatos? Finalmente, aprendemos a resposta a essa pergunta em uma postagem no blog não oficial da Microsoft,
The Old New Thing .
Um dos desenvolvedores da Microsoft, sob o apelido
zac_l, explicou qual era o problema. A data sagrada em 21/06/2006 se estende até a drivers como Espaços de Armazenamento e processadores modernos que não existiam há dez anos, então não há dúvida da preguiça dos desenvolvedores aqui. O motivo é diferente.
Há uma razão muito importante para definir a data antiga, que nada tem a ver com a data real de lançamento do driver.
O fato é que o Windows executa o sistema
Plug and Play (PnP), que permite identificar rapidamente e configurar automaticamente os dispositivos no seu computador. Ele reconhece automaticamente a presença de um novo dispositivo e, em seguida, seleciona os drivers e os instala, para que tudo funcione normalmente sem instalação e configuração manual. Recursos alocados automaticamente, portas de entrada / saída, cartões de alocação de memória do dispositivo e muito mais.
Portanto, quando o sistema PnP no Windows executa uma classificação de driver, ele primeiro verifica o identificador de hardware do dispositivo e do driver. Se dois drivers tiverem o mesmo identificador, o sistema deverá selecionar um driver entre dois. Nesse caso, o principal fator é
a data do driver .
Imagine a situação em que as datas do arquivo são reais e correspondem à hora em que o arquivo foi criado. O que vai acontecer? Suponha que seu dispositivo possa usar um driver padrão do Windows, mas você instalou um driver especializado proprietário. Nessa situação, a cada nova atualização, o Windows lança um novo driver padrão do Windows em vez do driver proprietário, porque na nova versão do Windows, o driver terá uma data mais recente. Você precisará retornar manualmente os drivers normais de cada vez.
Para evitar esse conflito, uma decisão simples e eficaz foi tomada.
Todos os drivers em todas as versões do Windows recebem uma data padrão que corresponde à data de lançamento do Vista RTM . Essa data fixa é independente da versão do driver ou da data de criação do arquivo real. Ao mesmo tempo, o número da versão do driver é atualizado - este é o próximo fator a ser levado em consideração ao escolher um driver após a data de criação do arquivo.
Por padrão, o sistema PnP sempre seleciona drivers de dispositivo especializados e proprietários, se presentes. Caso contrário, o driver interno da Microsoft será instalado e é o driver da versão mais recente do sistema operacional. Ele terá o número de versão mais alto, embora a data seja a mesma dos drivers antigos da Microsoft.
Nas versões mais recentes do Windows, apenas drivers não mais antigos que o Vista são compatíveis. Drivers de Windows XP de terceiros geralmente não são compatíveis com eles, portanto, não há problemas com conflitos de datas.
Assim, o sistema PnP funciona sem problemas, embora a situação pareça um pouco ridícula. Até agora, todos os drivers estão instalados com a data 21/06/2006 e, portanto, continuará. O desenvolvedor Zack, da Microsoft, disse: "Este é um ótimo exemplo do que, à primeira vista, parece bobo e insignificante, mas, na realidade, tem um propósito profundo e sólido".
Como a sabedoria popular diz: “Se algo é estúpido, mas funciona, então não é estúpido” (ou ainda é estúpido, mas tivemos sorte).
Esse mecanismo de trabalho dificilmente pode ser chamado de programação perfeitamente competente, porque a data do arquivo é um atributo não destinado à comparação de drivers. Mas o sistema funciona de fato, então por que não? E de que outra forma resolver o problema com a atualização correta do driver? Se você tem alguma idéia sobre esse assunto, os programadores da Microsoft não encontraram uma opção mais simples e confiável. Quem sabe, talvez eles não pensassem muito no problema - e fixar a data foi para sempre o primeiro pensamento implementado imediatamente? Talvez o problema tenha sido resolvido por essa “correção” por desenvolvedores que não tinham autoridade para implementar um sistema mais competente, por exemplo, verificando o editor do driver (se o editor for a Microsoft, dê ao driver a menor prioridade).
É ruim que esse mecanismo de operação do PnP tenha permanecido mais uma função não documentada do Windows por muitos anos, e esse é um dos principais motivos pelos quais este sistema operacional com código-fonte fechado é criticado porque possui muitos recursos não documentados que não conhecemos.
Esse mecanismo de reconciliação de datas poderá funcionar ainda mais se novas versões do Windows virem luz. Você só precisa garantir que os drivers não indiquem acidentalmente uma data anterior a 21/06/2006, pois, nesse caso, o Windows lançará constantemente seu driver de uso geral em vez do driver da marca, independentemente da versão. Se houver alguma coisa, no Windows 10, há uma oportunidade de
desativar temporariamente as atualizações de driver para o Windows Update.