[vbox-dev] Shared memory API like mmap for fast IPC

Sander van Leeuwen Sander.Vanleeuwen at Sun.COM
Wed Oct 8 11:22:52 GMT 2008


There is unfortunately no documentation on HGCM right now.
HGCM (which stands for host-guest communication manager) consists of two 
components:
- guest client (e.g. clipboard: 
src\VBox\Additions\winnt\VBoxTray\VBoxClipboard.cpp
- host server (e.g. clipboard: src\VBox\HostServices\SharedClipboard)

The host server must register itself in the HGCM name space. The 
supported host services
are currently hard coded in src\VBox\Main\VMMDevInterface.cpp 
(VMMDev::drvConstruct).
We could make this more generic if required, but it's enough to start with.

The guest client talks to the VBox guest additions driver to connect to 
the host service. Once
connected they can talk to each other. Communication can be done using 
copying or sharing
guest physical addresses.

Hope that helps to get you started,

Sander

Nev wrote:
> The following, is a post I made on the VirtualBox user forum. And
> "sandervl" from Sun Microsystems, suggest I redirect my question here.
>
> I have an application that requires very fast communications between the
> guest application and host application. Host is Linux, Centos 5, Guest
> is XP. Current implementation is based on VMware workstation 6.0 using
> VMCI shared memory interface, but this interface has been removed in
> workstation 6.5 and replaced with a socket interface, which is way too
> slow. I have searched, but unable to find any such interface in
> VirtualBox. Is it possible to share memory with an existing interface,
> that I have missed?
>
> sandervl suggested the HGCM interface is appropriate (with some
> coding?), I have been unable to find any documentation on this
> interface. Is it documented, or do I need to refer to the source?
>
> I have downloaded the source, but have not yet been able to satisfy the
> Prerequisites. Current issue is missing PulseAudio.
>
> Any help would be appreciated
>
> Thank you
>
>
>
> _______________________________________________
> vbox-dev mailing list
> vbox-dev at virtualbox.org
> http://vbox.innotek.de/mailman/listinfo/vbox-dev
>   


-- 
Kind regards / Mit freundlichen Gruessen / Met vriendelijke groet

--

Sun Microsystems GmbH        Sander van Leeuwen
Werkstrasse 24               Senior Staff Engineer, VirtualBox
71384 Weinstadt, Germany     mailto:Sander.Vanleeuwen at sun.com


================================================
Sitz der Gesellschaft: Sun Microsystems GmbH,
Sonnenallee 1, 85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB 161028
Geschaeftsfuehrer: Thomas Schroeder,
Wolfgang Engels, Dr. Roland Boehmer
Vorsitzender des Aufsichtsrates: Martin Haering
================================================





More information about the vbox-dev mailing list