Just wanted to say "thank you". This was an interesting discussion to see and useful to helping me understand NCAI.
Tim Ilya Berezhniuk wrote: > Vasily, > > Thank you for explanation and answers. > Now the approach with external debugging looks much better for me. > > > 2007/10/16, Vasily Levchenko <[EMAIL PROTECTED]>: >> sds >> >> On 10/14/07, Ilya Berezhniuk <[EMAIL PROTECTED]> wrote: >>> Hi all, >>> >>> Let me speak to NCAI debugging approach. >>> >>> 1) JVMTI is implemented using self-process debugging; it will never be >>> implemented by another way, I guess. >> >> Sounds reasonable. But let's look closer, JVMTI is a way of debugging of >> managed code and that is enough isolation, VM border doesn't provide >> isolation for native debugging, that is a reason why native debuggers except >> kernel debuggers are isolated with process borders. >> >> >> So NCAI merely extends JVMTI >>> approach to native code debugging. >> >> With NCAI we try to apply the same mechanisms for unmanaged code, like we >> do it for managed and that I think is not so good. For full function >> debugger (long-term) we will have to make extension interface but it will >> work in debugger address space like thread_db or any other interface >> provided by OS. >> >> Using external debugger for debugging native code will lead to using 2 >>> different debuggers simultaneously - it can lead to conflicts between >>> the debuggers. >>> >>> 2) Any debugger should be aware about some VM internals when debugging >>> JNI code. >> >> I absolutely agree with you, opposite solutions will be led to less >> adoption, instead I prefer debugger interfaces for VM-specific modules, like >> it was already done for OS specific modules. >> >> >> So external debugger would use some callbacks functions in >>> VM. >> >> External debugger can call debugee functions that could be helper function >> in JVMTI agent. >> >> But those callbacks would be not for debugging itself, but for >>> exposing some raw info about VM internals. >> >> It not necessary to get internal VM information for JVMTI based solution ;) >> JVMTI interface provides enough information to manage java world from >> external debugger the difference between JDI/JDWP/JVMTI is in method of >> sending command, debugger use ptrace for writing data directly into the >> debugee address space. >> >> Quite the opposite, NCAI is >>> well defined debug interface which provides processed data in a form >>> like JVMTI does. >>> >>> >>> 2007/10/12, Pavel Pervov <[EMAIL PROTECTED]>: >>>> +1 for accepting it now. NCAI is a good extension to mechanisms >>> naturally >>>> provided by Java debugger. >>>> >>>> On 10/12/07, Mikhail Loenko <[EMAIL PROTECTED]> wrote: >>>>> We now have all requisite paperwork in place for >>>>> http://issues.apache.org/jira/browse/HARMONY-4689, so let's vote to >>>>> accept: >>>>> >>>>> [ ] +1 Accept this contribution >>>>> [ ] -1 Reject because... >>>>> >>>>> As usual, 3 days unless someone complains they need more time. >>>>> >>>> >>>> >>>> -- >>>> Pavel Pervov, >>>> Intel Enterprise Solutions Software Division >>>> >>> >>> -- >>> >>> Ilya >>> >> >> >> -- >> --vvl >> > >
