Механизмы передачи данных
При всем многообразии компьютерной техники, существует три основных механизма, используя которые устройство может обмениваться с центральным процессором или, в широком смысле, с компьютером:
При выборе разработчиком аппаратуры механизма передачи данных, используемого для связи с устройством, следует исходить из скорости, с которой требуется передавать данные, и средним размером передаваемого непрерывного блока данных.
Драйверы для работы с устройствами, поддерживающими программируемый ввод/вывод, сильно отличаются от драйверов, реализующих методы DMA передачи данных. Некоторые устройства поддерживают оба механизма ввода/вывода. В случае DMA устройств, следует выяснить, требуется реализация DMA механизма, в котором устройство выступает в роли 'bus master', или механизма, когда устройство выполняет действия по сценарию 'bus slave'. Следует определить, имеются ли ограничения на интервал адресов физического буфера памяти, который может быть задействован при этих операциях.