From owner-freebsd-arch@FreeBSD.ORG Wed Jun 4 01:38:18 2003 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C0BD737B401 for ; Wed, 4 Jun 2003 01:38:17 -0700 (PDT) Received: from subway.linast.de (linast.blasberg-computer.de [62.67.45.160]) by mx1.FreeBSD.org (Postfix) with ESMTP id 70F0643F75 for ; Wed, 4 Jun 2003 01:38:16 -0700 (PDT) (envelope-from sl@subway.linast.de) Received: from subway.linast.de (sl@localhost.linast.de [127.0.0.1]) by subway.linast.de (8.12.6/8.12.6) with ESMTP id h548c2qq074377 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Wed, 4 Jun 2003 10:38:02 +0200 (CEST) (envelope-from sl@subway.linast.de) Received: (from sl@localhost) by subway.linast.de (8.12.6/8.12.6/Submit) id h548c1br074376; Wed, 4 Jun 2003 10:38:01 +0200 (CEST) Date: Wed, 4 Jun 2003 10:38:01 +0200 From: Sebastian Lederer To: Tim Kientzle Message-ID: <20030604083801.GA74277@subway.linast.de> References: <3EDCD0C1.1020300@acm.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="IJpNTDwzlM2Ie8A6" Content-Disposition: inline In-Reply-To: <3EDCD0C1.1020300@acm.org> User-Agent: Mutt/1.4i cc: Jan Grant cc: Dag-Erling Smorgrav cc: arch Subject: Re: Making a dynamically-linked root X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Jun 2003 08:38:18 -0000 --IJpNTDwzlM2Ie8A6 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jun 03, 2003 at 09:45:53AM -0700, Tim Kientzle wrote: [...] > My reasoning is correct. The point here is that /bin/sh is not > minimalist, as evidenced by the fact that it calls getpwnam(). (Yes, > this implies that 'ps', 'ls', 'date', and even 'cat' are not "minimalist," > either, since they require pluggable library features.) If you want to > remove features from /bin/sh to make it truly minimal, or add a new static > shell to the base system, that's a different issue. >=20 > The current /bin/sh must be dynamically linked because it relies on NSS. One could implement an NSS proxy/cache daemon like lookupd in Mac OS X=20 (or nscd in Linux/Solaris, although the general impression seems to be=20 that "nscd sucks"). This way static binaries could use dynamic NSS=20 plugins. The cache daemon can be dynamically linked and make full use of all=20 NSS plugins. A small NSS module that can talk to the daemon can be included into=20 all statically linked programs. So when the daemon is not running, programs just use the default=20 static NSS modules (files, NIS, dns, hesiod). When the daemon IS=20 running, all programs, statically or dynamically linked, can utilize=20 all NSS modules which can be loaded dynamically by the daemon. I think this will also improve performance in certain cases, mostly=20 when using LDAP, because not every invocation of "ls" will need to=20 make a new connection to the LDAP server to resolve the uids/gids. - Sebastian Lederer --IJpNTDwzlM2Ie8A6 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (FreeBSD) iD8DBQE+3a/p3rj1BcWb4ZsRAmtgAKCtaf0I/0ZarhgHnztcZnArtAwTdQCfTe1g 04XMbOQLD6s2YdpClI2n1m0= =62Kf -----END PGP SIGNATURE----- --IJpNTDwzlM2Ie8A6--