home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.unix.aix
- Path: sparky!uunet!newsgate.watson.ibm.com!yktnews!admin!yktnews!prener
- From: prener@watson.ibm.com (Dan Prener)
- Subject: Re: AIXv3 shared-library binding anomolies
- Sender: news@watson.ibm.com (NNTP News Poster)
- Message-ID: <PRENER.92Jul25200813@prener.watson.ibm.com>
- In-Reply-To: mike@pencom.com's message of 25 Jul 92 06:34:51 GMT
- Date: Sun, 26 Jul 1992 01:08:13 GMT
- Distribution: comp
- Disclaimer: This posting represents the poster's views, not necessarily those of IBM
- References: <PRENER.92Jul21033506@prener.watson.ibm.com> <1992Jul23.235023.5246@pencom.com>
- <PRENER.92Jul24025541@prener.watson.ibm.com>
- <1992Jul25.063451.6994@pencom.com>
- Nntp-Posting-Host: prener.watson.ibm.com
- Organization: IBM T.J. Watson Research Center, Hawthorne, New York
- Lines: 25
-
- In article <1992Jul25.063451.6994@pencom.com> mike@pencom.com (Mike Heath) writes:
-
- >What's to prevent the program loader from roping off a segment of memory
- >for each process at the same address (it's already pretty strict about
- >addresses), shoving in a TOC that contains an entry for each local symbol
- >referenced in the shared object, and using the TOC to determine where to
- >branch? Granted, another level of indirection takes a performance hit,
- >but it can be done. You could even have ld put in the glink code when
- >the library is built. Not very pretty, though.
-
- >How do other platforms do it?
-
- >Playing devil's advocate today...
-
- A fine devil's advocate, too. Nothing is to prevent that, though
- it is not done today. If the calls among shared library routines were
- treated like calls to imported routines, i.e., they went through the
- glink (glue linkage) code, then anyone could substitute a private
- version of a shared library routine. The cost would be exactly what
- you indicated, namely that every process using the shared library
- would suffer the performance hit of going through glue code for calls
- between library routines, even those processes that didn't substitute
- any private versions of shared routines.
- --
- Dan Prener (prener@watson.ibm.com)
-