1

プラグ アンド プレイ BIOS 仕様によると、PnP BIOS を使用している場合、ハードウェアを構成できます。

これは、BIOS がすべてのデバイスのリソース要件を読み取り、それらを構成する (それらにバス リソースを割り当てる) ことを意味します。

PnP は、マザーボードに組み込まれている/統合されているデバイスに常にリソースを割り当てます (つまり、I/O またはメモリ アドレスと irq を割り当てます)?

PnP BIOS (つまり、$PnP 構造が存在する) は、mobo (つまり、mobo に組み込まれている/統合されている)およびPCI 拡張カードに存在するすべてのデバイスに常にリソース (I/O およびメモリ アドレス) を割り当てます。

BIOS は非組み込みデバイス (つまり、mobo に組み込まれていないデバイス) を「構成」する方法を知らない可能性があり、mobo 自体に組み込まれている/統合されているデバイスのみを構成しますが、アドレス (I/O およびメモリ) を割り当てる必要があります。 DOS のような非 PnP OS を使用する場合の競合を避けるための irq。

私の質問は:

PnP BIOS は、POST 中、つまり OS ブートローダーに制御をロードして転送する前に、I/O、メモリ アドレス、および irq をPCI 拡張カード デバイスに割り当てる必要がありますか? すべての PnP BIOS に当てはまりますか?

[プラグアンドプレイ OS] オプションが [いいえ] に設定されているとします。つまり、PnP OS はなく、DOS のような非 PnP OS があることを BIOS に伝えました。

一部の BIOS には、このオプションがありません。リソースは常にすべてのデバイス (つまり、組み込みデバイスと拡張スロット上のデバイスの両方) に割り当てられますか?

2012 年 8 月 1 日の更新:

PnP BIOS 仕様 v1a の「システム BIOS POST 要件」というタイトルのセクション 2.1 には、次のように記載されています。

(この投稿に関連する 3 つのポイントのみを説明しました。(*) でマークされた情報は、標準のステートメントの私の解釈です。)

プラグ アンド プレイの目標を達成するために、システム BIOS POST は、以下に示す要件を達成する責任があります。

  1. システム BIOS に認識さているすべての「静的」デバイスの構成:

    最低限」、これにはシステム ボード デバイスが含まれます。また、「プラグ アンド プレイ ISA カード」、EISA、ISA、PCI、または利用可能なその他のスタティック バス アーキテクチャのいずれかにあるデバイスも「含めることができます」 。

    *事実上、上記のステートメントは、任意の静的バス (PCI、ISA、または EISA など) 上のシステム ボードに「組み込まれている/統合されている」デバイスは、BIOS によって「構成されなければならない」ということを示しています。 * システム BIOS プログラマーは、 moboに組み込まれたデバイスをシステム設計の一部として構成するための規定を組み込んでいる必要があります。

    これには、「PCI/ISA/EISA カード スロットに取り付けられたカード」も含まれますか?

  2. BIOS POST リソース アービトレーション: システム BIOS は、システム リソースの使用状況を認識する必要があります。ランタイム サービス (後のセクションで説明) を通じて提供される情報と、システム BIOS が認識しているリソース情報を使用することで、重大なリソースの競合を回避できます。「競合するデバイスを無効にしてオペレーティング システムをロードする方が、リソースの競合やシステム障害の可能性を引き起こすよりはましです。」

    *これは、mobo または ISA/EISA 拡張カード スロットに組み込まれている/統合されている ISA/EISA デバイスのようです。 PCI デバイスのリソースは、I/O (またはメモリ) アドレス割り当ての両方に関して競合することはできないため(アドレスはPCI デバイス用に配線されていないため、競合しないアドレスを割り当てるために BIOS の「手」にかかっているため)。および irq 割り当て (becoz PCI 割り込みは設計により共有可能です。)、したがって、これは、「すべての」PCI デバイス (組み込みまたは非組み込み) が初期化/割り当てられたメモリまたは I/O アドレスと irq 割り当てであることを意味します。

  3. プラグ アンド プレイおよび非プラグ アンド プレイ オペレーティング システムの両方のサポート: プラグ アンド プレイ システムの BIOS POSTは、「両方」のプラグ アンド プレイ対応および「非プラグ アンド プレイ」オペレーティング システムで動作するようにシステムを構成する必要があります。 system.* 非プラグ アンド プレイ環境では、システム BIOS 」または適切なシステム ソフトウェア (デバイス ドライバ) の「いずれか」が「すべての」デバイス (プラグ アンド プレイ ISA カード、PCI デバイスなど) を構成する必要があります。これにより、すべての環境が「標準の PC 互換システムとまったく同じようにロード」できるようになります。ただし、プラグ アンド プレイ環境では、システム BIOS はオペレーティング システムを支援して、システム ボード デバイスのランタイム構成や、システム ボード デバイスが変更されたときのイベント認識などの機能を実行できるようになりました。

