harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From meh...@cs.man.ac.uk
Subject "Harmony class library support in JikesRVM"
Date Sun, 06 Apr 2008 10:00:43 GMT
Hi Developers,

My name is Rahul Mehta. I am interested in "Harmony class library support" 
in JikesRVM project through GSoC. I wrote a proposal with the guidance of 
Andrew John Hughes, Ian Rogers and Tim Ellison.

I am sending this proposal as plain/txt format for Apache developer's 
consideration and will be glad if you can comment on this. You can find 
this on Google web app along with the ‘Detailed Description’ section.

The project proposal is given below:

Best Regards,


Project Proposal


Presently, JikesRVM is using GNU Classpath libraries [1] it would be 
interesting to integrate the Apache Harmony class libraries [2] into 
JikesRVM. Not only would this enable a variety in the implementation of 
core collection classes that would be interesting for research with the 
JikesRVM. They would also provide a work around for when functionality is 
missing from GNU Classpath such as missing management APIs and the new 
row-set APIs in Java 5.

Project Plan:

My objective will be to complete the following major tasks. However, I am 
investigating the other tasks, issues and solutions. I believe these tasks 
will enhance the JikesRVM’s (by integrating with Apache Harmony class 
library) in terms of functionality and completeness.
I will focus on the following tasks:

 Focus on VM Interfaces as current implementation of VM Interfaces 
is written in Java (as JikesRVM is written in Java that means the current 
VM Interfaces are written in Java rather than native code)

 Focus on the implementation of some Kernel java classes (like 

 Investigate how JikesRVM can be integrated with Harmony’s 
threading and runtime models as Harmony provides its own Thread Manager and 
runtime modules

How this will work:

Jikes RVM will communicate with Apache Harmony class libraries through a 
set of kernel java classes (The Kernel Java classes are those classes which 
are tied to the structure of the VM, or whose structure is known by the VM, 
like java.lang.Class) and VM Interface* (which contains the VM entry points 
required by other class library natives) as described in the Harmony Class 
Library Porting Documentation [3].

This task will include several class implementation. Possibly, we can use 
the DRLVM implementations of these classes. Generally, the IBM 
implementations rely on the presence of (typically) VM specific natives to 
implement the required Java APIs so we can use them and can provide our own 
implementation for those classes. [3]

Consideration on Key areas:

 Implementation of Kernel java classes  Implementation of 
VM Interface in native code  Investigatation about how JikesRVM can 
be integrated with Apache Harmony’s Thread Manager and other runtime 

Road Map:

 Publish my goals to the JikesRVM community (mailing list) and try 
to get some feedback and suggestions on my plans. (until mid of May) 
 Implement the certain classes (Kernel Java Classes and VM 
Interface) (until July Starting )  Testing of new implementation 
with the help of the JikesRVM community. (until mid of August)

* The VM Interface forms the boundary between the class libraries and the 
Jikes Virtual machine, and allows them to interact with each other.


[1] JikesRVM, http://jikesrvm.org/

[2] Apache Harmony Class Library, 

[3] Harmony Class Library Porting Documentation, 

[4] Virtual Machine Interface, 


I am a computer science graduate. At present enrolled with IGNOU, India in 
Master in Computer Applications program. I have already earned my Master 
degree in Advanced Computer Science from University Of Manchester in 2007. 
I obtained one Master degree in Information Technology from Punjabi 
University, India. Before that, I studied Bachelor in Computer Applications 
from Meerut University, India. I have good Java programming experience. I 
have already worked on threading model of JikesRVM in my Master thesis.


View raw message