estructura KS_FRAMING_ITEM (ks.h)
La estructura de KS_FRAMING_ITEM se usa para declarar los requisitos de asignador en un pin en modo kernel.
Sintaxis
typedef struct {
GUID MemoryType;
GUID BusType;
ULONG MemoryFlags;
ULONG BusFlags;
ULONG Flags;
ULONG Frames;
union {
ULONG FileAlignment;
LONG FramePitch;
};
ULONG MemoryTypeWeight;
KS_FRAMING_RANGE PhysicalRange;
KS_FRAMING_RANGE_WEIGHTED FramingRange;
} KS_FRAMING_ITEM, *PKS_FRAMING_ITEM;
Miembros
MemoryType
Especifica el tipo de memoria que se usa para los búferes y los marcos de datos. Hay una correspondencia parcial entre este miembro y el miembro PoolType en la estructura KSALLOCATOR_FRAMING . Los dos miembros difieren en que PoolType solo permite el grupo paginado o no paginado. MemoryType puede tener cualquiera de los valores enumerados en la tabla siguiente.
Valor | Descripción |
---|---|
KSMEMORY_TYPE_WILDCARD/KSMEMORY_TYPE_DONT_CARE/KSTYPE_DONT_CARE | Indica que la asignación de memoria puede ser cualquier tipo de memoria. |
KSMEMORY_TYPE_SYSTEM | Indica que la asignación de memoria debe ser memoria del sistema. |
KSMEMORY_TYPE_USER | Indica que la asignación de memoria debe ser memoria en modo de usuario. |
KSMEMORY_TYPE_KERNEL_PAGED | Indica que la asignación de memoria debe ser memoria paginada por kernel. Esto corresponde al miembro PoolType de la estructura KSALLOCATOR_FRAMING establecida en PagedPool y el miembro RequirementsFlags de esta estructura establecido en SYSTEM_MEMORY. |
KSMEMORY_TYPE_KERNEL_NONPAGED | Indica que la asignación de memoria debe ser memoria no paginada del kernel. Esto corresponde al miembro PoolType de la estructura KSALLOCATOR_FRAMING establecida en NonPagedPool y el miembro RequirementsFlags de esta estructura establecido en SYSTEM_MEMORY. |
KSMEMORY_TYPE_DEVICE_UNKNOWN | Indica que no se especifica el tipo de asignación de memoria del dispositivo. |
BusType
Especifica el bus físico que accede a la memoria física especificada por MemoryType. Use este campo para determinar un tipo de memoria compatible basado en el bus que se usa para el medio de conexión. Esta distinción es fundamental cuando un pin expone diferentes tipos de memoria en función del medio de conexión. BusType puede tener cualquiera de los valores enumerados en la tabla siguiente.
Tipo | Descripción |
---|---|
GUID_BUS_TYPE_PCI | Bus de interconexión de componente periférico. |
GUID_BUS_TYPE_USB | Bus serie universal. |
GUID_BUS_TYPE_1394 | Bus serie IEEE 1394. |
GUID_BUS_TYPE_AVC | Bus de control de audio y vídeo. |
GUID_61883_CLASS | Bus de protocolo 61883. |
MemoryFlags
Especifica que el punto de conexión es responsable de la asignación de fotogramas. Debe establecerse en KSALLOCATOR_REQUIREMENTF_MUST_ALLOCATE.
BusFlags
No se usa.
Flags
De forma similar a la unión OptionsFlags y RequirementsFlags en la estructura KSALLOCATOR_FRAMING , con la adición de las marcas que agregan compatibilidad con las tuberías.
Frames
Especifica el número total de fotogramas pendientes permitidos. Corresponde al miembro Frames de la estructura KSALLOCATOR_FRAMING .
FileAlignment
Requisito para la alineación del marco. Corresponde al miembro FileAlignment de la estructura KSALLOCATOR_FRAMING .
FramePitch
Define el miembro LONGFramePitch.
MemoryTypeWeight
Valor de tipo ULONG que especifica el peso de ancho de patillas de este tipo de memoria.
PhysicalRange
Estructura de tipo KS_FRAMING_RANGE que especifica el límite físico de tamaños de marco.
FramingRange
Estructura de tipo KS_FRAMING_RANGE_WEIGHTED que especifica el intervalo óptimo de tamaños de marco.
Comentarios
No establezca KSALLOCATOR_FLAG_CAN_ALLOCATE para indicar la funcionalidad de direccionamiento de memoria. Es posible que un filtro pueda acceder a la memoria específica del dispositivo a través de un bus específico del dispositivo haciendo referencia a la dirección de memoria de este bus y, sin embargo, no admite el protocolo para asignar esta memoria específica del dispositivo.
Cada instancia de KSALLOCATOR_FRAMING_EX contiene uno o varios elementos de trama.
Requisitos
Requisito | Valor |
---|---|
Header | ks.h (incluya Ks.h) |