Santiago Gala wrote:
El lun, 16-05-2005 a las 16:08 +0530, Subramanian, Sundar escribió:
(...)

I guess what Brad is asking is for a snapshot of the state of JVM.
This
would be really useful to migrate stuff from one environment to
another
preserving the underlying state.


I have mixed feelings about having a "save image" __a la__ Smalltalk, if
this is what you are meaning. While delivering an image looks tempting,
state gets corrupt in unpredictable ways, and having ways to track
changes becomes a nightmare.

The Smalltalk community has worked hard in this (hard) problem, but I'm
still not sure if it would make sense in the java world. Java is a
system-oriented language, and the ability to save the whole VM state and
recover from this saved image would bring additional constraints to the
Virtual Machine implementation. For instance, machine specific JIT code
should be invalidated upon save, negating a substantial part of the
advantages of a saved image (faster startup).

This said, if VM implementors out there find easy ways to meet these
constraints w/o burdening runtime or memory requirements, it could be an
area for experimenting.

well, there are several things here:

1) saving the JVM memory on disk for faster startup (don't think it makes sense on the server, but on the client it does, think about freezing your eclipse and start it up again as you left it, sure will take less time)

2) persisting "thread continuations" on disk (this *IS* something that makes sense on the server, and practially *the* reason of my interest in Harmony)

these have nothing to do with system portability and image corruption is easily checked with a checksum, in case you want that.

 3) the above, but across systems.

I would rule #3 out of scope: bytecode was invented for that, let's not reinvent all the wheels at once.

--
Stefano.



Reply via email to