Question about location of libdt_socket vs libdt_shmem

Thomas Stüfe thomas.stuefe at gmail.com
Wed May 3 08:47:02 UTC 2017


Hi Alan,


On Wed, May 3, 2017 at 9:03 AM, Alan Bateman <Alan.Bateman at oracle.com>
wrote:

> On 03/05/2017 07:43, Thomas Stüfe wrote:
>
> Hi all,
>>
>> I wonder why the sources of the transport libraries are located in
>> different places:
>>
>> jdk/src/jdk.jdwp.agent/share/native/libdt_socket
>> jdk/src/jdk.jdi/share/native/libdt_shmem
>>
>> Is there a particular reason to this?
>>
>> Seeing as they both are implementations of the jdwp sp interface, I would
>> have expected them to be located side by side?
>>
>> jdk.jdwp.agent is the backend/debuggee side so it has the JDWP agent and
> should contain the transport libraries used by the JDWP agent.
>
> jdk.jdi is the frontend/debugger side so it has the JDI API and the
> connector and transport services that JDI uses.
>
> For the shared memory transport then it should ideally be split so that a
> reduced libdt_shmem is in jdk.jdwp.agent and the JDI side is is jdk.jdi.
> Refactoring is needed to do this right and just hasn't been a priority.
>
>
And for the socket transport, it is not needed at the jdi side because
there the socket transport is reimplemented in pure java?


> BTW: Having it in jdk.jdi isn't actually too bad because the shared memory
> transport is local (debugger and debuggee on the same machine). Also it
> tends to be used by the launching connector which is in jdk.jdi.


thank you for clarifying!

Thanks, Thomas


>
>
> -Alan
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20170503/6f53401c/attachment.html>


More information about the serviceability-dev mailing list