You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Enrico Migliore <en...@fatti.com> on 2006/04/01 12:19:10 UTC

SableVM or JCHEVM?

Hi,

 I've followed the discussion about the SableVM code donation to the 
Apache foundation, but I still need to understand a couple of things:


SableVM or JCHEVM?
------------------------
At the moment there two virutual machines: which of the two should one 
choose to work on?

SableVM svn access
---------------------
I can't find the SableVM repository in the Harmony site, can somebody 
address me where to find it?


Enrico



---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


JCHEVM

Posted by Enrico Migliore <en...@fatti.com>.
Mark Hindess wrote:

>On 4/1/06, Enrico Migliore <en...@fatti.com> wrote:
>  
>
>>I, and others, ported JCHEVM to Cygwin, during the past 2 months; there
>>are still a couple of things to fix, but the main work is done.
>>
>>The port was made in order to be able to "study"  JCHEVM on the Windows
>>platform. I understand, in fact, that having the Cygwin layer running on
>>top of Windows may compromise speed performances of any JVM. In
>>principle, the "-no-cygwin" option of GCC should allow us to produce an
>>executable that doesn't need the cygwin1.dll library, but:
>>
>> 1. I haven't yet tried to enable it
>> 2. The functionality of  cygwin1.dll might be embedded in the
>>executable file (in this case the Cygwin layer is hidden in the .exe)
>>    
>>
>
>I don't think it does include cygwin in any form.  It builds against
>the mingw libraries instead.
>
>Regards,
> Mark.
>
>--
>Mark Hindess <ma...@googlemail.com>
>IBM Java Technology Centre, UK.
>
>  
>

Hi Mark,

 that's interesting and I think it's worth trying to build JCHEVM in 
that way.

 I don't know though if Windows issues the signals that JCHEVM needs....

Enrico


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: SableVM or JCHEVM?

Posted by Mark Hindess <ma...@googlemail.com>.
On 4/1/06, Enrico Migliore <en...@fatti.com> wrote:
>
> I, and others, ported JCHEVM to Cygwin, during the past 2 months; there
> are still a couple of things to fix, but the main work is done.
>
> The port was made in order to be able to "study"  JCHEVM on the Windows
> platform. I understand, in fact, that having the Cygwin layer running on
> top of Windows may compromise speed performances of any JVM. In
> principle, the "-no-cygwin" option of GCC should allow us to produce an
> executable that doesn't need the cygwin1.dll library, but:
>
>  1. I haven't yet tried to enable it
>  2. The functionality of  cygwin1.dll might be embedded in the
> executable file (in this case the Cygwin layer is hidden in the .exe)

I don't think it does include cygwin in any form.  It builds against
the mingw libraries instead.

Regards,
 Mark.

--
Mark Hindess <ma...@googlemail.com>
IBM Java Technology Centre, UK.

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: SableVM or JCHEVM?

Posted by Geir Magnusson Jr <ge...@pobox.com>.

Enrico Migliore wrote:
> Hi,
> 
> I've followed the discussion about the SableVM code donation to the 
> Apache foundation, but I still need to understand a couple of things:
> 
> 
> SableVM or JCHEVM?
> ------------------------
> At the moment there two virutual machines: which of the two should one 
> choose to work on?
> 
> SableVM svn access
> ---------------------
> I can't find the SableVM repository in the Harmony site, can somebody 
> address me where to find it?

SableVM in it's entirety has not been donated to the ASF - rather, it 
was relicensed 'in place' where it is, and will remain there for the 
time being.

That said, one of our goals was to bridge communities through 
architecture and technology, and I think we've done that here.

Work on what interests you.  We definitely need go get JCHEVM working 
with the Harmony classlibrary, and Weldon's bridge is a great first 
step, and one I think should be completed, because there are other VMs 
that could use it (in theory) to be able to work with Harmony classlib 
as well as the GNU Classlib.

geir

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: SableVM or JCHEVM?

Posted by Enrico Migliore <en...@fatti.com>.
Hi Etienne,

>2 things:
>
>1- SableVM has, from the beginning, put portability as one of its main
>objectives.  This is why we went all the way to write an inline-threaded
>interpreter engine, as to get as much speed without sacrificing
>portability and requiring knowledge of intimate details of the target
>platform (assembly language, ABI, etc.).  We also kept easier to port
>interpreters (switch and direct threaded).  
>
Good.

