Pregunta

La especificación de BIOS Plug-and-Play dice que si tiene un BIOS PnP, puede configurar el hardware.

Esto significa que su BIOS lee los requisitos de recursos de todos los dispositivos y los configura (les asigna recursos de bus).

¿Tiene un PnP? siempre ¿Asignar recursos (es decir, asigna E/S o direcciones de memoria e irqs) a los dispositivos integrados/integrados en la placa base?

¿Habrá un BIOS PnP (es decir, la estructura $PnP está presente)? siempre asignar recursos (E/S y direcciones de memoria) a todos los dispositivos presentes en mobo (es decir, integrados/integrados en mobo) así como en tarjetas de expansión PCI.

Aunque es posible que el BIOS no sepa cómo "configurar" los dispositivos no integrados (es decir, dispositivos no integrados en el mobo), y solo configurará dispositivos integrados/integrados en el propio mobo, "debería" asignar direcciones (E/S y memoria) e irq para evitar conflictos en caso de que se vaya a utilizar un sistema operativo que no sea PnP como DOS.

Mi pregunta es:

¿Tiene un BIOS PnP? debe asigne las E/S, direcciones de memoria e irq a Dispositivos de tarjeta de expansión PCI durante la POST, es decir, antes de cargar y transferir el control al gestor de arranque del sistema operativo.¿Es cierto para todos los BIOS PnP?

Supongamos que la opción [SO Plug-and-Play] está configurada en No.es decir, le dijimos al BIOS que no tenemos un sistema operativo PnP, sino un sistema operativo que no es PnP como DOS.

Algunas BIOS no tienen esta opción.¿Asignan siempre recursos a todo ¿Dispositivos (es decir, tanto los integrados como los que están en ranuras de expansión)?

Actualización el 2012-08-01:

La sección 2.1 titulada 'Requisitos POST del BIOS del sistema' de la especificación v1a del BIOS PnP dice:

(Mencioné solo los 3 puntos que son relevantes para esta publicación.La información marcada (*) es mi interpretación de las declaraciones de la norma.)

Para lograr los objetivos de Plug and Play, la POST del BIOS del sistema es responsable para lograr los requisitos que se enumeran a continuación:

  1. configuración de todos 'estático' dispositivos conocido al BIOS del sistema:

    en un 'mínimo', este incluye dispositivos de la placa del sistema.Él 'poder' También incluye 'Tarjetas ISA Plug and Play' y dispositivos ubicados en EISA, ISA, PCI, o cualquiera de las otras arquitecturas de bus estático disponibles.

    *En efecto, la declaración anterior dice que los dispositivos están "incrustados/integrados" en la placa del sistema en cualquier bus estático (por ejemplo, PCI, ISA o EISA). 'debe' ser configurado por el BIOS, porque *BIOS conoce 'todo' de los dispositivos integrados en mobo, como parte de diseño.* El programador BIOS del sistema debe han incorporado las disposiciones para configurar los dispositivos integrados en mobo como parte del diseño del sistema.

    ¿Esto también incluye 'tarjetas instaladas en ranuras para tarjetas PCI/ISA/EISA'?

  2. BIOS POST Arbitraje de recursos:El BIOS del sistema ahora debe conocer el uso de recursos del sistema.Al utilizar la información proporcionada a través de los servicios de tiempo de ejecución (descritos en una sección posterior), junto con la información de recursos conocida por el BIOS del sistema, se pueden evitar conflictos de recursos críticos. "Cargar el sistema operativo con un dispositivo en conflicto deshabilitado es mejor que causar un conflicto de recursos y una posible falla del sistema".

    *Esto parece para dispositivos ISA/EISA incorporados/integrados en mobo o en ranuras para tarjetas de expansión ISA/EISA. Dado que los recursos de los dispositivos PCI no puede entrar en conflicto en términos de asignación de direcciones de E/S (o memoria) (porque las direcciones son no cableado para dispositivos PCI, y por lo tanto en el 'manos' de BIOS para asignar direcciones que no entren en conflicto.) y asignación irq (porque las interrupciones PCI se pueden compartir por diseño), por lo que esto significa que a 'todos' los dispositivos PCI (integrados o no integrados) se les inicializará/se les asignará memoria o direcciones de E/S y asignaciones de irq.

  3. Soporte para sistemas operativos Plug and Play y Non-Plug and Play:POST del BIOS del sistema Plug and Play 'debe' configure el sistema para que funcione tanto con sistemas operativos compatibles con Plug and Play como con sistemas operativos que no sean Plug and Play.* En entornos que no sean Plug and Play, 'cualquiera' el BIOS del sistema 'o' el software del sistema apropiado (controladores de dispositivos) "debe" configurar "todos" los dispositivos (tarjetas ISA Plug and Play, dispositivos PCI, etc.). Esto permitirá que todos los entornos "se carguen exactamente como lo harían en sistemas compatibles con una PC estándar". Sin embargo, en un entorno Plug and Play, el BIOS del sistema ahora puede ayudar al sistema operativo a realizar funciones como la configuración en tiempo de ejecución de los dispositivos de la placa del sistema y el reconocimiento de eventos cuando los dispositivos de la placa del sistema han cambiado.

