home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!gatech!rpi!crdgw1!rdsunx.crd.ge.com!ariel!davidsen
- From: davidsen@ariel.crd.GE.COM (william E Davidsen)
- Newsgroups: comp.os.linux
- Subject: shared libs - can everyone be happy with this?
- Message-ID: <1992Aug14.145754.29366@crd.ge.com>
- Date: 14 Aug 92 14:57:54 GMT
- Sender: usenet@crd.ge.com (Required for NNTP)
- Reply-To: davidsen@crd.ge.com (bill davidsen)
- Organization: GE Corporate R&D Center, Schenectady NY
- Lines: 29
- Nntp-Posting-Host: ariel.crd.ge.com
-
-
- I have an idea which I think might be a useful compromise between the
- "never recompile" and the "last ounce of performance" approaches.
- Unfortunately I can't find enough info on the GNU ld to know if it is
- feasible.
-
- What I propose is to have a module at the start of the shared library
- which is the jump table module. When the module is used it provides defs
- for each of the library functions by use of the jump table. The
- jumptbl() module would always be physically first in the library, so it
- would be "in the same place." So far this sounds like the original idea,
- right?
-
- If you didn't want to use the jump tables, you don't load the module
- and you get linked to the real routines directly in memory in the slib.
- The advantage of this is that you get all the benefits of the current
- slib implementation in terms of performance.
-
- This would allow
- a. static link - runs anywhere
- b. dynamic link - must relink for new slibs, but faster than -
- c. jtablink - no need to relink for new libs, slightly slower than (b)
-
- That would let the user decide what combination of size, portability and
- performance is best for each program, and that should make everyone happy.
-
- --
- bill davidsen, GE Corp. R&D Center; Box 8; Schenectady NY 12345
- I admit that when I was in school I wrote COBOL. But I didn't compile.
-