Shared libraries

Peter Wemm peter at cutmcvax.cs.curtin.edu.au
Sat Apr 27 11:02:21 AEST 1991


barmar at think.com (Barry Margolin) writes:

>In article <718 at seqp4.UUCP> jdarcy at seqp4.ORG (Jeff d'Arcy) writes:
>>  Do you really think so many skilled and knowledgeable
>>OS developers would implement shared libraries if they weren't worth it?

>What I want to know is why it has taken so long for them to rediscover
>shared libraries.  Multics, the predecessor to Unix, was using
>dynamically-linked, shared libraries in the 60's.

>Furthermore, the SunOS dynamic linking design is still inferior to the
>Multics design (I don't know details of other Unix dynamic linking
>designs).  Libraries should be linked on demand, not all at the beginning
>of the program.  This way, infrequently-used routines do not have any
>overhead except when they're used.  However, this should be coupled with
>better OS support for dynamic link failures (it would be a shame for the
>process to core dump just because LD_LIBRARY_PATH is missing a necessary
>directory).  Also, on-demand linking is harder to implement for data than
>for code, often requiring hardware support (Multics does all dynamic
>linking by indirecting through pointers with a special trap bit set -- the
>trap handler resolves the link, rewrites the pointer, and restarts the
>interrupted instruction, so procedures and data are equivalent).

Even the Amiga uses dynamic libraries... The ENTIRE operating system is
present as a set of shared libraries... Right from Day 1!
It doesn't do it the same way that Unix or Multics does it, but it
is VERY fast!

>--
>Barry Margolin, Thinking Machines Corp.

>barmar at think.com
>{uunet,harvard}!think!barmar
--
Peter Wemm
------------------------------------------------------------------------------
peter at cs.curtin.edu.au  (Home) +61-9-450-5243
Curtin University of Technology, Perth, Western Australia.
Amiga... Because life is too short for boring computers. (Dan Zerkle)



More information about the Comp.unix.internals mailing list