Pergunta

Plug-and-Play BIOS especificação diz que se você tiver um BIOS PnP, pode configurar o hardware.

Isso significa que o BIOS lê os requisitos de recursos de todos os dispositivos e configura-los (aloca ônibus-recursos a eles).

Não PnP sempre alocar recursos(ou seja, atribui memória ou e/S e endereços de irq, interrupt request) para dispositivos embarcados/integrado na placa-mãe?

Será um BIOS PnP(ie $PnP estrutura está presente), sempre atribuir recursos(e/S e endereços de memória) para todos os dispositivos presentes na mobo(ou seja incorporado/integrado na mobo) bem como em placas de expansão PCI.

Embora o BIOS pode não saber como 'configurar' não-dispositivos embarcados(ou seja, dispositivos que não incorporados na mobo), e só vai configurar dispositivos embarcados/integrado na mobo si, ele 'deve' atribuir endereços de I/O e memória) e o irq para evitar conflitos no caso de um não-PnP, como o DOS é para ser usado.

A minha pergunta é:

Faz um BIOS PnP deve atribuir o I/O, memória de irq e endereços de e para Placa de expansão PCI, dispositivos de durante o POST, ou seja, antes do carregamento e transferência de controle para OS bootlader ?É verdade para todos os PnP Bios ?

Suponha [Plug-and-Play OS] opção é definida para Nenhum.ou seja, Nós disse o BIOS que não temos um PnP, mas uma não-PnP, como o DOS.

Alguns BIOSes não tem essa opção.Eles sempre alocar recursos para todos dispositivos(ou seja, ambos incorporados aqueles e aquelas em slots de expansão)?

Atualização em 2012-08-01 :

A seção 2.1 intitulado "BIOS do Sistema de PÓS Exigências" da BIOS PnP spec v1a diz:

(Eu mencionei apenas os 3 pontos que são relevantes para este post.O (*) marcado info meu interpretação da norma de instruções.)

A fim de alcançar os objetivos de Plug and Play, o sistema do POST da BIOS é responsável para atingir os requisitos listados abaixo:

  1. Configuração de todos os 'estático' dispositivos conhecido a BIOS do sistema:

    Em um 'mínimo', este inclui dispositivos na placa de sistema.Ele 'pode' também incluem 'Plug and Play ISA Cartões' e dispositivos localizados no EISA, ISA, PCI, ou qualquer um dos outros estático arquiteturas de barramento disponível.

    *Em vigor, a instrução acima diz, dispositivos embarcados/integrado na placa de sistema em qualquer estático de ônibus (ou seja, PCI, ISA ou EISA).) 'deve' ser configurados pelo BIOS, becoz *BIOS sabe sobre 'todos' os dispositivos que são incorporados na mobo, como um projeto a parte.* O BIOS do sistema programador deve incorporaram as disposições para configurar os dispositivos incorporados na mobo como um sistema de design faz parte.

    Isso também incluem, "cartões instalado na PCI/ISA/EISA slots de cartão' ?

  2. POST da BIOS de arbitragem de Recurso:O BIOS do sistema deve agora estar ciente de uso de recursos de sistema.Utilizando a informação fornecida através de serviços de tempo de execução (descritos em uma seção posterior), juntamente com informações de recurso conhecido para o BIOS do sistema, crítica conflitos de recursos podem ser evitados. 'A carregar o sistema operacional com um dispositivo em conflito deficiência é melhor do que causando um conflito de recursos e de uma possível falha do sistema.'

    *Esta parece para o ISA/EISA dispositivos embarcados/integrado na mobo ou no ISA/EISA ranhuras da placa de expansão. Desde dispositivos PCI recursos não pode conflito tanto em termos de I/O( ou memória) alocação de endereços(becoz os endereços são não se programado para dispositivos PCI, e, por conseguinte, no 'mãos' do BIOS para atribuir não-conflitante endereços.) e o irq de alocação(becoz interrupções PCI são partilháveis por design.), então, isso significa que "todos" os dispositivos PCI(incorporada ou não incorporada)será inicializado/alocação de memória ou e/S e endereços de irq assigmnments.

  3. Suporte para Plug and Play e Não-Plug and Play Sistemas Operacionais:O sistema Plug and Play BIOS POST 'deve' configurar o sistema para operar com 'ambos' Plug and Play aware, 'bem como' não-Plug and Play do sistema operacional.* Em não-Plug and Play ambientes, 'qualquer um' o BIOS do sistema 'ou' o sistema apropriado de software (device drivers) 'deve' configurar 'todos' (dispositivos Plug and Play Placas ISA, PCI, dispositivos, etc.). Isto irá permitir que todos os ambientes de "carregar exatamente como fariam em um PC padrão de sistemas compatíveis'. No entanto, em um Plug and Play ambiente, o BIOS do sistema pode auxiliar o sistema operacional para executar funções tais como tempo de execução de configuração da placa de sistema e dispositivos de evento de reconhecimento quando a placa de sistema dispositivos foram alterados.