*Todas estas 3 declaraciones de la especificación parecen indicar que si se va a iniciar un sistema operativo que no sea PnP (p. ej.DOS), entonces el BIOS del sistema 'debe' configurar (o asignar direcciones e irqs, al menos) 'todos' los dispositivos PCI, ya sean integrados en la placa base (mobo) o no.Para los dispositivos ISA y EISA, el BIOS "no debe" habilitar/asignar los recursos para esos dispositivos ISA/EISA (ya sean integrados o no), lo que resultará en asignaciones de recursos conflictivas.

¿Estoy en lo cierto al concluir de las declaraciones anteriores de la especificación. eso:"Si el BIOS debe arrancar un sistema operativo que no sea PnP, debe habilitarlo (es decir, habilitarlo, es decir, asignar recursos) 'cada' dispositivo PCI (ya sea integrado en mobo o en la ranura para tarjeta de expansión PCI) en el sistema para que estén disponibles para su uso por parte del sistema operativo y los programas de aplicación"?

Actualización el 2012-08-04:

Mira esto Capítulo 12 de Controladores de dispositivos Linux, 3.ª ed..El autor, en muchos lugares, se refiere explícitamente a que las direcciones de E/S o de memoria y las asignaciones de IRQ BIOS ya lo hará en el momento en que el kernel de Linux comience a ejecutarse, y el kernel de Linux puede adaptar la tarea según sus necesidades.

Podría ser otra referencia que mencione a qué estamos tratando de llegar.

¿Fue útil?

Solución

La opción "PnP OS" sólo es relevante para dispositivos ISA PnP, que prácticamente no existen hoy en día.Por eso ya no ves mucho la opción.Básicamente, no me importan las placas base sin ranuras ISA.Es posible que aún tenga cierta relevancia si puede configurar las direcciones base del puerto serie en "Auto".

El BIOS debería siempre configure las barras PCI y las asignaciones de INTx a IRQ.Debería hacer esto independientemente de la opción PnP OS.Esto incluye tanto los dispositivos PCI integrados (p. ej.Ethernet integrada) y tarjetas de ranura PCI/PCIe.Nunca he visto un BIOS (que funcione) en el que se pueda iniciar en DOS y tener BAR no configuradas.

Cuando el BIOS configura el espacio de configuración PCI, tendrá en cuenta la información ISA PnP.Por ejemplo, si sabe que un dispositivo ISA PnP está usando IRQ 9, las rutinas de inicio PCI deberían ser lo suficientemente inteligentes como para no asignar IRQ 9 a ninguna línea PCI INTx.

Además, tenga en cuenta que cuando se carga su sistema operativo, puede sobrescribir las asignaciones de BAR y IRQ.Windows normalmente vuelve a realizar las asignaciones de IRQ cuando activa APIC y ACPI.Por lo general, las BAR no se modifican, aunque puede haber casos especiales, como un evento PCIe Hotplug que requiere que el sistema operativo rellene la BAR.

Otros consejos

La opción "PnP OS" sólo es relevante para dispositivos ISA PnP, que prácticamente no existen hoy en día.- ¡FALSO!¡Esta opción tiene un gran impacto en la distribución de las interrupciones en el sistema operativo Windows!¡El experimento en sí para refutar la afirmación antes mencionada es muy simple!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top