Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!convex!convex!cs.utexas.edu!math.ohio-state.edu!howland.reston.ans.net!xlink.net!math.fu-berlin.de!cs.tu-berlin.de!mailgzrz.TU-Berlin.DE!hahn.informatik.hu-berlin.de!informatik.hu-berlin.de!loewis From: loewis@informatik.hu-berlin.de (M.v.Loewis) Newsgroups: comp.os.386bsd.development Subject: Re: SHARED LIBRARIES - THE END Date: 11 Jun 93 09:32:51 GMT Organization: Humboldt University Berlin, Department of Computer Science Lines: 36 Message-ID: <loewis.739791171@informatik.hu-berlin.de> 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> NNTP-Posting-Host: hp832.informatik.hu-berlin.de 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. Hope this clarifies the things a bit. -- Martin