[vbox-dev] Host/Guest Communication

Frank Mehnert frank.mehnert at oracle.com
Wed May 28 07:00:14 GMT 2014


André,

On Tuesday 27 May 2014 16:20:46 André Eberle wrote:
> I am trying to achieve host guest communication, through DMA in a guest
> driver. Also, I am trying to capture the result in the host process, and
> act on it. Could you point me to sources with examples of this behavior? It
> seems something similar is already done currently in the VirtualBox, is it
> so?

as I understand correctly, you intend to establish a communication between
host and guest where you can transfer bigger amounts of data. One example
would be the shared folders service. The guest part is located at

  src/VBox/Additions/common/VBoxGuestLib/VBoxGuestR0LibSharedFolders.c
  (guest ring 0 abstraction for shared folders functions)
  src/VBox/Additions/linux/sharedfolders/
  (guest ring 0 Linux driver)

while the host part is located at

  src/VBox/HostServices/SharedFolders

The HGCM abstraction is a bit different from the emulation of a physical
device. The guest is issuing HGCM requests to the host. If the host is
able to fulfil the request immediately, it will, otherwise the host returns
VINF_HGCM_ASYNC_EXECUTE and the VBox guest driver will call a callback
function when the request can finally be fulfilled.

Hope that helps,

Frank
-- 
Dr.-Ing. Frank Mehnert | Software Development Director, VirtualBox
ORACLE Deutschland B.V. & Co. KG | Werkstr. 24 | 71384 Weinstadt, Germany

Hauptverwaltung: Riesstr. 25, D-80992 München
Registergericht: Amtsgericht München, HRA 95603
Geschäftsführer: Jürgen Kunz

Komplementärin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher




More information about the vbox-dev mailing list