バスマスタリング

フリー百科事典ウィキペディアより

コンピューティングでは、バス マスタリングは、バスに接続されたデバイスがダイレクト メモリ アクセス(DMA) トランザクションを開始できるようにする、多くのバス アーキテクチャでサポートされている機能です。システムDMA コントローラが実際に転送 を行うサードパーティ DMAとは対照的に、ファーストパーティ DMAとも呼ばれます。

一部のタイプのバスでは、1 つのデバイス (通常はCPUまたはそのプロキシ) のみがトランザクションを開始できます。PCIなどの最新のバス アーキテクチャのほとんどでは、汎用オペレーティング システムのパフォーマンスが大幅に向上するため、複数のデバイスをバス マスターにすることができます。一部のリアルタイム オペレーティング システムでは、ペリフェラルがバス マスターになることを禁止しています。これは、スケジューラがバスの調停を行うことができなくなり、確定的なレイテンシを提供できないためです。

バス マスタリングは、理論的には 1 つの周辺機器が別の周辺機器と直接通信できるようにしますが、実際にはほとんどすべての周辺機器がバスを排他的にマスタリングして、メイン メモリへの DMA を実行します。

複数のデバイスがバスをマスターできる場合、複数のデバイスが同時にバスを駆動しようとするのを防ぐために、バス アービトレーションスキームが必要です。これには、さまざまなスキームが使用されます。たとえば、SCSIには、SCSI ID ごとに固定の優先順位があります。PCI は使用するアルゴリズムを指定せず、優先度の設定は実装に任せます。

も参照

参考文献