KSALLOCATOR_FRAMING-Struktur (ks.h)
Die KSALLOCATOR_FRAMING-Struktur wird verwendet, um Rahmenanforderungen abzufragen und Anforderungen zur Erstellung von Zuordnungen zu übermitteln.
Syntax
typedef struct {
union {
ULONG OptionsFlags;
ULONG RequirementsFlags;
};
#if ...
POOL_TYPE PoolType;
#else
ULONG PoolType;
#endif
ULONG Frames;
ULONG FrameSize;
union {
ULONG FileAlignment;
LONG FramePitch;
};
ULONG Reserved;
} KSALLOCATOR_FRAMING, *PKSALLOCATOR_FRAMING;
Member
OptionsFlags
Gibt die Zuweisungsoptionsflags an, die während der Erstellung der Zuordnung für den Verbindungspunkt angegeben wurden. Der OptionsFlags-Member kann einen der folgenden Werte enthalten.
OptionsFlags | BESCHREIBUNG |
---|---|
KSALLOCATOR_OPTIONF_COMPATIBLE | Gibt an, dass die Rahmenoptionen des zu erstellenden Zuteilungselements mit dem nachgeschalteten Zuordnungselement kompatibel sind. Diese Option wird in der Regel angegeben, wenn einem direkten Modifizierer ein Zuteilungsgeber für Kopierpuffer zugewiesen wird. Wenn der Filter nicht erforderlich ist, um einen bestimmten Frame zu ändern, kann er den Frame an den Downstreamfilter übermitteln, ohne einen zusätzlichen Frame aus dem nachgeschalteten Zuteilungsgeber zuzuweisen, wenn diese Option angegeben ist. |
KSALLOCATOR_OPTIONF_SYSTEM_MEMORY | Gibt an, dass der Systemspeicher für Zuordnungen verwendet werden soll. Bei Angabe muss der Zuweisungsator Arbeitsspeicher aus dem Pool zuordnen, wie im PoolType-Element angegeben. Andernfalls wird davon ausgegangen, dass die Senke eine Systemadressenzuordnung zum onboard-RAM oder anderen Speicherformen auf dem Gerät bereitstellt. |
RequirementsFlags
Ein Wert vom Typ ULONG, der die Zuordnungsanforderungen für diesen Verbindungspunkt für Abfragevorgänge beschreibt. Der RequirementsFlags-Member kann die folgenden Werte enthalten.
Flagwert | BESCHREIBUNG |
---|---|
KSALLOCATOR_REQUIREMENTF_INPLACE_MODIFIER | Gibt an, dass der Verbindungspunkt eine direkte Änderung durchführen kann. |
KSALLOCATOR_REQUIREMENTF_SYSTEM_MEMORY | Gibt an, dass für den Verbindungspunkt Systemspeicher für Zuordnungen erforderlich ist. Wenn diese Option nicht festgelegt ist, wird davon ausgegangen, dass die Senke eine Systemadressraumzuordnung zum onboard-RAM oder anderen Speicherformen auf dem Gerät bereitstellt. |
KSALLOCATOR_REQUIREMENTF_FRAME_INTEGRITY | Gibt an, dass der Verbindungspunkt erfordert, dass nachgeschaltete Filter die Datenintegrität der angegebenen Frames beibehalten. |
KSALLOCATOR_REQUIREMENTF_MUST_ALLOCATE | Gibt an, dass der Verbindungspunkt alle gesendeten Frames zuordnen muss. |
KSALLOCATOR_REQUIREMENTF_PREFERENCES_ONLY | Gibt an, dass die Anforderungsflags nur Einstellungen sind und der Verbindungspunkt Frames zuweisen kann, die diese Spezifikationen nicht erfüllen. |
PoolType
Eine Struktur vom Typ POOL_TYPE , die den Typ des Kernelmoduszuordnungspools angibt.
Frames
Gibt die Gesamtzahl der zulässigen ausstehenden Frames an. Null gibt an, dass der Filter für dieses Element keine Anforderung hat.
FrameSize
Gibt die Gesamtgröße des Frames an, einschließlich Präfix und Postfix. Null gibt an, dass der Filter für dieses Element keine Anforderung hat.
FileAlignment
Ein Wert vom Typ ULONG, der die Byteausrichtung beschreibt, die beim Zuweisen von Frames verwendet werden soll. In der folgenden Tabelle werden mehrere mögliche Ausrichtungswerte beschrieben.
Wert | BESCHREIBUNG |
---|---|
FILE_BYTE_ALIGNMENT | 1-Byte-Ausrichtung |
FILE_WORD_ALIGNMENT | 2-Byte-Ausrichtung |
FILE_LONG_ALIGNMENT | Ausrichtung mit 4 Byte |
FILE_32_BYTE_ALIGNMENT | 32-Byte-Ausrichtung |
FILE_64_BYTE_ALIGNMENT | 64-Byte-Ausrichtung |
FramePitch
Reserved
Ist für das System reserviert. Auf NULL festlegen.
Hinweise
Verwenden Sie KSALLOCATOR_FRAMING, um mithilfe von IRP_MJ_CREATE eine Zuordnungserstellungsanforderung an ein Handle einer Senke zu übermitteln.
Wenn Sie einen Wert für das FileAlignment-Element angeben, ist die kleinste Zuordnungsausrichtung 1 Byte (FILE_BYTE_ALIGNMENT). Software, die als Zuordnung fungiert, sollte nach Möglichkeit die 4-Byte-Ausrichtung (FILE_LONG_ALIGNMENT) unterstützen.
Anforderungen
Anforderung | Wert |
---|---|
Header | ks.h (einschließlich Ks.h) |