*Todos estes 3 instruções de especificação, parece a ponto de que se um não-PnP é para ser inicializado(e.g.DOS), o BIOS do sistema "deve" configurar( ou, alocar endereços e irq, pelo menos) para "todos" os dispositivos PCI, se incorporados/integrado na placa-mãe(mobo) ou não.Para o ISA e EISA dispositivos, BIOS "deve" não habilitar/alocar os recursos para aqueles ISA/EISA dispositivos(seja incorporada ou não incorporada) que vai originar conflitos de atribuições de recursos.

Estou certo em concluir a partir de afirmações acima da especificação. que:"Se o BIOS de inicialização deve ser um não-PnP, ele deve habilitar (por exemplo, habilitar ie alocar recursos) 'cada um' dispositivo PCI(se incorporados na mobo ou no PCI slot para placa de expansão) no sistema, para que eles estejam disponíveis para uso pelo sistema operacional e programas de aplicação"?

Atualização em 2012-08-04 :

Ter um olhar para o capítulo 12 de Linux Device Drivers 3ª ed..O autor, em muitos lugares, refere-se explicitamente que memória ou e/S e endereços de IRQ atribuições estão já a ser feito pela bios no momento do kernel do linux começa a executar, e o kernel linux pode personalizar a atribuição de acordo com as suas necessidades.

Pode ser outra referência que menciona o que estamos tentando alcançar.

Foi útil?

Solução

O "PnP" opção somente é relevante para dispositivos PnP, que são praticamente inexistentes nos dias de hoje.É por isso que você não ver a opção, muito mais.É basicamente um não me importo em placas-mãe sem slots ISA.Pode ainda ter alguma relevância se você pode configurar a porta serial da base de dados de endereços para "Auto".

O BIOS deve sempre configurar o PCI Bares e INTx-para-IRQ mapeamentos.Ele deve fazer isso, independentemente do PnP opção de sistema operacional.Isso inclui tanto a bordo de dispositivos PCI (por exemplo,Ethernet integrada) e o PCI/PCIe slot de placas.Eu nunca tenha visto uma (de trabalho), BIOS, onde você pode inicializar o ms-DOS e não-configurado Bares.

Quando o BIOS é a configuração de espaço de configuração PCI, vai demorar ISA PnP informações para a conta.Por exemplo, se ele sabe de um ISA PnP dispositivo está a utilizar o IRQ 9, o PCI rotinas de inicialização deve ser inteligente o suficiente para não mapa de IRQ 9 para qualquer PCI INTx linhas.

Além disso, mantenha em mente que quando o seu sistema operacional é carregado, ele é livre para substituir as Barras de IRQ e mapeamentos.Normalmente, o Windows re-faz IRQ mapeamentos quando ele ativa a APIC e ACPI.Bares não são, normalmente, alterado, embora possa haver casos especiais, como um PCIe evento Hotplug que requer o sistema operacional para preencher a BARRA.

Outras dicas

O "PnP" opção somente é relevante para dispositivos PnP, que são praticamente inexistentes nos dias de hoje.- FALSO!Esta opção tem um grande impacto para a distribuição das interrupções no sistema operacional Windows!O experimento em si, para refutar referida declaração é muito simples!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top