home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.os.linux
- Path: sparky!uunet!zaphod.mps.ohio-state.edu!rpi!usenet.coe.montana.edu!news.u.washington.edu!serval!phys1.physics.wsu.edu!hlu
- From: hlu@phys1.physics.wsu.edu (Hongjiu Lu)
- Subject: Re: shared libs - can everyone be happy with this?
- Message-ID: <1992Aug15.042420.18914@serval.net.wsu.edu>
- Sender: news@serval.net.wsu.edu (USENET News System)
- Organization: Washington State University
- References: <1992Aug14.145754.29366@crd.ge.com>
- Date: Sat, 15 Aug 92 04:24:20 GMT
- Lines: 40
-
- I am not sure if we are thinking the same thing. In up-coming gcc 2.2.2d,
- which I am planning to release this Sunday. There is only one version of the
- shared images, which is used by both jump table and good, old shared lib.
- If you use -jump in LDFLAGS, your executables are linked with jump table. The
- good, old shared lib is used by default, which uses the same shared images
- but bypasses the jump table.
-
- --
- H.J.
- Gcc/libc maintainer for Linux.
- In article <1992Aug14.145754.29366@crd.ge.com>, davidsen@ariel.crd.GE.COM (william E Davidsen) writes:
- |>
- |> 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.
-