Bus mastering

En informática, bus mastering es una característica soportada por muchas arquitecturas de bus que permite a un dispositivo conectado al bus iniciar operaciones de acceso directo a memoria (DMA).

Algunos sistemas operativos de tiempo real prohíben que los periféricos se conviertan en bus master, porque el planificador ya no puede arbitrar para el bus y, por tanto, no puede proporcionar determinadas latencias.

Mientras que bus mastering en teoría permite que un dispositivo periférico pueda comunicarse directamente con otro, en la práctica casi todos los periféricos dominan el bus exclusivamente para ejecutar DMA a la memoria.

Si múltiples dispositivos están habilitados para controlar el bus, tiene que haber un sistema de arbitraje para evitar que múltiples dispositivos intenten manejar el bus de manera simultánea.

Por otra parte PCI no especificó el algoritmo a utilizar, dejando que cada implementación establezca sus propias prioridades.