You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Mikhail Loenko (JIRA)" <ji...@apache.org> on 2007/10/26 08:56:50 UTC
[jira] Commented: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension:
Native Code Access Interface (NCAI) implementation
[ https://issues.apache.org/jira/browse/HARMONY-4689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12537855 ]
Mikhail Loenko commented on HARMONY-4689:
-----------------------------------------
vote passed
> [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation
> ----------------------------------------------------------------------------------
>
> Key: HARMONY-4689
> URL: https://issues.apache.org/jira/browse/HARMONY-4689
> Project: Harmony
> Issue Type: New Feature
> Components: Contributions, DRLVM
> Reporter: Ilya Berezhniuk
> Attachments: ncai_bulk.zip
>
>
> The contribution consists of the following component:
> - Native Code Access Interface (NCAI) implementation
> JVMTI enables debugging of Java frames but ignores native frames (e.g., frames within JNI code). NCAI is a prototype JVMTI extension interface that allows the VM to participate in debugging operations on native code as well. At EclipseCon 2007, we demoed this NCAI component along with a seamless mixed Java/JNI debugger that consumes this interface for an Eclipse extension (http://www.eclipsecon.org/2007/index.php?page=sub/&id=4129). We wanted to donate this component which was prototyped using Apache Harmony so that it could help (a) promote mixed Java/JNI debugging discussions and (b) be harvested for potential additional uses within Apache Harmony.
> Below are some details on NCAI implementation.
> 1) Basic features provided by the current NCAI implementation:
> - Setting breakpoints in native code
> - Single stepping through native code with 3 step modes: STEP_INTO, STEP_OVER and STEP_OUT
> - Trapping OS-level signals/exceptions
> - Trapping loading and unloading of dynamic/shared libraries
> - Getting information about loaded dynamic/shared libraries
> - Getting list of threads running in VM process
> - OS-level threads suspending/resuming/terminating
> - Processor registers inspection and modification (for suspended threads)
> - Getting call stack for suspended threads including both Java and native frames
> - Memory inspection and modification
> - Getting OS-level signals/exceptions information
> 2) Harmony base:
> - Bulk contains a patch for existing DRLVM code and a set of new files arranged with DRLVM directory structure
> - Patch was rebased to apply over DRLVM revision r567700
> 3) Current implementation provides all the features listed above for IA-32 architecture only. DRLVM remains buildable on other platforms, but not all the features will work.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.