Re: [Exim] Imbedded perl and dynamic loading

Top Page
Delete this message
Reply to this message
Author: Dean Brooks
Date:  
To: exim-users
New-Topics: [Exim] setting up 6 black lists
Subject: Re: [Exim] Imbedded perl and dynamic loading
> On Thu, 14 Mar 2002, Dean Brooks wrote:
>
> > In the spec, it says:
> >
> > If there is no "perl_startup" option in the Exim configuration file
> > then no Perl interpreter is started and there is almost no overhead
> > for Exim (since none of the Perl library will be paged in unless
> > used).
> >
> > I noticed that when I compiled Exim (under Solaris7/Sparc/GCC) with
> > the perl.o linked in, the actual executable binary size is almost
> > a full meg instead of 500K as it was without perl.o compiled in.
>
> The size of perl.o when compiled with gcc on Solaris is 11,420 bytes on
> my desktop machine. The perl.o module is the "glue" between Exim and
> Perl. It's the only additional code in Exim. I am not an expert on how
> embedded Perl works at all; the code was contributed to Exim.


Yeah, it appears that the -lperl portion on the link command causes
libperl.a to be statically linked from the /usr/local/lib/perl5 directories.
The size of libperl.a is 1189560 on our system, so this must have something
to do with the increased binary size.

However, as Nigel mentioned, the OS will hopefully share the same
mapped binary in memory, which was my main concern. CPU load doesnt
seem like it would be an issue as long as I leave perl_startup off and
only use imbedded perl sparingly for unusual situations.

Thanks,

Dean Brooks
dean@???