[Cuis-dev] What's the difference between these image files?

David T. Lewis lewis at mail.msen.com
Sat Jun 29 15:20:59 PDT 2019


On Sat, Jun 29, 2019 at 06:40:05PM -0300, Gast??n Caruso via Cuis-dev wrote:
> I see, thanks for the complete answer!

+1 very good explanation.


> 
> @Juan Vuletich <juan at jvuletich.org> is the v3 image updated like the
> others? Do you think it's worth it to keep it in the same package with the
> other two images?
> Thinking about minimalism and what the users will see when they download
> cuis.

I think it is very cool that Cuis is able to maintain these three image
formats with a single identical Cuis update stream.

In Squeak we did not try to continue maintaining the V3 image because it
would be "too much work". Juan proved this to be wrong. It just goes to 
show, if the engineering is done well then the maintenance is easy.

I follow this issue closely, partly because I am a maintainer for the traditional
VM (http://squeakvm.org), and also because I maintain an unofficial V3
"Squeak trunk" update stream (http://www.squeaksource.com/TrunkUpdateStreamV3).

Cudos to Cuis for maintaining a clean and reliable update stream that works 
across a range of VMs and image formats.

Dave


> 
> Thanks again!
> 
> El s??b., 29 jun. 2019 a las 17:59, Phil B (<pbpublist at gmail.com>) escribi??:
> 
> > The short answer is if you're on 64-bit x86, Cuis5.0-3795.image is the one
> > you probably want.  If you're on 32-bit hardware (or ARM),
> > Cuis5.0-3795-32.image is probably what you want.  The longer answer:
> >
> > 1) the *-32.image is a 32-bit image and is generally useful for running on
> > 32-bit hardware or for compatibility reasons.  It's also the most common
> > image people run on ARM systems since there isn't currently a Cog/Spur for
> > 64-bit ARM yet.  This image will run under the latest versions of the
> > 32-bit VMs and is functionally (virtually*) identical to the 64-bit image.
> >
> > 2) the *-v3.image is an old image format used by older Squeak VMs (i.e.
> > what came before Eliot's Cog and now Spur VMs) and I think is mainly only
> > of historical/porting interest today.  The VMs are easier to
> > build/modify/understand at the cost of much lower performance.  This image
> > will only run under older versions of the VM which long ago stopped being
> > actively developed. (they are still maintained to keep running, but no one
> > is adding new features to them that I'm aware of)   This is one area where
> > Cuis is both a little cool and a little weird: the *current* Cuis image can
> > still run under the V3 VM which Squeak/Pharo dropped years ago.  Might be
> > cool if you want to see what's going on behind the scenes in a simpler to
> > follow VM.
> >
> > 3) the final one is the 64-bit image which most people on modern x86
> > systems run.  It's functionally (virtually*) identical to the 32-bit
> > image/VM but much faster and of course can run much larger images due the
> > larger address space.
> >
> > There might be some situation-specific reasons to run an alternate VM.
> > For example, let's say you're running on 64-bit x86 hardware but need to
> > call out via 32-bit FFI to some old or proprietary library and either can't
> > or won't update it... that might be a reason to look at running the 32-bit
> > VM/image even though you could otherwise run the 64-bit VM/image.  Another
> > area where having this variety of image/VM support has really made a
> > difference for Cuis is when troubleshooting potential VM issues to help
> > narrow down what/where an issue is: if you're having a problem that looks
> > like it's a VM issue, fileout/save your packages, filein/load into a
> > different image/VM combination and see if you can reproduce.
> >
> > * I say 'virtually' identical because IIRC, there are slight but necessary
> > changes in the class hierarchy around Character and SmallInteger classes.
> > But whenever possible, they should behave identically.
> >
> > On Sat, Jun 29, 2019 at 3:58 PM Gast??n Caruso via Cuis-dev <
> > cuis-dev at lists.cuis.st> wrote:
> >
> >> Hi, I have a question, what's the difference between and purpose of
> >> Cuis5.0-3795-32.image, Cuis5.0-3795-v3.image and Cuis5.0-3795.image ?
> >>
> >> Thanks in advance.
> >> Gast??n
> >> --
> >> Cuis-dev mailing list
> >> Cuis-dev at lists.cuis.st
> >> https://lists.cuis.st/mailman/listinfo/cuis-dev
> >>
> >

> -- 
> Cuis-dev mailing list
> Cuis-dev at lists.cuis.st
> https://lists.cuis.st/mailman/listinfo/cuis-dev



More information about the Cuis-dev mailing list