*仕様のこれら 3 つのステートメントはすべて、非 PnP OS (DOS など) を起動する場合、システム BIOS が「すべて」を構成する (または、少なくともアドレスと irq を割り当てる) 必要があることを示しているようです。マザーボード (mobo) に組み込まれている/統合されているかどうかにかかわらず、PCI デバイス。ISA および EISA デバイスの場合、BIOS はこれらの ISA/EISA デバイス (組み込みまたは非組み込みにかかわらず) のリソースを有効化/割り当ててはなりません。これにより、競合するリソース割り当てが発生します。

仕様の上記のステートメントから結論を下すのは正しいですか。つまり、「BIOS が非 PnP OS を起動する必要がある場合は、システム内の「すべての」PCI デバイス (mobo または PCI 拡張カードスロットに埋め込まれているかどうか) を有効にして (つまり、リソースを割り当てて) 、それらが利用できるようにする必要があります。 OSおよびアプリケーションプログラムで使用するために」?

2012 年 8 月 4 日の更新:

Linux Device Drivers 3rd ed の第 12 章をご覧ください。. 著者は、多くの箇所で、I/O またはメモリ アドレスと IRQ の割り当ては、Linux カーネルが実行を開始する時点で BIOS によって既に行われていることを明示的に言及しており、Linux カーネルは必要に応じて割り当てを調整する場合があります。

私たちが到達しようとしていることについて言及している別のリファレンスかもしれません。

4

2 に答える 2

4

「PnP OS」オプションは、最近ではほとんど存在しない ISA PnP デバイスにのみ関連します。そのため、このオプションはあまり見られなくなりました。基本的に、ISA スロットのないマザーボードでは気にしません。シリアルポートのベースアドレスを「自動」に設定できる場合は、まだ関連性があるかもしれません。

BIOS は常にPCI BAR と INTx から IRQ へのマッピングを構成する必要があります。PnP OS オプションに関係なく、これを行う必要があります。これには、オンボード PCI デバイス (統合イーサネットなど) と PCI/PCIe スロット ボードの両方が含まれます。DOS で起動でき、構成されていない BAR を持つ (動作する) BIOS を見たことがありません。

BIOS が PCI 構成スペースをセットアップするとき、ISA PnP 情報が考慮されます。たとえば、ISA PnP デバイスが IRQ 9 を使用していることを認識している場合、PCI 初期化ルーチンは、IRQ 9 を PCI INTx ラインにマップしないように十分にスマートにする必要があります。

また、オペレーティング システムのロード時に、BAR と IRQ マッピングを自由に上書きできることに注意してください。Windows は通常、APIC と ACPI をアクティブ化するときに IRQ マッピングを再実行します。BAR は通常は変更されませんが、OS が BAR に入力する必要がある PCIe ホットプラグ イベントなどの特殊なケースが発生する可能性があります。

于 2012-07-31T15:06:13.420 に答える
-1

「PnP OS」オプションは、最近ではほとんど存在しない ISA PnP デバイスにのみ関連します。- 間違い!このオプションは、Windows OS での割り込みの分散に大きな影響を与えます! 上記のステートメントを反証するための実験自体は非常に簡単です!

于 2015-03-23T16:30:53.617 に答える