Subject: Re: RFC: migration to a fully dynamically linked system
To: Martin Husemann <firstname.lastname@example.org>
From: Todd Vierling <email@example.com>
Date: 12/23/2001 11:54:36
On Sun, 23 Dec 2001, Martin Husemann wrote:
: > As Noriyuki Soda <firstname.lastname@example.org> points out the problem isn't limited
: > to libc. Any library with global state that is linked into an
: > application both statically and dynamically can lose ... libc is the
: > most obvious and common though I'm sure.
: Call me insane, but I've been in situations where I actively exploited the
: multiple state issue that you all seem to consider a loosing situation.
: In the situations where it worked for me, all libraries (shared or statically
: linked) have been thread safe - which might have helped a bit ;-)
The reentrancy was probably the deciding factor. Most reentrant libraries
avoid global mutexes by using context variables and no globals.
The multiple-state problem comes in when a library has so much as one global
variable, or any internal function, having an exposed global name, that
changes its ABI (think "shared library ends up relocating to statically
-- Todd Vierling <email@example.com> * Wasabi & NetBSD: Run with it.
-- CDs, Integration, Embedding, Support -- http://www.wasabisystems.com/