[squeak-dev] About unloading of packages in the most recent Squeak 4.1 trunk

Casey Ransberger casey.obrien.r at gmail.com
Mon Aug 23 17:40:47 UTC 2010


Levente: totally. I mainly just wanted

a) image can start on Cog w/o segfaulting

b) doesn't need a long lengthy set of updates before being caught up with trunk 

The cleanup methods will be run before we ship anyway:)

On Aug 23, 2010, at 4:29 AM, Levente Uzonyi <leves at elte.hu> wrote:

> On Mon, 23 Aug 2010, Hannes Hirzel wrote:
> 
>> On 8/23/10, Tobias Pape <Das.Linux at gmx.de> wrote:
>>> 
>>> Am 2010-08-23 um 11:14 schrieb Tobias Pape:
>>> 
>>>> Hi,
>>>> 
>>>> Am 2010-08-23 um 11:06 schrieb Hannes Hirzel:
>>>> 
>>>>> and tried
>>>>>  SmalltalkImage unloadAllKnownPackages
>>>> 
>>>> Do
>>>>    Smalltalk unloadAllKnownPackages
>>>> 
>>>> instead, since Smalltalk is the sole instance
>>>> of SmalltalkImage.
>> 
>> Thank you for point this out.
>> 
>> In fact Smalltalk is the global variable which references
>>     SmalltalkImage current
>> 
>> So I can do as well
>> 
>>     SmalltalkImage current unloadAllKnownPackages
>> 
>> 
>> Which I did
>> 
>> Squeak4.2-10382-alpha.image went from 16998KB
> 
> Hm, I think Casey forgot to do [Smalltalk cleanUp: false] before saving the image. Doing that saves 2.8MB.
> 
> 
> Levente
> 
>> 
>> down to
>> 10277kB
>> (file sizes measured on Windows machine)
>> 
>>>> So Long,
>>>>    -Tobias
>>>> 
>> 
>> 
>> 
>>> Addendum:
>>> It works.
>>>    resulting file size: 10411140, about 10,4 MB.
>>> Nice.
>>> 
>>> Btw, this script probably needs updating, The Help
>>> browser, eg, does not get unloaded (same for TrueType)
>> 
>> Yes, I tried it for the HelpSystem
>> 
>> I added three more entries to the literal array in the method
>> 
>> "Go unloading"
>>    #(    'ReleaseBuilder' 'ScriptLoader'
>>        '311Deprecated' '39Deprecated'
>>        'Universes' 'SMLoader' 'SMBase' 'Installer-Core'
>>        'VersionNumberTests' 'VersionNumber'
>>        'Services-Base' 'PreferenceBrowser' 'Nebraska'
>>        'ToolBuilder-MVC' 'ST80'
>>        'CollectionsTests' 'GraphicsTests' 'KernelTests'  'MorphicTests'
>>        'MultilingualTests' 'NetworkTests' 'ToolsTests' 'TraitsTests'
>>        'SystemChangeNotification-Tests' 'FlexibleVocabularies'
>>        'EToys' 'Protocols' 'XML-Parser' 'Tests' 'SUnitGUI',
>> 'HelpSystem-Core', 'HelpSystem-Tests', 'HelpSystem-Project'
>>    ) do:[:pkgName| (MCPackage named: pkgName) unload].
>> 
>> 
>> The image is now
>> 10174kB (=100kB less10277kB).
>> 
>> Probably not worth the effort at this time.
>> 
>> Questions
>> 1)  Which are the packages which are big and easy to unload.....?
>> 2) Who does an attempt to unload the TrueType?
>> 
>> 
>> --Hannes
>> 
>> 
> 



More information about the Squeak-dev mailing list