[Q] About VM and image formats

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[Q] About VM and image formats

Edgar De Cleene
Folks:
Forgive me if this question was answered before.
How I open a 32.bit Squeak.image with a 64.bit VM ?
How I open a 64.bit Squeak.image with a 32.bit VM ?

Thanks in advance


Edgar
@morplenauta





Reply | Threaded
Open this post in threaded view
|

Re: [Q] About VM and image formats

Hannes Hirzel
Hi Edgar

On 9/7/19, Edgar J. De Cleene <[hidden email]> wrote:
> Folks:
> Forgive me if this question was answered before.
> How I open a 32.bit Squeak.image with a 64.bit VM ?

I understand that it is possible to open 32bit legacy image segments
(pr files http://wiki.squeak.org/squeak/885,) in a 64bit image / VM
combination.

See project loading tests for Squeak 5.2 here
http://wiki.squeak.org/squeak/1183

I do not know or I forgot  if it is possible to open a 32bit image
with a 64 bit VM and thus convert the 32 bit image to 64 bit.

May I ask you to do such a test and report the result to the list.

In case this does not work it might be possible to implement such a
feature for the Squeak 5.3 release (maybe with a helper image which
does the 32bit-->64bit conversion)


> How I open a 64.bit Squeak.image with a 32.bit VM ?

I think that is not possible and I guess there will be no
implementation capacity to support this.
But it would be nice to have.

See package
        category: 'System-Object Storage'


Regards
Hannes

Reply | Threaded
Open this post in threaded view
|

Re: [Q] About VM and image formats

K K Subbu
On 08/09/19 10:06 PM, H. Hirzel wrote:
> I do not know or I forgot  if it is possible to open a 32bit image
> with a 64 bit VM and thus convert the 32 bit image to 64 bit.

Yes, with restrictions. It is possible to open a 32b image on a 64b host
but it needs a 32b VM and 32b compatibility libraries and the VM will
not save the image in 64b format.

AFAIK, a VM can be compiled to edit 32b or 64b image but not both.

A 32b compiled VM can run on a 32b or 64b host but it can open a 32b
image only. A 64b VM runs only on 64b host can edit a 64b image only.

32b host  = 32b VM (e.g. cogspur) edits 32b image
64b host  = 32b VM (e.g. cogspur) edits 32b image, or
             64b VM (e.g. cogspur64) edits 64b image.

The first 64b image was carved out by SystemTracer app running on
32bVM+32b image using some magic incantations and supercow powers ;-).

Also, 32b or 64b images come in many formats and each format requires
its own VM (see ImageFormat class).

HTH .. Subbu

Reply | Threaded
Open this post in threaded view
|

Re: [Q] About VM and image formats

K K Subbu
In reply to this post by Edgar De Cleene
On 07/09/19 1:27 PM, Edgar J. De Cleene wrote:> Folks:
 > Forgive me if this question was answered before.
 > How I open a 32.bit Squeak.image with a 64.bit VM ?
 > How I open a 64.bit Squeak.image with a 32.bit VM ?
AFAIK this is not possible. Each image (32b or 64b) has a ImageFormat
number. You can use the ckformat command to get this: E.g.

$ ckformat Squeak5.3alpha-18456-64bit.image
68021
$

The VM has to be matched to that number. You may open a 32b image with a
matching 32b VM on a 64b host if you use compatibility libraries.

The class ImageFormat in the latest images has more details.

HTH .. Subbu