dotgnu-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[DotGNU]Compressed IL binary support in pnet


From: Rhys Weatherley
Subject: [DotGNU]Compressed IL binary support in pnet
Date: Thu, 28 Aug 2003 17:16:08 +1000
User-agent: KMail/1.4.3

Hi all,

I've added code to the CVS version of pnet to support gzip-compressed IL 
binaries.  The "zlib" library is used to decompress binaries on the fly when 
they are loaded.  Compression is easy: just run "gzip" over your binaries or 
pnetlib library assemblies.  On my system, it reduces the size of the pnetlib 
libraries between a factor of 2 and 3 in size.

This feature is primarily intended for embedded systems, which typically have 
constraints on the amount of flash that can be devoted to storing IL 
libraries such as "mscorlib.dll", "System.dll", "Xsharp.dll", etc.  But it 
could also be used with DGEE to compress the web service binaries.

There is an additional time and memory penalty involved in loading compressed 
IL binaries, so this isn't recommended for desktop and server libraries.  The 
mmap-based file loader in pnet is a lot more efficient, and should be used if 
disk space isn't at a premium.

The library path lookup mechanism has been altered slightly to accomodate 
gzip-compressed libraries.  It will first look for "foo.dll", and then 
"foo.dll.gz", in each directory along the usual search path.

You will need the development version of "zlib" installed on your system, and 
will also need to re-run "./auto_gen.sh" before rebuilding pnet.  You can get 
"zlib" from "http://www.gzip.org/zlib/"; or your favourite package provider.

Cheers,

Rhys.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]