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

Re: Logging practices (and why does it suck in Debian?)

On Friday, 2001-04-20 at 14:14:13 -0300, Peter Cordes wrote:
> On Fri, Apr 20, 2001 at 10:12:42AM -0600, Tim Uckun wrote:
> > Shared libraries may have been a good idea but somehow the implementation 
> > in both windows and linux got all weird. I just did a search for *.dll on 
> > my windows 2K system and it came back with 4,303 files.

I thought Linux supports versioning for shared libraries. Forgive me
for being a Solaris weenie, but I can't understand why you can't have
several versions of one shared library. Or can you in *Linux*, but
the Debian packaging breaks this?

In Solaris, you have major version numvers for incompatible changes,
and minor versions numbers for fixes. Most libraries only use the
major version number.

>  I think statically linking everything is a crappy idea.  With shared
> libraries, two processes that have the same library mapped can share that
> memory, and instruction cache, space.  It not only saves disk space, it also
> makes things run faster.  Especially with the Unix paradigm of having lots
> of small programs that all do one thing well, you'd have a ridiculous amount
> of memory usage.  Think about the extra IO traffic from loading a statically
> linked ls, cat, rm, cp, etc. all the time.

When Sun introduced shared library, disk space requirements sank significantly,
much more than mein memory requirements. But don't forget about the additional
CPU requirements of PIC code on many architectures, and the cycles required
by the dynamic linking phase. Trivial programs tend to be in the filesystem
cache, so I/O will be very low.

>  Also, if there's a bug in shared library code, you have to upgrade every
> application statically linked against it instead of just upgrading the
> shared library.  Same deal for optimizations, like a 3dnow or altivec libjpeg
> or something.

The Solaris recommended patch cluster tends to be 10~20 MB in size, depending
on release and age. Patches never shrink ;-) I guess it would be at least
twice that size if programs where statically linked.

>  And BTW, installing stuff in Debian won't break other packages, unless
> one package lists the other in its Conflicts: line.  If so, apt won't let
> you install both at once.  That's not so bad.  You can tell apt to download
> source, build the package, and install it for you if you don't have the lib
> versions it was compiled against.

Well, can you have two versions of libc?

Lupe Christoph
| lupe@lupe-christoph.de       |        http://free.prohosting.com/~lupe |
| I have challenged the entire ISO-9000 quality assurance team to a      |
| Bat-Leth contest on the holodeck. They will not concern us again.      |
| http://public.logica.com/~stepneys/joke/klingon.htm                    |

Reply to: