VM & Runtime stack

Adrian Lienhard adi at netstyle.ch
Mon Jul 16 12:01:35 UTC 2007


Hi Alex,

No, there is no real reification (depending on the definition of  
course). The contexts used by the VM are the very same objects you  
get at the image level. Plain old Smalltalk objects...

The only special thing about contexts is that they are recycled, if  
possible. The VM holds a list of contexts that can be reused. If you  
access thisContext (through the special bytecode), this context and  
any other context not returned from (i.e., still on the stack of the  
active process) cannot be recycled anymore. As far as I remember,  
also when switching process or when doing a GC, the cache is flushed.  
(I once did a statistic about how many contexts are actually recycled  
compared to being newly instantiated, and only got around 6-10%,  
which is much less than what I expected.)

Cheers,
Adrian

___________________
Adrian Lienhard
www.adrian-lienhard.ch

On Jul 16, 2007, at 12:47 , Bergel, Alexandre wrote:

> Hi!
>
> In Squeak, the stack is reified upon the execution of the  
> thisContext bytecode. Else, the stack is not reified. So comes my  
> question: Where is the stack stored ? Is there a dedicated part of  
> the memory ?
>
> Cheers,
> Alexandre
>
> -- 
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>






More information about the Squeak-dev mailing list