Expand Minimize

HV_MESSAGE_HEADER structure

The HV_MESSAGE_HEADER structure describes a message by specifying the message type and information about where the message originated.

Syntax


typedef struct _HV_MESSAGE_HEADER {
  HV_MESSAGE_TYPE  MessageType;
  UINT8            PayloadSize;
  HV_MESSAGE_FLAGS MessageFlags;
  UINT8            Reserved[2];
  union {
    HV_PARTITION_ID Sender;
    HV_PORT_ID      Port;
  };
} HV_MESSAGE_HEADER, *PHV_MESSAGE_HEADER;

Members

MessageType

A HV_MESSAGE_TYPE value that specifies the type of the message.

PayloadSize

An 8-bit value that specifies the size, in bytes, of the message. A message can be up to HV_MESSAGE_SIZE (256) bytes.

MessageFlags

A HV_MESSAGE_FLAGS union that describes flags that modify the behavior of the message.

Reserved

The 8-bit values in the array that this member consists of are reserved and should be set to zero.

Sender

An HV_PARTITION_ID value that identifies the partition from which the message originated.

Port

An HV_PORT_ID value that identifies the port from which the message originated.

Remarks

SynIC messages have a fixed size and consist of a message header (which includes the message type and information about where the message originated) followed by the message payload. Messages that the hypervisor sends in response to calls to the HvPostMessage function contain the port identifier in the Port member. Intercept messages contain the partition identifier (in the Sender member) of the partition whose virtual processor generated the intercept. Timer intercepts do not contain an origination identifier (that is, the Sender and Port members are specified as zero).

Requirements

Header

HvSynicApi.h (include Hvgdk.h)

See also

HV_MESSAGE_FLAGS
HV_MESSAGE_TYPE
HvPostMessage

 

 

Send comments about this topic to Microsoft

Build date: 11/16/2013

Show:
© 2014 Microsoft. All rights reserved.