home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / os / linux / 10559 < prev    next >
Encoding:
Internet Message Format  |  1992-09-12  |  1.6 KB

  1. Path: sparky!uunet!spool.mu.edu!hri.com!snorkelwacker.mit.edu!bloom-picayune.mit.edu!daemon
  2. From: pmacdona@tadpole.bcsc.gov.bc.ca (Peter MacDonald)
  3. Newsgroups: comp.os.linux
  4. Subject: re: shared libs
  5. Message-ID: <1992Sep12.171316.19047@athena.mit.edu>
  6. Date: 12 Sep 92 17:13:16 GMT
  7. Sender: daemon@athena.mit.edu (Mr Background)
  8. Reply-To: pmacdona@tadpole.bcsc.gov.bc.ca
  9. Organization: The Internet
  10. Lines: 25
  11.  
  12. I wouldn't call shared libs under Linux unacceptable,  and it is
  13. just plain incorrect to say that code is loaded at a fixed address.
  14. Rather it is the jump table entry point that is loaded at a 
  15. fixed address.  The code can be moved to wherever you like.
  16. However, there is one thing I wonder if we should not have done.
  17.  
  18. Currently, I believe that share lib jump tables are located just
  19. before the shared lib code in the middle of user space.  Perhaps
  20. ideally, the jump table should be located in high memory, just 
  21. above the stack.  Then the code could reside wherever you like.
  22. of course, the sticky part is that the data would have to go
  23. with  the jump tables, cause it can't be moved.  And it's size
  24. is subject to change.
  25.  
  26. Personally, though, I don't believe there is any good reason
  27. to change the current design.  And I don't believe the mythical
  28. perfect "shared libs" implementation exists.  Does using PIC
  29. generate Position Independant Data (PID) as well, or is there 
  30. a requirement for dynamic linking?  Dynamic linking carries 
  31. overhead that will make much less efficient that the Linux 
  32. scheme.
  33.  
  34.     - runtime overhead from the linking
  35.     - larger images, because the symbol info is retained
  36.     - shared text complications
  37.