Premature end of image file--so close

Ross Boylan RossBoylan at stanfordalumni.org
Wed May 19 05:31:43 UTC 2004


On Tue, May 18, 2004 at 07:06:48PM -0700, Andreas Raab wrote:
> > I'm imagining going through the image fragment and identifying all
> > pointers to destroyed space and replacing them with .... maybe nil,
> > though I'd need some way of identifying where the damaged pointers
> > were to verify what happened.
> 
> The trouble is that most likely one of the missing objects is the active
> context (often the "last" object in the image file). Restoring it is tricky
> but not impossible.

That sounds bad.  Perhaps I should just try to fish out the data I
want from the file, rather than restoring it as a working image.
> 
> > So far I've restrained myself because this seems like a potentially
> > big and slightly silly project.  But is it impossible?
> 
> It is most definitely not impossible; just very hard. If you want to do it
> yourself give it a run using the simulator (and have the Squeak book
> ready -

Which Squeak book?

Guzdial "Squeak: Object Oriented Design with Multimedia Applications"
is described as introductory (presumably no help with the VM
internals) at
http://minnow.cc.gatech.edu/squeak/1801, while Guzdial and Rose
"Squeak: Open Personal Computing and Multimedia" is called more
advanced, but is a collection.

Or do you mean the original blue book,
http://users.ipa.net/~dwighth/smalltalk/bluebook/bluebook_imp_toc.html,
plus descriptions of what has changed (Rowledge's "A Tour of the Squeak
Object Engine")?

> some of it will be helpful in understanding how this stuff works under the
> hoods). If you're desperate, consider throwing some money at the problem -
> there are verious people out there who could do it in a couple of days I'd
> think. It *can* be done, the question is simply how much that data is worth
> for you (both in terms of time as well as money).

Rationally, the value is small.  I'm not always rational.  Perhaps as
a learning project .... I've been meaning to hook up my application
with a database, and getting more familiar with objects and the VM
might have some value for that.

> 
> > (Ideally, I'd replace each bad reference with a stub object that
> > included the pointer, so I could tell which stubs were pointing to the
> > same place.  The problem is that I have no stub class in the image.)
> 
> The simulator can do anything you want - it's just not exactly trivial to
> make it happen.

I was also struck by the note on InterpreterSimulator advising
patience and a small test image.  That doesn't make messing with a 40M
image sound like a great idea.


> 
> Cheers,
>   - Andreas
> 
> 



More information about the Squeak-dev mailing list