[ANN] Bootstrapped kernel image

Klaus D. Witzel klaus.witzel at cobss.com
Sun Oct 30 15:43:58 UTC 2005


Hi Pavel,

I looked into Mirrors.1.cs and Bootstrap.st, how did you manage "mirrors  
are modified so they contain whole class hierarchy for new system. There  
are original classes used in code of methods."

Being aware that the answer most likely is "manually", could you post an  
"abstract" so that other people (especially me) can learn from your  
experience.

Thank you very much in advance.

/Klaus


On Sun, 16 Oct 2005 18:32:16 +0200, Pavel Krivanek  
<squeak1 at continentalbrno.cz> wrote:

> Hi all,
>
> I have prepared an experimental kernel image based on Squeak 3.7.
>
> Properties:
> - size: 1.3 MB
> - no Morphic
> - no MVC
> - no Sound
> - no Network
> - no Browser, Debugger etc.
> - no SUnit
> - no Projects support (there’s only one default project)
> - only necessary processes
> - no ObsoleteClasses (consistent references in sources)
> - single font
> - simple console with clipboard support
> - transcript output (with file log)
> - transparent creation mechanism
>
> Download:
> - image with changes: ftp://comtalk.net/pub/bootstrap/kernel.zip
> - bootstrapping environment:  
> ftp://comtalk.net/pub/bootstrap/Bootstrap.zip
> - please, can somebody place it to a new location with better  
> connectivity?
>
> How to prepare it:
> - use QuiteSmall image  
> (http://www.swerlingphoto.com/squeak/QuiteSmall-3.7.zip)
> - load Mirrors.1.cs
> - load Bootstrap.st
> - evaluate "Bootstrap start"
> - in console type "Bootstrap revert"
> - wait a while
> - condense changes, clear transcript, save image
>
> How it works:
> - for all classes in system "mirrors" are created. Mirrors are classes  
> with prefix "Xxx" that contain only class definition and methods. They  
> contain no valid references to class variables.
> - mirrors are modified so they contain whole class hierarchy for new  
> system. There are original classes used in code of methods.
> - initial cleanup is executed and system processes are recreated
> - for all original classes, methods of mirrors are assigned. Methods  
> that aren’t in mirrors are removed. Then the new definition of class is  
> used.
> - unnecessary original classes are removed
> - mirrors are removed
> - whole sources are recompiled
> - additional cleanup is executed
>
> The console is very simple. Now it cannot simulate FillInTheBlank,  
> confirmations, user interrupt etc.
>
> Feel free to clean, improve and fix this image. I have to say that I’m  
> VERY tired of creation of this image now and I need a pause :-)
>
> -- Pavel
>
>
>





More information about the Squeak-dev mailing list