_FAST_IO_SECTION

Available since: Windows Packet Filter 3.2.20

The _FAST_IO_SECTION structure defines the memory layout of a shared-memory section mapped between the user-mode application and ndisrd.sys for ultra-low-latency packet transfer.

Declaration

typedef struct _FAST_IO_SECTION
{
    volatile FAST_IO_SECTION_HEADER fast_io_header;
    INTERMEDIATE_BUFFER            fast_io_packets[ANY_SIZE];
} FAST_IO_SECTION, *PFAST_IO_SECTION;

Members

fast_io_header
A volatile FAST_IO_SECTION_HEADER containing synchronization flags and section state.

fast_io_packets
Array of INTERMEDIATE_BUFFER structures sized to ANY_SIZE. The total number of packet slots is determined during section allocation and initialization.

Remarks

Shared-memory Fast I/O transfers packets through an array of packet slots, with a packet count and synchronization flags in the section header. A section can contain multiple packets, and applications can process them in batches. WOW64 mode (running a 32-bit application on 64-bit Windows) is not supported for Fast I/O. The native unsorted read/send APIs also reject WOW64. For batched processing from a WOW64 application, use the adapter-scoped ReadPackets, SendPacketsToAdapter, and SendPacketsToMstcp APIs, whose native wrappers translate the WOW64 layouts.

See Also

InitializeFastIo, AddSecondaryFastIo, _FAST_IO_SECTION_HEADER