ID do artigo: 250635 - Última revisão: segunda-feira, 12 de fevereiro de 2007 - Revisão: 1.3

Windows 98: Problemas de computador com suporte do USB Legacy

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Expandir tudo | Recolher tudo

Sintomas

Em um computador baseado no Windows 98, quando o suporte herdados a USB (Universal Serial Bus) é habilitado no sistema de entrada/saída básico (BIOS), seu computador pode não detectar dispositivos USB ou pode parar de responder (travar) ao iniciar ou desligar o computador.

Causa

Esse problema pode ocorrer se houver um conflito entre Windows e o BIOS que envolve o controlador host USB. Usa o BIOS SMI # para ler periodicamente o status do controlador para oferecer suporte USB legado. Durante a inicialização, após a enumeração de interconexão de componentes periféricos (PCI), controle de USB é alterada do BIOS para Windows. Às vezes, durante a enumeração do barramento PCI do Windows, o BIOS pode não obter um valor correto para o host controlador endereço de base, que resulta na incapacidade para transferir o controle do controlador USB para Windows.

Essa condição pode resultar nos dispositivos USB não funcionando, o computador pode travar durante a inicialização ou desligamento ou uma mensagem de Windows informando que o teclado PS/2 ou o mouse não pode ser encontrada (se o teclado ou mouse USB não for encontrado, software pode procurar por um teclado PS/2 ou mouse).

Resolução

Para resolver esse comportamento, fornecedores de BIOS podem desabilite suporte legado USB ou incluir um patch de solução alternativa.

Mais Informações

O comportamento é causado por falta de sincronização entre o Windows 98 e o BIOS durante a enumeração do barramento PCI. A especificação OpenHCI descreve um mecanismo de sincronização no qual o sistema operacional limpa o bit de acesso à memória (bit 1) no registrador de comando PCI antes de acessar o registro de endereço base (barra). O BIOS deve verificar se este bit; se estiver desmarcada, o código de BIOS SMM não deve acessar o controlador de host operacional registra. Infelizmente, alguns chipsets computador parar de funcionar corretamente quando esse bit estiver desmarcada. Para evitar esses comportamentos de conjunto de chips, Windows 98 não limpa esse bit durante a enumeração de PCI, que significa que o BIOS pode obter um endereço de controlador incorreta porque ela não detecta a enumeração. Enquanto o Windows 98 está executando essa enumeração PCI, Windows 98 grava um padrão de teste de FFFF_FFFFh para o endereço base registre do controlador USB e lê-lo novamente como FFFF_F000h para indicar que o tamanho do intervalo é 1000h bytes.

Se um SMI # é gerado pelo controlador de USB no momento, o manipulador de SMI BIOS não pode acessar o controlador USB porque o registro de endereço base é inválido. Esse evento assíncrono pode resultar em sinal SMI # sendo declarado indefinidamente; portanto, que o subseqüentes OpenHCI USB disponível-através do BIOS para o Windows não funciona. O Windows tenta detectar o teclado PS/2 e o mouse e o usuário pode receber uma mensagem de erro informando que o teclado PS/2 ou o mouse não foi detectado.

O BIOS pode contornar esse comportamento por ler o endereço base do controlador USB no manipulador de SMI e por salvar uma cópia de endereços válidos na memória SMM. Se o endereço base tem um padrão FFFF_F000h, que é o padrão de teste escrito por Windows durante a enumeração de PCI, o BIOS pode escrever o valor anterior válido para o endereço base registrar e continuar a manipulação de SMI; portanto, o controlador USB permanece acessível e SMI # está desmarcada corretamente. No final do manipulador de SMI, o BIOS pode restaurar o padrão de teste FFFF_F000h para o registro de endereço base para que o Windows pode continuar a enumeração de PCI.

Referências

Exiba o Windows 98 DDK para obter mais informações sobre suporte a dispositivos USB.

A informação contida neste artigo aplica-se a:
  • Microsoft Windows 98 Standard Edition
  • Microsoft Windows 98 Second Edition
  • Microsoft Windows 98 Driver Development Kit (DDK)
Palavras-chave: 
kbmt kberrmsg kbhardware kbprb kbusb KB250635 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 250635  (http://support.microsoft.com/kb/250635/en-us/ )