From owner-freebsd-arch Fri Nov 10 20:49: 1 2000 Delivered-To: freebsd-arch@freebsd.org Received: from earth.backplane.com (placeholder-dcat-1076843399.broadbandoffice.net [64.47.83.135]) by hub.freebsd.org (Postfix) with ESMTP id 2B7AC37B479 for ; Fri, 10 Nov 2000 20:49:00 -0800 (PST) Received: (from dillon@localhost) by earth.backplane.com (8.11.1/8.9.3) id eAB4mw122602; Fri, 10 Nov 2000 20:48:58 -0800 (PST) (envelope-from dillon) Date: Fri, 10 Nov 2000 20:48:58 -0800 (PST) From: Matt Dillon Message-Id: <200011110448.eAB4mw122602@earth.backplane.com> To: arch@FreeBSD.ORG Subject: Re: The shared /bin and /sbin bikeshed References: <200011110315.eAB3Fp909237@mass.osd.bsdi.com> Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG This conversation is starting to wander. Please, guys, I am certainly not advocating that we throw away shared libraries! I am fully aware of their advantages. I am simply pointing out that memory utilization is not one of them. The problem with that 92K of data space is that it contains data elements for the entire libc library, not just the pieces you use. The result is that even if you only use a small part of libc, you will still wind up dirtying many of those pages due to the fact that the few elements you do use are spread all over that 92K of data space. Bruce made this clear in his posting, but obviously some people weren't listening. In a static binary only the data elements you reference are linked in, thus packing the data and bss space and reducing the memory footprint. For the vast majority of systems, including mine, shared libraries are preferable for many reasons, but there is an undeniable cost for that convenience. Certain binaries in my Diablo USENET newsfeed code were linked -static precisely because it cut a significant amount of overhead off of separately-exec'd instances. -Matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message