Newsgroups: comp.lang.lisp,comp.lang.dylan,comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!gatech!enews.sgi.com!news.mathworks.com!newsfeed.internetmci.com!demos!pluscom!usenet
From: moroz@inist.ru (Oleg Moroz)
Subject: Re: Common LISP: The Next Generation
X-Newsreader: Forte Agent .99d/32.182
Sender: usenet@news.rinet.ru (Superuser)
Nntp-Posting-Host: inist.cronyx.ru
Organization: A/O Plus & Cronyx Ltd. Internet Node
Message-ID: <322c96db.4791469@news-win.rinet.ru>
References: <sjpw4hbzvo.fsf@alfresco.usask.ca> <4vp93n$fpk@snotra.harlequin.co.uk> <3050214712631064@arcana.naggum.no> <504oa0$1b2@zeppelin.convex.com> <ey3loetgpmj.fsf@staffa.aiai.ed.ac.uk>
Date: Tue, 3 Sep 1996 20:45:32 GMT
Lines: 27
Xref: glinda.oz.cs.cmu.edu comp.lang.lisp:22506 comp.lang.dylan:7118 comp.lang.scheme:16698

On 02 Sep 1996 11:47:32 +0100, Tim Bradshaw <tfb@aiai.ed.ac.uk> wrote:

>I think there are some hidden assumptions here.
>
>Firstly you're assuming that all the pages of the executable are
>touched, which needn't be the case.  It is easy to imagine a system
>where the minimum executable is very large, but almost none of it is
>referenced at runtime -- perhaps only one page.  All those extra pages
>just sit on the disk.  So the runtime of almost arbitrarily large
>executables can be short.  Of course you still burn disk space, but
>then you can do a shared-library system if you care about that.

First, if you want to distribute your software "en masse", the executable size
matters. Even the companies targetting CD distribution tend to decrease the
executable size, because they usually give the user an option to install
executables on the hard disk thus decreasing startup time. And when you use two
or three CD-based packages simultaneously, you are forced to install some of
them on your HD (I usually use Visual C++ plus MSDN -- VC is fully installed on
my hard drive, taking about 150MB).

Second, AFAIK most OS's that use paging map all of the executable to memory when
making the system call analogous to 'exec' (probably creating separate maps for
code, data, resources etc). Thus, even if you don't touch significant parts of
the image, the system will waste some amount of memory for maintaining page
tables (proportional to the executable size).

Oleg
