Busmastering
# Busmastering

Busmastering, auch Bus-Mastering (englisch: bus mastering) bedeutet, dass der Prozessor eines Computersystems zeitweilig die Kontrolle über den Bus an eine Adapterkarte, den sogenannten Busmaster, abgibt. Dieser Busmaster adressiert in der Folge selbständig Speicher und I/O-Bereiche zum Zweck des Datentransfers. Der Busmaster operiert als eine Art Bridge bzw. wie eine eigenständige CPU. Während solch ein sekundärer Prozessor den peripheren Bus beherrscht, ist die CPU in der Lage, andere Arbeiten im System auszuführen, sofern die dafür nötigen Ressourcen im Zugriff sind. Meist ist der Bus zum Speicher hin noch teilweise nutzbar, es herrscht Time-Sharing. Dies macht sich insbesondere bei modernen Multitasking-Betriebssystemen durchaus positiv in der Reaktionsfähigkeit bemerkbar, wobei die Busmaster-Aktivität oftmals über ein Interrupt-Signal mit dem Betriebssystem verkoppelt ist. Die Adapterkarte hat dabei den Sinn, bestimmte Aufgaben asynchron zu anderen Tasks zu bedienen.

Es gibt zum Beispiel PCI-Busmaster als auch AGP-Busmaster. Typische Vertreter sind Netzwerkadapter, Festplattencontroller, Soundkarten, Video-Framegrabber und Grafikkarten, die eine Busmaster-Fähigkeit aufweisen können. Die Datentransfers finden dabei sowohl zwischen Karte und Hauptspeicher, aber auch zwischen Karte und Karte statt. Eher exotische Vertreter sind Crypto-Hardware oder Co-Prozessoren, sogenannte Transputer-Boards.

Der Zustand, den die CPU bei DMA-Transfers einnimmt, ist weitgehend vergleichbar mit dem eines Busmasters, so dass man auch häufig, wenn auch eher irreführend, von DMA-Busmaster-Transfer spricht.

