vmbuskernelmodeclientlibapi.h-Header
Dieser Header wird vom Netzwerk verwendet. Weitere Informationen finden Sie unter
vmbuskernelmodeclientlibapi.h enthält die folgenden Programmierschnittstellen:
Functions
VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT Die VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT-Funktion speichert Rückruffunktionen, die für Zustandsänderungen für einen Kanal verwendet werden sollen. |
Rückruffunktionen
EVT_VMB_CHANNEL_CLOSED Die Rückruffunktion EvtVmbChannelClosed wird aufgerufen, wenn der Clientendpunkt auf dem virtuellen Gastcomputer einen Kanal mithilfe der VmbChannelDisable-Funktion schließt oder der entgegengesetzte Endpunkt den Kanal entfernt oder schließt. |
EVT_VMB_CHANNEL_OPENED Die Rückruffunktion EvtVmbChannelOpened wird aufgerufen, wenn der Clientendpunkt auf dem virtuellen Gastcomputer einen Kanal öffnet, der diesem angeboten wurde. |
EVT_VMB_CHANNEL_PNP_FAILURE Die Rückruffunktion EvtChannelPnpFailure wird aufgerufen, wenn der Clientendpunkt auf dem virtuellen Gastcomputer asynchron keine Verbindung herstellen kann, obwohl ein PnP-Gerät gefunden wurde. |
EVT_VMB_CHANNEL_POST_STARTED Die Rückruffunktion EvtVmbChannelPostStarted wird an beiden Endpunkten aufgerufen, nachdem Pakete vom entgegengesetzten Endpunkt empfangen werden können. |
EVT_VMB_CHANNEL_PROCESS_PACKET Die Rückruffunktion EvtVmbChannelProcessPacket wird aufgerufen, wenn ein Paket im eingehenden Ringpuffer eingeht. |
EVT_VMB_CHANNEL_PROCESSING_COMPLETE Die Rückruffunktion EvtVmbChannelProcessingComplete wird aufgerufen, wenn eine Gruppe von Paketen von der EvtVmbChannelProcessPacket-Funktion bereitgestellt wurde, wenn vor der Übermittlung nachfolgender Pakete eine Pause erfolgt. |
EVT_VMB_CHANNEL_RESTORE_PACKET Die Rückruffunktion EvtVmbChannelRestorePacket wird aufgerufen, wenn der VSP-Serverendpunkt (Virtualization Service Provider) den einem Paketobjekt zugeordneten Zustand wiederherstellen muss. |
EVT_VMB_CHANNEL_SAVE_PACKET Die Rückruffunktion EvtVmbChannelSavePacket wird aufgerufen, wenn der VSP-Endpunkt (Virtualization Service Provider) den einem Paket zugeordneten Zustand speichern muss. |
EVT_VMB_CHANNEL_STARTED Die EvtVmbChannelStarted-Rückruffunktion wird an beiden Endpunkten aufgerufen, wenn ein Kanal vollständig konfiguriert ist, aber bevor Pakete übermittelt wurden. Dies tritt auf, wenn der entgegengesetzte Endpunkt den Kanal geöffnet oder erneut geöffnet hat, nachdem er geschlossen wurde. |
EVT_VMB_CHANNEL_SUSPEND Die Rückruffunktion EvtVmbChannelSuspend wird am Serverendpunkt aufgerufen, wenn der Kanal vom Clientendpunkt geschlossen oder gelöscht wird, wodurch der Server in den Status Beendet versetzt wird. |
EVT_VMB_PACKET_COMPLETION_ROUTINE Die Rückruffunktion EvtVmbPacketCompletionRoutine wird aufgerufen, wenn die einem gesendeten Paket zugeordnete Transaktion abgeschlossen ist. |
FN_VMB_CHANNEL_ALLOCATE Die VmbChannelAllocate-Funktion ordnet einen neuen VMBus-Kanal zu, der Standardparameter und Rückrufe enthält. |
FN_VMB_CHANNEL_CLEANUP Die VmbChannelCleanup-Funktion entfernt einen Kanal, der mithilfe der Funktion VmbChannelAllocate zugeordnet oder mit einer VMBus-Kanalinitialisierungsfunktion initialisiert wurde. |
FN_VMB_CHANNEL_CREATE_GPADL_FROM_BUFFER Die VmbChannelCreateGpadlFromBuffer-Funktion erstellt eine Gastadressendeskriptorliste (GPADL), die einen clientseitigen Puffer beschreibt. Die GPADL kann auf dem Server verwendet werden, um auf den Puffer zuzugreifen. |
FN_VMB_CHANNEL_CREATE_GPADL_FROM_MDL Die VmbChannelCreateGpadlFromMdl-Funktion erstellt eine Gastadressendeskriptorliste (GPADL), die einen clientseitigen Puffer beschreibt. Die GPADL kann auf dem Server verwendet werden, um auf den Puffer zuzugreifen. |
FN_VMB_CHANNEL_DELETE_GPADL Die VmbChannelDeleteGpadl-Funktion löscht eine GPADL-Liste (Gast-Physische Adressdeskriptorliste), die von den Funktionen VmbChannelCreateGpadlFromMdl oder VmbChannelCreateGpadlFromBuffer zugeordnet ist. |
FN_VMB_CHANNEL_DISABLE Die VmbChannelDisable-Funktion deaktiviert einen Kanal, wodurch er für Clientkanäle geschlossen wird und das Kanalangebot für Serverkanäle aufgehoben wird. Diese Funktion wartet, bis der Kanal vollständig abgerissen wurde, bevor er zurückgibt. |
FN_VMB_CHANNEL_ENABLE Die VmbChannelEnable-Funktion aktiviert einen Kanal, der sich im deaktivierten Zustand befindet, indem eine Verbindung mit VMBus hergestellt und je nach Endpunkttyp ein Kanal angeboten oder geöffnet wird. |
FN_VMB_CHANNEL_GET_INTERFACE_INSTANCE Die VmbChannelGetInterfaceInstance-Funktion ruft die aktive Schnittstelle instance ab. Hierbei handelt es sich um eine GUID, die einen Kanal eindeutig identifiziert. |
FN_VMB_CHANNEL_GET_MMIO_SPACE Die Funktion VmbChannelGetMmioSpace ruft die virtuelle Kerneladresse des MMIO-Speicherplatzes ab, der einem Kanal zugeordnet ist. |
FN_VMB_CHANNEL_GET_POINTER Mit der Funktion VmbChannelGetPointer kann ein Clienttreiber einen Zeiger abrufen, der zuvor mithilfe der Funktion VmbPacketSetPointer gespeichert wurde. |
FN_VMB_CHANNEL_INIT_SET_CLIENT_CONTEXT_SIZE Die VmbChannelInitSetClientContextSize-Funktion legt die Größe des optionalen Kontextbereichs fest, der dem Clienttreiber für jedes eingehende Paket zugeordnet ist. |
FN_VMB_CHANNEL_INIT_SET_FLAGS Die VmbChannelInitSetFlags-Funktion legt Flags fest, die für Server- oder Clientkanalendpunkte gemeinsam sind. |
FN_VMB_CHANNEL_INIT_SET_FRIENDLY_NAME Die Funktion VmbChannelInitSetFriendlyName legt den Anzeigenamen des KMCL-Kanals (Kernel Mode Client Library) fest. Der Anzeigename wird für das Debuggen und den Leistungsindikator instance Benennung verwendet. |
FN_VMB_CHANNEL_INIT_SET_MAXIMUM_EXTERNAL_DATA Die VmbChannelInitSetMaximumExternalData-Funktion legt die maximale Größe und Verkettungslänge von Daten fest, die von einem Paket beschrieben, aber nicht direkt im Paket gesendet werden. Das heißt, die maximale Größe des Puffers, der durch eine ExternalDataMdl beschrieben wird. |
FN_VMB_CHANNEL_INIT_SET_MAXIMUM_PACKET_SIZE Die VmbChannelInitSetMaximumPacketSize-Funktion legt die maximale Paketgröße fest, die über einen Kanal übermittelt werden kann. Dies ist die maximale Größe, die jemals von der VmbPacketSend-Funktion angegeben wird. |
FN_VMB_CHANNEL_INIT_SET_PROCESS_PACKET_CALLBACKS Die Funktion VmbChannelInitSetProcessPacketCallbacks legt Rückruffunktionen für die Paketverarbeitung fest. |
FN_VMB_CHANNEL_INIT_SET_STATE_CHANGE_CALLBACKS Die Funktion VmbChannelInitSetStateChangeCallbacks legt optionale Rückruffunktionen für Zustandsänderungen fest. |
FN_VMB_CHANNEL_MAP_GPADL Die VmbChannelMapGpadl-Funktion ordnet einen clientseitigen Puffer mithilfe einer GPADL-Nummer (Guest Physical Address Descriptor List) dem serverseitigen physischen Adressraum zu. |
FN_VMB_CHANNEL_PACKET_COMPLETE Die VmbChannelPacketComplete-Funktion bereinigt alle ausstehenden Speicherzuordnungen, gibt alle verwendeten Puffer frei und sendet, wenn der entgegengesetzte Endpunkt ein Abschlusspaket angefordert hat. |
FN_VMB_CHANNEL_PACKET_DEFER_TO_PASSIVE Die VmbChannelPacketDeferToPassive-Funktion wird vom Clienttreiber aufgerufen, um ein Paket zu verzögern, das von der Rückruffunktion EvtVmbChannelProcessPacket an ihn übergeben wird. |
FN_VMB_CHANNEL_PACKET_FAIL Die VmbChannelPacketFail-Funktion schlägt ein Paket während der Paketverarbeitung aufgrund eines nicht behebbaren Fehlers fehl. Diese Funktion beendet die Warteschlange. |
FN_VMB_CHANNEL_PACKET_GET_EXTERNAL_DATA Die VmbChannelPacketGetExternalData-Funktion ruft alle externen Speicherdeskriptorlisten (MDLs) ab, die einem Paket während der Paketverarbeitung zugeordnet sind. |
FN_VMB_CHANNEL_PAUSE Die VmbChannelPause-Funktion verschiebt einen Kanal in den angehaltenen Zustand, wodurch neue E/A-Vorgänge verhindert werden. |
FN_VMB_CHANNEL_RESTORE_FROM_BUFFER Die Funktion VmbChannelRestoreFromBuffer stellt den Clientstatus aus dem zuvor gespeicherten Zustand wieder her. Der Treiber muss den Rückgabewert der Funktion überprüfen. |
FN_VMB_CHANNEL_SAVE_BEGIN Die VmbChannelSaveBegin-Funktion initialisiert den Kontext zum Speichern des Zustands eines Kanals. Der Treiber muss den Rückgabewert der Funktion überprüfen. |
FN_VMB_CHANNEL_SAVE_CONTINUE Die VmbChannelSaveContinue-Funktion speichert den Kanalzustand in einem Puffer. Führen Sie VmbChannelSaveBegin aus, bevor Sie diese Funktion ausführen. Der Treiber muss den Rückgabewert der Funktion überprüfen. |
FN_VMB_CHANNEL_SAVE_END Die VmbChannelSaveEnd-Funktion bereinigt alle Ressourcen, die zum Speichern des Zustands eines Kanals zugeordnet wurden. |
FN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST Die VmbChannelSendSynchronousRequest-Funktion sendet ein Paket an den anderen Endpunkt und wartet auf eine Antwort. |
FN_VMB_CHANNEL_SET_INCOMING_PROCESSING_AT_PASSIVE Die VmbChannelSetIncomingProcessingAtPassive-Funktion legt die erforderliche IRQL für eingehende Analyseroutinen für einen Kanal PASSIVE_LEVEL fest. |
FN_VMB_CHANNEL_SET_INTERRUPT_LATENCY Die Gast-VM aktualisiert die Latenz des ausgehenden Monitors für MNF-Unterbrechungen. |
FN_VMB_CHANNEL_SET_POINTER Die VmbChannelSetPointer-Funktion speichert einen beliebigen Zeiger in einem Kanalkontext. |
FN_VMB_CHANNEL_SET_TRANSACTION_QUOTA Die VmbChannelSetTransactionQuota-Funktion legt das Kontingent für eingehende Pakete fest. |
FN_VMB_CHANNEL_SIZEOF_PACKET Die VmbChannelSizeofPacket-Funktion berechnet die erforderliche Größe für Puffer, die mit der VmbPacketInitialize-Funktion verwendet werden sollen. |
FN_VMB_CHANNEL_START Die VmbChannelStart-Funktion verschiebt einen Kanal aus dem angehaltenen Zustand. |
FN_VMB_CHANNEL_UNMAP_GPADL Die VmbChannelUnmapGpadl-Funktion hebt die Zuordnung einer GPADL-Liste (Guest Physical Address Descriptor List) auf, die mit der VmbChannelMapGpadl-Funktion zugeordnet wird. Der Puffer darf nicht mehr vom Server verwendet werden, bevor diese Funktion aufgerufen wird. |
FN_VMB_CLIENT_CHANNEL_INIT_SET_RING_BUFFER_PAGE_COUNT Die Funktion VmbClientChannelInitSetRingBufferPageCount legt die Anzahl der Seiten des Arbeitsspeichers fest, die der Client für eingehende und ausgehende Ringpuffer zuordnet. |
FN_VMB_CLIENT_CHANNEL_INIT_SET_TARGET_PNP Die VmbClientChannelInitSetTargetPnp-Funktion legt das Ziel eines Clientkanals nach Schnittstellentyp und instance IDs fest. |
FN_VMB_CONVERT_VMBUS_HANDLE_TO_KERNEL_HANDLE Die VmbConvertVmbusHandleToKernelHandle-Funktion konvertiert das VMBus-Handle im Benutzermodus in das Handle im Kernelmodus. |
FN_VMB_PACKET_ALLOCATE Die VmbPacketAllocate-Funktion ordnet ein Paket aus der Lookaside-Liste des Kanals zu. |
FN_VMB_PACKET_FREE Die VmbPacketFree-Funktion gibt ein Paket frei, das mithilfe der VmbPacketAllocate-Funktion zugeordnet wurde. |
FN_VMB_PACKET_GET_CHANNEL Die VmbPacketGetChannel-Funktion gibt den VMBus-Kanal zurück, dem ein VMBus-Paket zugeordnet ist. |
FN_VMB_PACKET_GET_POINTER Die Funktion VmbPacketGetPointer ruft einen Zeiger ab, der zuvor mithilfe der Funktion VmbPacketSetPointer gespeichert wurde. |
FN_VMB_PACKET_INITIALIZE Die VmbPacketInitialize-Funktion initialisiert einen Puffer, der ein VMBus-Paket enthält. |
FN_VMB_PACKET_RESTORE Die Funktion VmbPacketRestore stellt das Paket aus einem Puffer wieder her, der den gespeicherten Paketkontext enthält. |
FN_VMB_PACKET_SEND Die VmbPacketSend-Funktion sendet die Daten in einem Paketpuffer oder externen Daten memory descriptor List (MDL). Die Funktion ordnet diese Daten dem VMBus-Paketobjekt zu, das das Paket während der gesamten Lebensdauer der Transaktion darstellt. |
FN_VMB_PACKET_SEND_WITH_EXTERNAL_MDL Die VmbPacketSendWithExternalMdl-Funktion sendet die Daten in einem Paketpuffer oder einer externen Speicherdeskriptorliste (MDL). |
FN_VMB_PACKET_SEND_WITH_EXTERNAL_PFNS Die VmbPacketSendWithExternalPfns-Funktion sendet die Daten in einem Paketpuffer oder externen Daten als Array von Seitenrahmenzahlen (PFNs). |
FN_VMB_PACKET_SET_COMPLETION_ROUTINE Die VmbPacketSetCompletionRoutine-Funktion legt die Vervollständigungsroutine für ein Paketobjekt fest. |
FN_VMB_PACKET_SET_POINTER Die VmbPacketSetPointer-Funktion speichert einen beliebigen Zeiger im Paketkontext. |
FN_VMB_SERVER_CHANNEL_INIT_SET_FLAGS Die Funktion VmbServerChannelInitSetFlags legt Flags fest, die für Serverkanalendpunkte eindeutig sind. |
FN_VMB_SERVER_CHANNEL_INIT_SET_MMIO_MEGABYTES Die Funktion VmbServerChannelInitSetMmioMegabytes gibt die Menge (Megabyte) des im Gastspeicher zugeordneten E/A-Speicherplatzes (MMIO) an, der für das Gerät reserviert werden soll. |
FN_VMB_SERVER_CHANNEL_INIT_SET_SAVE_RESTORE_PACKET_CALLBACKS Die Funktion VmbServerChannelInitSetSaveRestorePacketCallbacks legt die Rückruffunktionen zum Speichern und Wiederherstellen fest, die für jedes Paket aufgerufen werden, wenn der Treiber eine Speicherfunktion aufruft, z. B. VmbChannelSaveBegin, VmbChannelSaveContinue und VmbChannelSaveEnd, oder die VmbChannelRestoreFromBuffer-Funktion. |
FN_VMB_SERVER_CHANNEL_INIT_SET_TARGET_INTERFACE_ID Die Funktion VmbServerChannelInitSetTargetInterfaceId legt die Zielschnittstellentyp-GUID und instance GUID des Kanalangebots fest. |
FN_VMB_SERVER_CHANNEL_INIT_SET_TARGET_VTL Die Funktion VmbServerChannelInitSetTargetVtl legt die Ziel-VTL für diesen Kanal fest. Der Kanal wird Clients angeboten, die in der angegebenen VTL ausgeführt werden, und keinem anderen. |
FN_VMB_SERVER_CHANNEL_INIT_SET_VMBUS_HANDLE Die Funktion VmbServerChannelInitSetVmbusHandle ordnet diesem Kanal eine instance von VMBus zu. |
Strukturen
KMCL_SERVER_ONLY_METHODS Die KMCL_SERVER_ONLY_METHODS-Struktur enthält Funktionszeiger für reine Serverfunktionen für die KMCL-Schnittstelle (Kernel Mode Client Library). |
KMCL_SERVER_ONLY_METHODS_V5 Die KMCL_CLIENT_INTERFACE_V1-Struktur enthält Funktionszeiger für Clientfunktionen für die KMCL-Schnittstelle (Kernel Mode Client Library). |
VMB_CHANNEL_STATE_CHANGE_CALLBACKS Die VMB_CHANNEL_STATE_CHANGE_CALLBACKS-Struktur enthält Rückruffunktionen, die sich auf die Zustandsänderungen für einen Kanal beziehen. |