Bus mastering

A HupWiki-ből...

A bus mastering egy jellemzője néhány busz architektúrának, mely lehetővé teszi, hogy egy a buszon elhelyezkedő vezérlő kommunikálni tudjon egy másik a buszon lévő eszközzel a nélkül, hogy ezzel a CPU-t terhelné. A legtöbb modern busz architektúra támogatja a bus masteringet, mert az jelentősen növeli a teljesítményt.

A bus master egy eszköz, mely a címbuszt és a buszvezérlő jeleket kezeli. Egy egyszerű architektúrában csak a CPU lehet bus master, ezért minden be- és kimeneti egység közti kommunikációba bevonásra kerül a CPU. A kifinomultabb alaplap architektúrák lehetővé teszik más arra képes eszközök (vagy több CPU) számára, hogy felváltva vezéreljék a buszt. Ez példaképpen lehetővé teszi egy hálózati kártya számára, hogy hozzáférjen egy lemezvezérlőhöz, amíg a CPU más feladatokkal van elfoglalva, melyek nem igénylik a buszt, például a gyorsítótárából dolgozik.

A DMA, azaz közvetlen memória hozzáférés egy egyszerű fajtája a bus masteringnek, ahol a CPU beállítja a be- és kiviteli eszközt, hogy az közvetlen olvasson, vagy írjon egy vagy több memóriablokkot, és jelezze a CPU felé, ha végzett. A teljes bus mastering magába foglalja, hogy a be- és kimeneti eszköz alkalmas összetettebb műveletsorozatok elvégzésére is a CPU beavatkozása nélkül. Ez általában azt jelenti, hogy a be- és kimeneti eszköz rendelkezik saját processzorral vagy mikrovezérlővel. Bármely eszköz tud a buszra adatot tenni, amíg a CPU olvas az eszközről, de csak a bus master irányítja a címbuszt és a vezérlő jeleket.