>The switch-threaded
>interpreter is a pure ISO C interpreter, does not emit a single gcc
>warning with -pedantic on.  
>
That's what I like most: source code that compiles clean :-)
I bet that the -ansi flag does the same.

>The other two interpreters require gcc
>extensions (and/or a little inline-assembly code).
>
>2- The SableVM project will not be abandoned any time soon.  It is one
>of my main research vehicles, and I am a relatively young tenured
>professor at UQAM.  Unlike many other open source JVMs which are
>primarily the project of students, SableVM is a project driven by a paid
>professor.
>
>  
>
I see...

>You should chose to work on the project that you feel most comfortable
>to contribute to.  I don't know of any open-source VM that would reject
>contributions (at least, without a good reason).  :-)
>
>Have fun!
>
>Etienne
>  
>
I'll download and build the SableVM source code and play a little with it.

ciao,
Enrico

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: SableVM or JCHEVM?

Posted by Etienne Gagnon <eg...@sablevm.org>.
Hi Enrico,

Enrico Migliore wrote:
> My ultimate goal, is contributing to the development of a reliable JVM
> which will run on the ARM platform, because I work in the embedded
> systems area. I don't care if  such a goal will be achieved in 2 or 3
> years, the only thing  I care is not to waste my time in volunteering on
> a thing that may be abandoned.

2 things:

1- SableVM has, from the beginning, put portability as one of its main
objectives.  This is why we went all the way to write an inline-threaded
interpreter engine, as to get as much speed without sacrificing
portability and requiring knowledge of intimate details of the target
platform (assembly language, ABI, etc.).  We also kept easier to port
interpreters (switch and direct threaded).  The switch-threaded
interpreter is a pure ISO C interpreter, does not emit a single gcc
warning with -pedantic on.  The other two interpreters require gcc
extensions (and/or a little inline-assembly code).

2- The SableVM project will not be abandoned any time soon.  It is one
of my main research vehicles, and I am a relatively young tenured
professor at UQAM.  Unlike many other open source JVMs which are
primarily the project of students, SableVM is a project driven by a paid
professor.

You should chose to work on the project that you feel most comfortable
to contribute to.  I don't know of any open-source VM that would reject
contributions (at least, without a good reason).  :-)

Have fun!

Etienne

-- 
Etienne M. Gagnon, Ph.D.            http://www.info2.uqam.ca/~egagnon/
SableVM:                                       http://www.sablevm.org/
SableCC:                                       http://www.sablecc.org/

Re: SableVM or JCHEVM?

Posted by Enrico Migliore <en...@fatti.com>.
Hi Etienne,

>Hi Enrico,
>
>SableVM's trunk ( svn co svn://svn.sablevm.org/sablevm/trunk ) is now
>licensed under the Apache License 2.0.  As SableVM is maintained by a
>number of developers, but is also used by many of my students to develop
>new VM components and do research, it was deemed more appropriate not to
>put SableVM in Harmony's repository for the following reasons:
>
>1- Harmony's repository is not the appropriate place for creating many,
>many branches to do academic research on VMs.
>
>2- Keeping a clear Intellectual Property trail would be a nightmare if
>SableVM's development and maintenance was spread over two distinct
>repositories.
>
>3- According to Geir, integration of the VM into Harmony's repository is
>not a preriquisite for J2SE certification.
>
>  
>
ok, got it :-)

>The SableVM project has chosen to integrate our VM with Harmony's class
>library.  In particular, I have started with a student to implement
>Harmony's VMI.  Our objective is to fully adapt SableVM to work with
>Harmony's VMI "as is".  If I understand JCHEVM's approach, they are
>going in a different direction; they are developing a "GNU Classpath
>compatibility layer" so that Classpath-based VMs could migrate to
>Harmony with little effort.
>
>  
>
ok

>SableVM's goal is to become entirely dependent on Harmony's LUNI
>packages, as we do like Harmony's VMI.  This will have the consequence
>of breaking SableVM's compatibility to Classpath's LUNI packages.  Yet
>we do not see this as a problem;  you will still be able to use
>Classpath other packages with SableVM (awt, swing, etc.).
>
>So, if you wish to contribute to SableVM for helping with the Harmony
>integration, please join us at http://sablevm.org.  If you are
>interested, we'll use the SableVM developer mailing-list to coordonate
>the Harmony adaptation effort.
>
>  
>
I, and others, ported JCHEVM to Cygwin, during the past 2 months; there 
are still a couple of things to fix, but the main work is done.

