Método IDmaChannelSlave::Start (portcls.h)
El método Start inicia un objeto DMA subordinado.
Sintaxis
NTSTATUS Start(
ULONG MapSize,
BOOLEAN WriteToDevice
);
Parámetros
MapSize
Especifica el número de bytes del búfer asignado que se va a asignar. El tamaño del mapa no debe superar el tamaño del búfer asignado en la llamada a IDmaChannel::AllocateBuffer.
WriteToDevice
Especifica la dirección del movimiento de datos. Si es TRUE, los datos se van a mover del búfer al dispositivo. Si es FALSE, los datos se van a mover del dispositivo al búfer.
Valor devuelto
Este método devuelve NTSTATUS. Devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, el método devuelve un código de error adecuado. Si el autor de la llamada intenta iniciar un canal que ya se ha iniciado, el método devuelve inmediatamente con código de error STATUS_UNSUCCESSFUL.
Comentarios
Nota
Microsoft admite un entorno diverso e inclusivo. Este artículo contiene referencias a la terminología que la guía de estilo de Microsoft para la comunicación sin sesgo reconoce como excluyente. La palabra o frase se usa en este artículo para la coherencia porque actualmente aparece en el software. Cuando el software se actualice para quitar el idioma, este artículo se actualizará para que esté en alineación.
El método configura primero los registros de mapa para asignar los primeros bytes MapSize del búfer asignado para el objeto de adaptador. A continuación, el método inicia una transferencia DMA del número de bytes especificado en MapSize.
Para obtener más información sobre este método, vea IDmaChannel::BufferSize e IDmaChannelSlave::ReadCounter.
Requisitos
Requisito | Valor |
---|---|
Header | portcls.h |
IRQL | PASSIVE_LEVEL |