Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!news.cs.su.oz.au!inferno.mpx.com.au!nsw1.news.telstra.net!news.telstra.net!news-out.internetmci.com!newsfeed.internetmci.com!tezcat!cam-news-hub1.bbnplanet.com!news.bbnplanet.com!news.maxwell.syr.edu!EU.net!Germany.EU.net!Dortmund.Germany.EU.net!interface-business.de!usenet From: j@ida.interface-business.de (J Wunsch) Newsgroups: comp.unix.bsd.bsdi.misc Subject: Re: BSDI 3.0 Impressive Date: 25 Mar 1997 18:10:46 GMT Organization: interface business GmbH, Dresden Lines: 58 Message-ID: <5h94f6$gua@innocence.interface-business.de> References: <332849E6.71CA@cet.co.jp> <332824B1.6B5F@opengroup.org> <E6zpJB.Iv0@news.interactive.net> <5giab8$l8h@vanbc.wimsey.com> <5gibgj$bu7@arrow.va.pubnix.com> <5gkf8g$sa8@picasso.op.net> <5gme49$6qu@innocence.interface-business.de> <5gn3qc$2ga@arrow.va.pubnix.com> Reply-To: joerg_wunsch@interface-business.de (Joerg Wunsch) NNTP-Posting-Host: ida.interface-business.de X-Newsreader: knews 0.9.6 X-Phone: +49-351-31809-14 X-Fax: +49-351-3361187 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E Xref: euryale.cc.adfa.oz.au comp.unix.bsd.bsdi.misc:6474 lidl@va.pubnix.com (Kurt J. Lidl) wrote: > Sure, the support for SCO binaries dictated that they have support > for this style of shared libraries. That would qualify as SCO ELF? Or what? > "had other reasons". It's also a *lot* faster than exec'ing ld.so > for each program that needs to be started up. BSD doesn't execute ld.so, it's simply mmap'ed. 26090 ktrace NAMI "/usr/bin/id" 26090 id RET execve 0 26090 id CALL open(0x10a0,0,0) 26090 id NAMI "/usr/libexec/ld.so" <<<--- 26090 id RET open 3 <<<--- 26090 id CALL read(0x3,0xefbfd728,0x20) 26090 id GIO fd 3 read 32 bytes "Ì\0\M^FÀ\0à\0\0\0 \0\0\0\0\0\0\0\0\0\0 \0\0\0\0\0\0\0\0\0\0\0" 26090 id RET read 32/0x20 26090 id CALL mmap(0,0xe000,0x5,0x2,0x3,0,0,0) <<<--- 26090 id RET mmap 134230016/0x8003000 26090 id CALL mmap(0x8011000,0x2000,0x3,0x12,0x3,0,0xe000,0) <<<--- 26090 id RET mmap 134287360/0x8011000 Too bad that there are no comparative figures, but i bet the speed difference between both implementations isn't very big. (Speed differences < 10 % are usually only noticed by benchmark programs, but not by users.) Given the disadvantage of the complicated way to create a BSD/OS shared lib (as you describe it), it reminds me the Linux problem with their shared libs earlier. > There are many, many documented security problems that Sun has had > with their shared library implementation, LD_LIBRARY_PATH, setuid > and setgid programs and so forth since SunOS 4.0 was released. The BSD reimplementation doesn't (any more) suffer from them. > (This reminds me of the recent FreeBSD security alert > about the ld.so honoring the locale() setting and the security > hole that resulting from *that*! You should at least know the facts before posting. :-) It was by no means related to shared linking. It were two things, an inherited stack overflow problem from the locale implementation as of 4.4BSD, coupled with a stupid hack that has later been abandoned (but forgotten about in the FreeBSD 2.1.x line) where a localization function could be called from crt0.o. Not the shared loader, but crt0.o. The embarassing thing was only that this hack was stupid and totally unnecessary. -- J"org Wunsch Unix support engineer joerg_wunsch@interface-business.de http://www.interface-business.de/~j