Return to BSD News archive
Newsgroups: comp.os.386bsd.development Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!howland.reston.ans.net!ux1.cso.uiuc.edu!newsrelay.iastate.edu!news.iastate.edu!ponderous.cc.iastate.edu!michaelv From: michaelv@iastate.edu (Michael L. VanLoon) Subject: Re: SHARED LIBRARIES - THE END Message-ID: <michaelv.739835267@ponderous.cc.iastate.edu> Sender: news@news.iastate.edu (USENET News System) Organization: Iowa State University, Ames IA References: <1993May23.003623.24102@fcom.cc.utah.edu> <1tr05o$qaa@terminator.rs.itd.umich.edu> <1993May24.225014.23425@fcom.cc.utah.edu> <C7nvDE.43y@rokkaku.atl.ga.us> <michaelv.739744871@ponderous.cc.iastate.edu> <loewis.739791171@informatik.hu-berlin.de> Date: Fri, 11 Jun 1993 21:47:47 GMT Lines: 48 In <loewis.739791171@informatik.hu-berlin.de> loewis@informatik.hu-berlin.de (M.v.Loewis) writes: >In <michaelv.739744871@ponderous.cc.iastate.edu> michaelv@iastate.edu (Michael L. VanLoon) writes: >>In <C7nvDE.43y@rokkaku.atl.ga.us> kml@rokkaku.atl.ga.us (Kevin Lahey) writes: >>[...] >>>386BSD is great, and I sure appreciate all the effort everybody has put >>>into it. I just think that this shared library argument is sorta silly. >>>Why throw out a reasonable, if sub-optimal, implementation of something >>>we need? If the Linux folks can upgrade their shared libraries, why >>>can't we? >>If the Linux shared libraries work as wonderfully as they claim they >>do, why can't we use theirs? (Or their approach?) It's certainly not >>perfect, but looks like it's better than anything that anybody has >>taken the time to sit down and write so far. >I dealt with Linux' shared libraries and can report the following: >- There is really a possibility to have a version control. This is possible > due to fixed entry points into the library and tools which allow the > library developer to keep the entry points constant between versions. >- Although this sounds nice, there are drawbacks from that approach which > make it 'sub-optimal'. The biggest problem is that it is completely up > to the library provider to support that version control and this will > be a source of headaches in any real-live library. Even in a small example > you are forced to understand the system much more than you need in the > case of static libraries. >- The idea of absolute addresses creates the need for world-wide coordination. > In Linux, this is done by a README which contains a list of well-known > libraries and there address space needs. This is definitely not useful for > more than 100 libraries. >- All these problems have been known to the 386BSD gurus for a very long time > and made than dislike any known approach for shared libraries. I understand all that, but this knowledge has still not lead to anything better, or anything even quite as good for that matter. It may be sub-optimal, but it's more optimal than no shared libs at all, and that's where we've been heading for some time. Linux shared libs work, and they've been fairly well debugged and optimized. If they're still that distasteful, then I wish someone would sit down and write up a dynamic-linking loader for 386BSD so we could just get this sub-optimal argument over with. -- ------------------------------------------------------------------------------ Michael L. VanLoon Project Vincent Systems Staff michaelv@iastate.edu Iowa State University Computation Center ------------------------------------------------------------------------------