The port was made in order to be able to "study"  JCHEVM on the Windows 
platform. I understand, in fact, that having the Cygwin layer running on 
top of Windows may compromise speed performances of any JVM. In 
principle, the "-no-cygwin" option of GCC should allow us to produce an 
executable that doesn't need the cygwin1.dll library, but:

 1. I haven't yet tried to enable it
 2. The functionality of  cygwin1.dll might be embedded in the 
executable file (in this case the Cygwin layer is hidden in the .exe)

My ultimate goal, is contributing to the development of a reliable JVM 
which will run on the ARM platform, because I work in the embedded 
systems area. I don't care if  such a goal will be achieved in 2 or 3 
years, the only thing  I care is not to waste my time in volunteering on 
a thing that may be abandoned.

Enrico




---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: SableVM or JCHEVM?

Posted by Etienne Gagnon <eg...@sablevm.org>.
Hi Enrico,

SableVM's trunk ( svn co svn://svn.sablevm.org/sablevm/trunk ) is now
licensed under the Apache License 2.0.  As SableVM is maintained by a
number of developers, but is also used by many of my students to develop
new VM components and do research, it was deemed more appropriate not to
put SableVM in Harmony's repository for the following reasons:

1- Harmony's repository is not the appropriate place for creating many,
many branches to do academic research on VMs.

2- Keeping a clear Intellectual Property trail would be a nightmare if
SableVM's development and maintenance was spread over two distinct
repositories.

3- According to Geir, integration of the VM into Harmony's repository is
not a preriquisite for J2SE certification.

The SableVM project has chosen to integrate our VM with Harmony's class
library.  In particular, I have started with a student to implement
Harmony's VMI.  Our objective is to fully adapt SableVM to work with
Harmony's VMI "as is".  If I understand JCHEVM's approach, they are
going in a different direction; they are developing a "GNU Classpath
compatibility layer" so that Classpath-based VMs could migrate to
Harmony with little effort.

SableVM's goal is to become entirely dependent on Harmony's LUNI
packages, as we do like Harmony's VMI.  This will have the consequence
of breaking SableVM's compatibility to Classpath's LUNI packages.  Yet
we do not see this as a problem;  you will still be able to use
Classpath other packages with SableVM (awt, swing, etc.).

So, if you wish to contribute to SableVM for helping with the Harmony
integration, please join us at http://sablevm.org.  If you are
interested, we'll use the SableVM developer mailing-list to coordonate
the Harmony adaptation effort.

See below.

Enrico Migliore wrote:
> SableVM or JCHEVM?
> ------------------------
> At the moment there two virutual machines: which of the two should one
> choose to work on?

I would say:

- If you want to work on a Classpath layer => JCHEVM
- If you want to fully implement VMI => SableVM


> SableVM svn access
> ---------------------
> I can't find the SableVM repository in the Harmony site, can somebody
> address me where to find it?

Contributing to SableVM is done in SableVM's repository at
http://sablevm.org.  I am in the process of updating our contribution
policy to better reflect the recent license change.  Yet, it retain much
of the current policy:

http://sablevm.org/svn/repository/sablevm/trunk/doc/contribution_policy.txt


You're welcome to help! :-)

Etienne

-- 
Etienne M. Gagnon, Ph.D.            http://www.info2.uqam.ca/~egagnon/
SableVM:                                       http://www.sablevm.org/
SableCC:                                       http://www.sablecc.org/

Re: SableVM or JCHEVM?

Posted by Tim Ellison <t....@gmail.com>.
This may be obvious, so excuse me if it is...

Part of the Harmony 'modular-design' philosophy is to encourage multiple
core VM, GC, JIT, class library, etc. combinations.

There is room for many VMs, and the fact that SableVM has relicensed and
is coding to the VMI does not in any way mean that work on JCHEVM should
be scaled back.

I'd encourage you to work wherever your interests and skills have the
best effect.

Regards,
Tim

Enrico Migliore wrote:
> Hi,
> 
> I've followed the discussion about the SableVM code donation to the
> Apache foundation, but I still need to understand a couple of things:
> 
> 
> SableVM or JCHEVM?
> ------------------------
> At the moment there two virutual machines: which of the two should one
> choose to work on?
> 
> SableVM svn access
> ---------------------
> I can't find the SableVM repository in the Harmony site, can somebody
> address me where to find it?
> 
> 
> Enrico
> 
> 
> 
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> 
> 

-- 

Tim Ellison (t.p.ellison@gmail.com)
IBM Java technology centre, UK.

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org