harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ilya Berezhniuk (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation
Date Mon, 12 Nov 2007 00:46:50 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-4689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Ilya Berezhniuk updated HARMONY-4689:

    Attachment: 2007_11_11__changes_in_patch.diff

I've merged NCAI with latest VM changes.

Major part of changes reflect the changes in VM (mostly in threading and JVMTI), and some
changes reflect few bugs I've found in NCAI and fixed during this merge.
(One of the bugs I've found is VM bug (HARMONY-5106), so merge results are supposed to be
committed after HARMONY-5106).

The following files are attached:

1) 2007_11_11__patch_for_new_files_from_bulk.patch
 - a patch for the new files from the bulk. This patch should be applied to 'vm' folder from
the bulk before copying, or from the root VM folder after copying.

2) 2007_11_11__changes_in_existing_VM_files.patch
 - this patch should be used instead of 'changed.patch' from the bulk.

3) 2007_11_11__changes_in_patch.diff
 - this file is just for information. It's a diff between (2) and 'changed.patch' from the

> [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: 2007_11_11__changes_in_existing_VM_files.patch, 2007_11_11__changes_in_patch.diff,
2007_11_11__patch_for_new_files_from_bulk.patch, 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.

View raw message