Download Oracle VM VirtualBox Programming Guide and Reference
Transcript
7 Host-Guest Communication Manager Type VMMDevHGCMParmType_32bit (1) VMMDevHGCMParmType_64bit (2) VMMDevHGCMParmType_PhysAddr (3) VMMDevHGCMParmType_LinAddr (4) VMMDevHGCMParmType_LinAddr_In (5) VMMDevHGCMParmType_LinAddr_Out (6) VMMDevHGCMParmType_LinAddr_Locked (7) VMMDevHGCMParmType_LinAddr_Locked_In (1) VMMDevHGCMParmType_LinAddr_Locked_Out (1) Format of the value A 32 bit value. A 64 bit value. A 32 bit size followed by a 32 bit or 64 bit guest physical address. A 32 bit size followed by a 32 bit or 64 bit guest linear address. The buffer is used both for guest to host and for host to guest data. Same as VMMDevHGCMParmType_LinAddr but the buffer is used only for host to guest data. Same as VMMDevHGCMParmType_LinAddr but the buffer is used only for guest to host data. Same as VMMDevHGCMParmType_LinAddr but the buffer is already locked by the guest. Same as VMMDevHGCMParmType_LinAddr_In but the buffer is already locked by the guest. Same as VMMDevHGCMParmType_LinAddr_Out but the buffer is already locked by the guest. The 7.2.5 Cancel This request cancels a call request (VMMDevHGCMCancel): Name header Description The generic HGCM request header with type equal to VMMDevReq_HGCMCancel (64). 7.3 Guest software interface The guest HGCM clients can call HGCM services from both drivers and applications. 7.3.1 The guest driver interface The driver interface is implemented in the VirtualBox guest additions driver (VBoxGuest), which works with the VMM virtual device. Drivers must use the VBox Guest Library (VBGL), which provides an API for HGCM clients (VBox/VBoxGuestLib.h and VBox/VBoxGuest.h). DECLVBGL(int) VbglHGCMConnect (VBGLHGCMHANDLE *pHandle, VBoxGuestHGCMConnectInfo *pData); Connects to the service: VBoxGuestHGCMConnectInfo data; 318