You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Francisco Vega <fr...@yahoo.es> on 2005/05/10 13:30:09 UTC

Isolates support

Hi everybody,

planning the development of a new virtual machine at this moment, it 
could be interesting to provide support for isolations.
I supose that most people will know the concept, but in short, the idea 
is to run several Java programs in parallel in one virtual machine (one 
OS process) and at the same time:
- keep all the Java programs in separate and effective sandboxes
- share the maximum resources (decompiled class code,etc)

For an indeep discusion of benefits and a running example you can look 
at http://research.sun.com/projects/barcelona/mvm/
There is also a JSR in process trying to determine a common basis for 
this kind of functionality: JSR-121. In any case, it is not necessary to 
comply to this JSR, because it is in some 'hold' state, but the ability 
to run isolates is a lower layer that can be implemented without any 
kind of JSR commitment.

Regards.



Re: Isolates support

Posted by Doug Lea <dl...@cs.oswego.edu>.
Francisco Vega wrote:
> Hi everybody,
> 
> planning the development of a new virtual machine at this moment, it 
> could be interesting to provide support for isolations.


This is probably off-topic, but...

1. The second (and hopefully final) public review draft of JSR121
    will be available from http://jcp.org very soon.

2. If approved (it would go to vote sometime this summer), a reference
    implementation and TCK will probably be out before the end of year.

3. It is reasonable to expect that Isolates will be a mandatory
    part of J2SE as of 1.7 (J2SE7), but optional before then. Not
    making it in as mandatory for either 1.5 or 1.6 led to these
    hold-states until we decided to rework specs a bit
    to make isolates supportable as a non-core package.

-Doug


Re: Platform Support

Posted by "Geir Magnusson Jr." <ge...@apache.org>.
On May 10, 2005, at 8:20 AM, Rivaaj Jumna wrote:

> Hi
>
> The JVM under discussion will obviously support multiple platforms,  
> running
> under Linux, Windows, etc. Will it also support other platforms as  
> in being
> "modular enough" to be composed to run on Pocket PC or cellphones  
> (j2me) or
> is such support outside of the initial scope for this project?

Yes.  One of the motivations is to reduce the amount of work someone  
wishing to have a compatible version of J2SE on a "new" platform - be  
it new hardware, new operating system, or even new kinds of  
performance optimizations on existing platforms.

geir

-- 
Geir Magnusson Jr                                  +1-203-665-6437
geirm@apache.org



Platform Support

Posted by Rivaaj Jumna <ri...@gmail.com>.
Hi

The JVM under discussion will obviously support multiple platforms, running 
under Linux, Windows, etc. Will it also support other platforms as in being 
"modular enough" to be composed to run on Pocket PC or cellphones (j2me) or 
is such support outside of the initial scope for this project?

Thanks

Re: Isolates support

Posted by Dalibor Topic <ro...@kaffe.org>.
Francisco Vega wrote:
> Hi everybody,
> 
> planning the development of a new virtual machine at this moment, it 
> could be interesting to provide support for isolations.
> I supose that most people will know the concept, but in short, the idea 
> is to run several Java programs in parallel in one virtual machine (one 
> OS process) and at the same time:
> - keep all the Java programs in separate and effective sandboxes
> - share the maximum resources (decompiled class code,etc)

Hi Francisco,

Yeah, isolation is pretty nice. There is already an implementation of 
the APIs as Free Software since 2002, called JanosVM, and available at 
http://www.cs.utah.edu/flux/janos/janosvm.html

"Unlike any available virtual machine, the JanosVM supports multiple, 
separate processes (called "teams" in JanosVM) within a single VM. Based 
on KaffeOS (and thus Kaffe), the JanosVM supports per-team separate 
heaps, per-team garbage collection threads, inter-team thread migration, 
safe cross-team reference objects, and a spiffy tutorial. Designed to 
support asynchronous termination of uncooperative or malicious Java 
bytecode applications, the JanosVM provides robust and scalable 
multi-process support within a single virtual machine."

Some of that code has been merged back into Kaffe, but the largest chunk 
that actually implements isolation remains to be merged in, volunteers 
welcome :) Kaffe developer Patrick Tullman is on the JSR committee, 
afaik, and Godmar Back, the author of KaffeOS, is active on the 
isolation JSR mailing lists as well, afaik.

Kaffe is a bit odd that way, as a lot of exciting things exist in some 
Kaffe fork somewhere, be it mixed-mode engines, isolation, efficient 
jits or parallelized virtual machines. It's just merging everthing back 
in that takes  time. :)

cheers,
dalibor topic