Types of Devices
7-48
Figure 7-14 shows the buffer flow of a copying stacking driver. Notice that the
buffers that come down from the task side of the stream never actually move
to the device side of the stream. The two buffer pools remain independent.
This is important, since in a copying stacking device, the task-side buffers can
be a different size than the device-side buffers. Also, care is taken to preserve
the order of the buffers coming into the device, so the SIO_ISSUERECLAIM
streaming model can be supported
Figure 7-14. Copying Stacking Driver Flow
Current
Device
fromdevice queue
todevice queue
Underlying
Device
fromdevice queuetodevice queue
Input
Processing
incoming buffer queue
Output
Processing
Reclaim
Issue
outgoing buffer queue