Поделиться через


Транзакции ввода-вывода SerCx2

SerCx2 упрощает обработку запросов на чтение (IRP_MJ_READ) и запись (IRP_MJ_WRITE) для драйвера последовательного контроллера. В ответ на запрос на чтение или запись SerCx2 выдает одну или несколько транзакций ввода-вывода драйверу последовательного контроллера. С точки зрения драйвера каждая транзакция является простой и полной операцией ввода-вывода.

В этом разделе

Раздел Описание

Обзор транзакций ввода-вывода SerCx2

SerCx2 обрабатывает запрос на чтение или запись от клиента, выдавая одну или несколько транзакций ввода-вывода драйверу последовательного контроллера. Этот драйвер рассматривает каждую транзакцию как автономную операцию ввода-вывода, которая передает данные между последовательным контроллером и буфером данных в запросе.

Транзакции PIO-Receive SerCx2

SerCx2 требует, чтобы все драйверы последовательного контроллера реализовали поддержку транзакций приема, использующих программные операции ввода-вывода (PIO). Чтобы запустить транзакцию получения персональных данных, SerCx2 вызывает функцию обратного вызова события EvtSerCx2PioReceiveReadBuffer драйвера и предоставляет буфер чтения в качестве параметра.

Транзакции PIO-Transmit SerCx2

SerCx2 требует, чтобы все драйверы последовательного контроллера реализовали поддержку транзакций передачи, использующих программный ввод-вывод (PIO). Чтобы запустить транзакцию передачи персональных данных, SerCx2 вызывает функцию обратного вызова события EvtSerCx2PioTransmitWriteBuffer драйвера и предоставляет буфер записи в качестве параметра.

SerCx2 System-DMA-Receive Transactions

Некоторые драйверы последовательного контроллера реализуют поддержку транзакций приема, использующих системный контроллер DMA. Такая поддержка необязательна, но может повысить производительность, избавляя main обработчика от необходимости использовать программные операции ввода-вывода (PIO) для длительной передачи данных.

SerCx2 System-DMA-Transmit Transactions

Некоторые драйверы последовательного контроллера реализуют поддержку транзакций передачи, использующих системный контроллер DMA. Такая поддержка необязательна, но может повысить производительность, избавляя main обработчика от необходимости использовать программные операции ввода-вывода (PIO) для длительной передачи данных.

Транзакции Custom-Receive SerCx2

Некоторые устройства последовательного контроллера могут реализовать механизм передачи данных, отличный от PIO или системного DMA, для чтения данных из последовательного контроллера. Драйвер последовательного контроллера может поддерживать пользовательские транзакции приема, чтобы сделать этот механизм передачи данных доступным для использования SerCx2.

Транзакции Custom-Transmit SerCx2

Некоторые устройства последовательного контроллера могут реализовать механизм передачи данных, отличный от PIO или системного DMA, для записи данных в последовательный контроллер. Драйвер последовательного контроллера может поддерживать пользовательские транзакции передачи, чтобы сделать этот механизм передачи данных доступным для использования SerCx2.