You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Ilya Berezhniuk (JIRA)" <ji...@apache.org> on 2007/08/29 02:31:30 UTC

[jira] Created: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

[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


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.


[jira] Updated: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Ilya Berezhniuk (JIRA)" <ji...@apache.org>.
     [ 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_13__changes_in_patch.diff
                2007_11_13__changes_in_existing_VM_files.patch
                2007_11_13__patch_for_new_files_from_bulk.patch

Here are the updated patches for the bulk; their meaning is the same as for previous patches.

Besides rebase to latest Harmony state, these patches also contain last improvements in Threads module and fixes in 3 suspend/resume tests.

> [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
>            Assignee: Gregory Shimansky
>         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, 2007_11_13__changes_in_existing_VM_files.patch, 2007_11_13__changes_in_patch.diff, 2007_11_13__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.


[jira] Updated: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Ilya Berezhniuk (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ilya Berezhniuk updated HARMONY-4689:
-------------------------------------

    Attachment: ncai_bulk.zip

> [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.


[jira] Closed: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Ilya Berezhniuk (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ilya Berezhniuk closed HARMONY-4689.
------------------------------------


Everything looks fine.

Thanks Gregory, all.


> [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
>            Assignee: Gregory Shimansky
>         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, 2007_11_13__changes_in_existing_VM_files.patch, 2007_11_13__changes_in_patch.diff, 2007_11_13__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.


[jira] Updated: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Ilya Berezhniuk (JIRA)" <ji...@apache.org>.
     [ 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
                2007_11_11__changes_in_existing_VM_files.patch
                2007_11_11__patch_for_new_files_from_bulk.patch

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 bulk.


> [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.


[jira] Commented: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Mikhail Loenko (JIRA)" <ji...@apache.org>.
    [ 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.


[jira] Commented: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-4689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12541825 ] 

Gregory Shimansky commented on HARMONY-4689:
--------------------------------------------

Bulk archive and incomplete contribution checklist are committed at 594202.

> [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
>            Assignee: Gregory Shimansky
>         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.


[jira] Resolved: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky resolved HARMONY-4689.
----------------------------------------

    Resolution: Fixed

Contribution is committed at 597138.

> [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
>            Assignee: Gregory Shimansky
>         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, 2007_11_13__changes_in_existing_VM_files.patch, 2007_11_13__changes_in_patch.diff, 2007_11_13__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.


[jira] Assigned: (HARMONY-4689) [drlvm][jvmti] JVMTI Extension: Native Code Access Interface (NCAI) implementation

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky reassigned HARMONY-4689:
------------------------------------------

    Assignee: Gregory Shimansky

> [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
>            Assignee: Gregory Shimansky
>         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.