You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by me...@cs.man.ac.uk on 2008/04/06 12:00:43 UTC

"Harmony class library support in JikesRVM"

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,
Rahul

-------------------------------

Project Proposal


Synopsis:

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 
java.lang.Class)

 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 
modules

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.


References:

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

[2] Apache Harmony Class Library, 
http://harmony.apache.org/subcomponents/classlibrary/index.html

[3] Harmony Class Library Porting Documentation, 
http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/doc/kernel/kernel.txt?revision=476395&view=markup

[4] Virtual Machine Interface, 
http://mail.openjdk.java.net/pipermail/challenge-discuss/2008-March/000084.html


Biography:

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.

-----------------------------------


Re: "Harmony class library support in JikesRVM"

Posted by me...@cs.man.ac.uk.
Hi Alexei,

Thanks for your quick and informative reply. I will update this accordingly.

Best Regards,
Rahul

On Apr 6 2008, Alexei Fedotov wrote:

> Hello Rahul,
> >From a technical point of view this is a very interesting proposal.
> Thanks for challenging a task which may bring Harmony more interest
> and customers.
> 
> BTW, I noticed that you mentioned getting feedback, testing,
> publishing and implementing in your proposal. I would rather call
> these items "process oriented" than "deliverable oriented". For me it
> would be more interesting to hear that something works on Jikes +
> Harmony, or even to know where to download a bundle capable of
> launching "Hello, World". Also defining deliverables allows your
> mentors to check if the project is successful.
> 
> Thanks.
> 
> 
> 
> On Sun, Apr 6, 2008 at 2:00 PM,  <me...@cs.man.ac.uk> wrote:
> > 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,
> >  Rahul
> >
> >  -------------------------------
> >
> >  Project Proposal
> >
> >
> >  Synopsis:
> >
> >  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:
> >
> >  &#61607; 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)
> >
> >  &#61607; Focus on the implementation of some Kernel java classes (like
> > java.lang.Class)
> >
> >  &#61607; 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:
> >
> >  &#61607; Implementation of Kernel java classes &#61607; 
> > Implementation of VM Interface in native code &#61607; Investigatation 
> > about how JikesRVM can be integrated with Apache Harmony's Thread 
> > Manager and other runtime modules
> >
> >  Road Map:
> >
> >  &#61607; Publish my goals to the JikesRVM community (mailing list) 
> > and try to get some feedback and suggestions on my plans. (until mid of 
> > May) &#61607; Implement the certain classes (Kernel Java Classes and VM 
> > Interface) (until July Starting ) &#61607; 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.
> >
> >
> >  References:
> >
> >  [1] JikesRVM, http://jikesrvm.org/
> >
> >  [2] Apache Harmony Class Library,
> > http://harmony.apache.org/subcomponents/classlibrary/index.html
> >
> >  [3] Harmony Class Library Porting Documentation, 
> > http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/doc/kernel/kernel.txt?revision=476395&view=markup
> >
> >  [4] Virtual Machine Interface, 
> > http://mail.openjdk.java.net/pipermail/challenge-discuss/2008-March/000084.html
> >
> >
> >  Biography:
> >
> >  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.
> >
> >  -----------------------------------
> >
> >
> 
> 
> 
> 

Re: "Harmony class library support in JikesRVM"

Posted by Alexei Fedotov <al...@gmail.com>.
Hello Rahul,
>From a technical point of view this is a very interesting proposal.
Thanks for challenging a task which may bring Harmony more interest
and customers.

BTW, I noticed that you mentioned getting feedback, testing,
publishing and implementing in your proposal. I would rather call
these items "process oriented" than "deliverable oriented". For me it
would be more interesting to hear that something works on Jikes +
Harmony, or even to know where to download a bundle capable of
launching "Hello, World". Also defining deliverables allows your
mentors to check if the project is successful.

Thanks.



On Sun, Apr 6, 2008 at 2:00 PM,  <me...@cs.man.ac.uk> wrote:
> 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,
>  Rahul
>
>  -------------------------------
>
>  Project Proposal
>
>
>  Synopsis:
>
>  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:
>
>  &#61607; 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)
>
>  &#61607; Focus on the implementation of some Kernel java classes (like
> java.lang.Class)
>
>  &#61607; 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:
>
>  &#61607; Implementation of Kernel java classes &#61607; Implementation of
> VM Interface in native code &#61607; Investigatation about how JikesRVM can
> be integrated with Apache Harmony's Thread Manager and other runtime modules
>
>  Road Map:
>
>  &#61607; Publish my goals to the JikesRVM community (mailing list) and try
> to get some feedback and suggestions on my plans. (until mid of May)
> &#61607; Implement the certain classes (Kernel Java Classes and VM
> Interface) (until July Starting ) &#61607; 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.
>
>
>  References:
>
>  [1] JikesRVM, http://jikesrvm.org/
>
>  [2] Apache Harmony Class Library,
> http://harmony.apache.org/subcomponents/classlibrary/index.html
>
>  [3] Harmony Class Library Porting Documentation,
> http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/doc/kernel/kernel.txt?revision=476395&view=markup
>
>  [4] Virtual Machine Interface,
> http://mail.openjdk.java.net/pipermail/challenge-discuss/2008-March/000084.html
>
>
>  Biography:
>
>  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.
>
>  -----------------------------------
>
>



-- 
With best regards,
Alexei