You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Oliver Deakin <ol...@googlemail.com> on 2008/03/13 13:51:33 UTC
Re: [JDKTools][JDWP] Shared memory transport (was: Let's start JDWP
java6 updating)
Hi Jimmy/Alexei,
Im starting to look at implementing shared memory transport for jdwp.
It's very early days at the moment, but I have been able to open the
shared memory space (created by the RI running as server) and read some
data from it. I have also been able to mirror this behaviour, with
Harmony running in server mode. I will start to check in some changes
soon, initially for the build system to start building dt_shmem.dll on
Windows. After that I will start checking in some of my code and add
some changes to the jpda test setup so it can run the tests in shared
memory mode.
Regards,
Oliver
Jimmy,Jing Lv wrote:
> Hi,
>
> 2008/2/22, Alexei Fedotov <al...@gmail.com>:
>
>> Jimmy,
>>
>> I fully support your idea, but cannot follow the discussion fully. The
>> old thread mostly discussed a shared memory protocol, didn't it? This
>> thread no longer mentions a shared memory, but discusses an API update
>> instead. May be all these things are parts of the whole picture, but
>> the picture slips out of my mind. I would suggest being merciful to my
>> google-weakened brain and write some justifications of the decision
>> taken.
>>
>>
>
> Yes, I never forget shared memory, but it seems we need more
> information of that (according to the conclusion of last discussion).
> However java6 updating is easier to work on and we've got all
> information on java spec, as a result, IMO, we'd better start from the
> easy beginning, and leave hard work alone until we find some other way
> to resolve it, do you think so? :) (Maybe someone already has a plan
> on it :)
> BTW, as today is friday, have a nice weekend :)
>
>
>> For example, I believe Mikhail L. justification: "I don't think that
>> time and efforts are an issue. The time flies when you are having fun
>> :)" is quite explanatory. Or you may come up with something more
>> rational.
>>
>> Thanks.
>>
>>
>> On Fri, Feb 22, 2008 at 6:30 AM, Jimmy,Jing Lv <fi...@gmail.com> wrote:
>> > Hi All,
>> >
>> > As discussed before, we can start JDWP updating and improving.
>> > IMHO, let's start from the easiest way, updating to java 6.
>> > My proposal is:
>> > 1. Setup a branch of JDKTools for java6 in harmony repository
>> > 2. add/improve JDWP functions into java6 level. As the main updating
>> > for java6 JDWP is about JDWP-protocol, it seems no much effect on VM
>> > and debugger.
>> >
>> > As M5 freeze will be done at the end of this week, may start
>> > from next week on. Any comments/suggestions/Volunteers? Thanks!
>> >
>> > --
>> >
>> > Best Regards!
>> >
>> > Jimmy, Jing Lv
>> > China Software Development Lab, IBM
>> >
>>
>>
>>
>>
>> --
>> With best regards,
>>
>> Alexei
>>
>>
>
>
>
--
Oliver Deakin
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
Re: [JDKTools][JDWP] Shared memory transport
Posted by Oliver Deakin <ol...@googlemail.com>.
Jimmy,Jing Lv wrote:
> Hi,
>
> 2008/3/13, Oliver Deakin <ol...@googlemail.com>:
>
>> Hi Jimmy/Alexei,
>>
>> <SNIP!>
>>
>>
>
> Really cool !
>
> BTW, do you need to modify the build file or some common header file
> of JWDP Oliver? I'm merging currect JDWP with Harmony Portlib and
> nearly get finished (expect for a minor problem that portlib is lack
> of useful select and process APIs as we already know when working on
> NIO), and I may need to changing makefile and some SocketTransport and
> TransportManager implementation. Please let me know if you also need
> to modify such files so that we may not meet conflict. :)
>
>
Hi Jimmy,
I do need to modify the jpda build.xml, but it's quite a small change to
add a Windows only make target for the dt_shmem library.
Regarding header files/makefiles, I need to make the following changes
which may cause conflicts:
- In LastTransportError.h remove the include of SocketTransport_pd.h
- In both the unix and windows directories, move the dt_socket
makefiles and exports.txt/dt_socket.def files into the actual dt_socket
directories so they do not conflict with the dt_shmem makefiles (and
make a one line change in the build.xml to point to the new location of
the build files).
I am ready to make these changes today if they are ok with you. However,
I can hold off if you wish to make your changes first?
Regards,
Oliver
>> Regards,
>> Oliver
>>
>> Jimmy,Jing Lv wrote:
>> > Hi,
>> >
>> > 2008/2/22, Alexei Fedotov <al...@gmail.com>:
>> >
>> >> Jimmy,
>> >>
>> >> I fully support your idea, but cannot follow the discussion fully. The
>> >> old thread mostly discussed a shared memory protocol, didn't it? This
>> >> thread no longer mentions a shared memory, but discusses an API update
>> >> instead. May be all these things are parts of the whole picture, but
>> >> the picture slips out of my mind. I would suggest being merciful to my
>> >> google-weakened brain and write some justifications of the decision
>> >> taken.
>> >>
>> >>
>> >
>> > Yes, I never forget shared memory, but it seems we need more
>> > information of that (according to the conclusion of last discussion).
>> > However java6 updating is easier to work on and we've got all
>> > information on java spec, as a result, IMO, we'd better start from the
>> > easy beginning, and leave hard work alone until we find some other way
>> > to resolve it, do you think so? :) (Maybe someone already has a plan
>> > on it :)
>> > BTW, as today is friday, have a nice weekend :)
>> >
>> >
>> >> For example, I believe Mikhail L. justification: "I don't think that
>> >> time and efforts are an issue. The time flies when you are having fun
>> >> :)" is quite explanatory. Or you may come up with something more
>> >> rational.
>> >>
>> >> Thanks.
>> >>
>> >>
>> >> On Fri, Feb 22, 2008 at 6:30 AM, Jimmy,Jing Lv <fi...@gmail.com> wrote:
>> >> > Hi All,
>> >> >
>> >> > As discussed before, we can start JDWP updating and improving.
>> >> > IMHO, let's start from the easiest way, updating to java 6.
>> >> > My proposal is:
>> >> > 1. Setup a branch of JDKTools for java6 in harmony repository
>> >> > 2. add/improve JDWP functions into java6 level. As the main updating
>> >> > for java6 JDWP is about JDWP-protocol, it seems no much effect on VM
>> >> > and debugger.
>> >> >
>> >> > As M5 freeze will be done at the end of this week, may start
>> >> > from next week on. Any comments/suggestions/Volunteers? Thanks!
>> >> >
>> >> > --
>> >> >
>> >> > Best Regards!
>> >> >
>> >> > Jimmy, Jing Lv
>> >> > China Software Development Lab, IBM
>> >> >
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> With best regards,
>> >>
>> >> Alexei
>> >>
>> >>
>> >
>> >
>> >
>>
>>
>> --
>> Oliver Deakin
>> Unless stated otherwise above:
>> IBM United Kingdom Limited - Registered in England and Wales with number 741598.
>> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>>
>>
>>
>
>
>
--
Oliver Deakin
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
Re: [JDKTools][JDWP] Shared memory transport (was: Let's start JDWP java6 updating)
Posted by "Jimmy,Jing Lv" <fi...@gmail.com>.
Hi,
2008/3/13, Oliver Deakin <ol...@googlemail.com>:
> Hi Jimmy/Alexei,
>
> Im starting to look at implementing shared memory transport for jdwp.
> It's very early days at the moment, but I have been able to open the
> shared memory space (created by the RI running as server) and read some
> data from it. I have also been able to mirror this behaviour, with
> Harmony running in server mode. I will start to check in some changes
> soon, initially for the build system to start building dt_shmem.dll on
> Windows. After that I will start checking in some of my code and add
> some changes to the jpda test setup so it can run the tests in shared
> memory mode.
>
Really cool !
BTW, do you need to modify the build file or some common header file
of JWDP Oliver? I'm merging currect JDWP with Harmony Portlib and
nearly get finished (expect for a minor problem that portlib is lack
of useful select and process APIs as we already know when working on
NIO), and I may need to changing makefile and some SocketTransport and
TransportManager implementation. Please let me know if you also need
to modify such files so that we may not meet conflict. :)
> Regards,
> Oliver
>
> Jimmy,Jing Lv wrote:
> > Hi,
> >
> > 2008/2/22, Alexei Fedotov <al...@gmail.com>:
> >
> >> Jimmy,
> >>
> >> I fully support your idea, but cannot follow the discussion fully. The
> >> old thread mostly discussed a shared memory protocol, didn't it? This
> >> thread no longer mentions a shared memory, but discusses an API update
> >> instead. May be all these things are parts of the whole picture, but
> >> the picture slips out of my mind. I would suggest being merciful to my
> >> google-weakened brain and write some justifications of the decision
> >> taken.
> >>
> >>
> >
> > Yes, I never forget shared memory, but it seems we need more
> > information of that (according to the conclusion of last discussion).
> > However java6 updating is easier to work on and we've got all
> > information on java spec, as a result, IMO, we'd better start from the
> > easy beginning, and leave hard work alone until we find some other way
> > to resolve it, do you think so? :) (Maybe someone already has a plan
> > on it :)
> > BTW, as today is friday, have a nice weekend :)
> >
> >
> >> For example, I believe Mikhail L. justification: "I don't think that
> >> time and efforts are an issue. The time flies when you are having fun
> >> :)" is quite explanatory. Or you may come up with something more
> >> rational.
> >>
> >> Thanks.
> >>
> >>
> >> On Fri, Feb 22, 2008 at 6:30 AM, Jimmy,Jing Lv <fi...@gmail.com> wrote:
> >> > Hi All,
> >> >
> >> > As discussed before, we can start JDWP updating and improving.
> >> > IMHO, let's start from the easiest way, updating to java 6.
> >> > My proposal is:
> >> > 1. Setup a branch of JDKTools for java6 in harmony repository
> >> > 2. add/improve JDWP functions into java6 level. As the main updating
> >> > for java6 JDWP is about JDWP-protocol, it seems no much effect on VM
> >> > and debugger.
> >> >
> >> > As M5 freeze will be done at the end of this week, may start
> >> > from next week on. Any comments/suggestions/Volunteers? Thanks!
> >> >
> >> > --
> >> >
> >> > Best Regards!
> >> >
> >> > Jimmy, Jing Lv
> >> > China Software Development Lab, IBM
> >> >
> >>
> >>
> >>
> >>
> >> --
> >> With best regards,
> >>
> >> Alexei
> >>
> >>
> >
> >
> >
>
>
> --
> Oliver Deakin
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>
>
--
Best Regards!
Jimmy, Jing Lv
China Software Development Lab, IBM
Re: [JDKTools][JDWP] Shared memory transport
Posted by Oliver Deakin <ol...@googlemail.com>.
Thanks Alexei!
I am writing the code for Windows only (as it is on the RI) and have
been using Windows API calls (CreateFileMapping(), MapViewOfFile() etc.)
directly rather than portlib calls.
I did investigate using portlib, but it would require a number of
portlib changes to get working (the shared memory calls in Harmony
portlib don't actually do what you'd expect!). For the time being I plan
to continue using the Windows API directly so that I can get it up and
running easily, as the time is currently better spent investigating how
to implement the transport. Perhaps moving to portlib is something for
the future, but the amount of work required to do this would not be trivial.
Regards,
Oliver
Alexei Fedotov wrote:
> Oliver,
> That is great! BTW, which API are you using for shared memory access?
> Is it a part of the portlib?
>
> Thanks!
>
> On Thu, Mar 13, 2008 at 3:51 PM, Oliver Deakin
> <ol...@googlemail.com> wrote:
>
>> Hi Jimmy/Alexei,
>>
>> Im starting to look at implementing shared memory transport for jdwp.
>> It's very early days at the moment, but I have been able to open the
>> shared memory space (created by the RI running as server) and read some
>> data from it. I have also been able to mirror this behaviour, with
>> Harmony running in server mode. I will start to check in some changes
>> soon, initially for the build system to start building dt_shmem.dll on
>> Windows. After that I will start checking in some of my code and add
>> some changes to the jpda test setup so it can run the tests in shared
>> memory mode.
>>
>> Regards,
>> Oliver
>>
>> Jimmy,Jing Lv wrote:
>> > Hi,
>> >
>> > 2008/2/22, Alexei Fedotov <al...@gmail.com>:
>> >
>> >> Jimmy,
>> >>
>> >> I fully support your idea, but cannot follow the discussion fully. The
>> >> old thread mostly discussed a shared memory protocol, didn't it? This
>> >> thread no longer mentions a shared memory, but discusses an API update
>> >> instead. May be all these things are parts of the whole picture, but
>> >> the picture slips out of my mind. I would suggest being merciful to my
>> >> google-weakened brain and write some justifications of the decision
>> >> taken.
>> >>
>> >>
>> >
>> > Yes, I never forget shared memory, but it seems we need more
>> > information of that (according to the conclusion of last discussion).
>> > However java6 updating is easier to work on and we've got all
>> > information on java spec, as a result, IMO, we'd better start from the
>> > easy beginning, and leave hard work alone until we find some other way
>> > to resolve it, do you think so? :) (Maybe someone already has a plan
>> > on it :)
>> > BTW, as today is friday, have a nice weekend :)
>> >
>> >
>> >> For example, I believe Mikhail L. justification: "I don't think that
>> >> time and efforts are an issue. The time flies when you are having fun
>> >> :)" is quite explanatory. Or you may come up with something more
>> >> rational.
>> >>
>> >> Thanks.
>> >>
>> >>
>> >> On Fri, Feb 22, 2008 at 6:30 AM, Jimmy,Jing Lv <fi...@gmail.com> wrote:
>> >> > Hi All,
>> >> >
>> >> > As discussed before, we can start JDWP updating and improving.
>> >> > IMHO, let's start from the easiest way, updating to java 6.
>> >> > My proposal is:
>> >> > 1. Setup a branch of JDKTools for java6 in harmony repository
>> >> > 2. add/improve JDWP functions into java6 level. As the main updating
>> >> > for java6 JDWP is about JDWP-protocol, it seems no much effect on VM
>> >> > and debugger.
>> >> >
>> >> > As M5 freeze will be done at the end of this week, may start
>> >> > from next week on. Any comments/suggestions/Volunteers? Thanks!
>> >> >
>> >> > --
>> >> >
>> >> > Best Regards!
>> >> >
>> >> > Jimmy, Jing Lv
>> >> > China Software Development Lab, IBM
>> >> >
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> With best regards,
>> >>
>> >> Alexei
>> >>
>> >>
>> >
>> >
>> >
>>
>> --
>> Oliver Deakin
>> Unless stated otherwise above:
>> IBM United Kingdom Limited - Registered in England and Wales with number 741598.
>> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>>
>>
>>
>
>
>
>
--
Oliver Deakin
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
Re: [JDKTools][JDWP] Shared memory transport (was: Let's start JDWP java6 updating)
Posted by Sean Qiu <se...@gmail.com>.
Good news :)
2008/3/13, Alexei Fedotov <al...@gmail.com>:
> Oliver,
> That is great! BTW, which API are you using for shared memory access?
> Is it a part of the portlib?
>
> Thanks!
>
>
> On Thu, Mar 13, 2008 at 3:51 PM, Oliver Deakin
> <ol...@googlemail.com> wrote:
> > Hi Jimmy/Alexei,
> >
> > Im starting to look at implementing shared memory transport for jdwp.
> > It's very early days at the moment, but I have been able to open the
> > shared memory space (created by the RI running as server) and read some
> > data from it. I have also been able to mirror this behaviour, with
> > Harmony running in server mode. I will start to check in some changes
> > soon, initially for the build system to start building dt_shmem.dll on
> > Windows. After that I will start checking in some of my code and add
> > some changes to the jpda test setup so it can run the tests in shared
> > memory mode.
> >
> > Regards,
> > Oliver
> >
> > Jimmy,Jing Lv wrote:
> > > Hi,
> > >
> > > 2008/2/22, Alexei Fedotov <al...@gmail.com>:
> > >
> > >> Jimmy,
> > >>
> > >> I fully support your idea, but cannot follow the discussion fully. The
> > >> old thread mostly discussed a shared memory protocol, didn't it? This
> > >> thread no longer mentions a shared memory, but discusses an API update
> > >> instead. May be all these things are parts of the whole picture, but
> > >> the picture slips out of my mind. I would suggest being merciful to my
> > >> google-weakened brain and write some justifications of the decision
> > >> taken.
> > >>
> > >>
> > >
> > > Yes, I never forget shared memory, but it seems we need more
> > > information of that (according to the conclusion of last discussion).
> > > However java6 updating is easier to work on and we've got all
> > > information on java spec, as a result, IMO, we'd better start from the
> > > easy beginning, and leave hard work alone until we find some other way
> > > to resolve it, do you think so? :) (Maybe someone already has a plan
> > > on it :)
> > > BTW, as today is friday, have a nice weekend :)
> > >
> > >
> > >> For example, I believe Mikhail L. justification: "I don't think that
> > >> time and efforts are an issue. The time flies when you are having fun
> > >> :)" is quite explanatory. Or you may come up with something more
> > >> rational.
> > >>
> > >> Thanks.
> > >>
> > >>
> > >> On Fri, Feb 22, 2008 at 6:30 AM, Jimmy,Jing Lv <fi...@gmail.com> wrote:
> > >> > Hi All,
> > >> >
> > >> > As discussed before, we can start JDWP updating and improving.
> > >> > IMHO, let's start from the easiest way, updating to java 6.
> > >> > My proposal is:
> > >> > 1. Setup a branch of JDKTools for java6 in harmony repository
> > >> > 2. add/improve JDWP functions into java6 level. As the main updating
> > >> > for java6 JDWP is about JDWP-protocol, it seems no much effect on VM
> > >> > and debugger.
> > >> >
> > >> > As M5 freeze will be done at the end of this week, may start
> > >> > from next week on. Any comments/suggestions/Volunteers? Thanks!
> > >> >
> > >> > --
> > >> >
> > >> > Best Regards!
> > >> >
> > >> > Jimmy, Jing Lv
> > >> > China Software Development Lab, IBM
> > >> >
> > >>
> > >>
> > >>
> > >>
> > >> --
> > >> With best regards,
> > >>
> > >> Alexei
> > >>
> > >>
> > >
> > >
> > >
> >
> > --
> > Oliver Deakin
> > Unless stated otherwise above:
> > IBM United Kingdom Limited - Registered in England and Wales with number 741598.
> > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
> >
> >
>
>
>
>
> --
> With best regards,
>
> Alexei
>
--
Sean, Xiao Xia Qiu
China Software Development Lab, IBM
Re: [JDKTools][JDWP] Shared memory transport (was: Let's start JDWP java6 updating)
Posted by Alexei Fedotov <al...@gmail.com>.
Oliver,
That is great! BTW, which API are you using for shared memory access?
Is it a part of the portlib?
Thanks!
On Thu, Mar 13, 2008 at 3:51 PM, Oliver Deakin
<ol...@googlemail.com> wrote:
> Hi Jimmy/Alexei,
>
> Im starting to look at implementing shared memory transport for jdwp.
> It's very early days at the moment, but I have been able to open the
> shared memory space (created by the RI running as server) and read some
> data from it. I have also been able to mirror this behaviour, with
> Harmony running in server mode. I will start to check in some changes
> soon, initially for the build system to start building dt_shmem.dll on
> Windows. After that I will start checking in some of my code and add
> some changes to the jpda test setup so it can run the tests in shared
> memory mode.
>
> Regards,
> Oliver
>
> Jimmy,Jing Lv wrote:
> > Hi,
> >
> > 2008/2/22, Alexei Fedotov <al...@gmail.com>:
> >
> >> Jimmy,
> >>
> >> I fully support your idea, but cannot follow the discussion fully. The
> >> old thread mostly discussed a shared memory protocol, didn't it? This
> >> thread no longer mentions a shared memory, but discusses an API update
> >> instead. May be all these things are parts of the whole picture, but
> >> the picture slips out of my mind. I would suggest being merciful to my
> >> google-weakened brain and write some justifications of the decision
> >> taken.
> >>
> >>
> >
> > Yes, I never forget shared memory, but it seems we need more
> > information of that (according to the conclusion of last discussion).
> > However java6 updating is easier to work on and we've got all
> > information on java spec, as a result, IMO, we'd better start from the
> > easy beginning, and leave hard work alone until we find some other way
> > to resolve it, do you think so? :) (Maybe someone already has a plan
> > on it :)
> > BTW, as today is friday, have a nice weekend :)
> >
> >
> >> For example, I believe Mikhail L. justification: "I don't think that
> >> time and efforts are an issue. The time flies when you are having fun
> >> :)" is quite explanatory. Or you may come up with something more
> >> rational.
> >>
> >> Thanks.
> >>
> >>
> >> On Fri, Feb 22, 2008 at 6:30 AM, Jimmy,Jing Lv <fi...@gmail.com> wrote:
> >> > Hi All,
> >> >
> >> > As discussed before, we can start JDWP updating and improving.
> >> > IMHO, let's start from the easiest way, updating to java 6.
> >> > My proposal is:
> >> > 1. Setup a branch of JDKTools for java6 in harmony repository
> >> > 2. add/improve JDWP functions into java6 level. As the main updating
> >> > for java6 JDWP is about JDWP-protocol, it seems no much effect on VM
> >> > and debugger.
> >> >
> >> > As M5 freeze will be done at the end of this week, may start
> >> > from next week on. Any comments/suggestions/Volunteers? Thanks!
> >> >
> >> > --
> >> >
> >> > Best Regards!
> >> >
> >> > Jimmy, Jing Lv
> >> > China Software Development Lab, IBM
> >> >
> >>
> >>
> >>
> >>
> >> --
> >> With best regards,
> >>
> >> Alexei
> >>
> >>
> >
> >
> >
>
> --
> Oliver Deakin
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>
>
--
With best regards,
Alexei