🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.std.unix
Article #712

Re: Shell standardization (for c.std.unix)

#712
From: Tom Truscott
Date: Thu, 17 Jan 1991 20:44
40 lines
2456 bytes
Submitted-by: trt@mcnc.org (Tom Truscott)

> Submitted-by: C.R.Ritson@newcastle.ac.uk ("C.R. Ritson")
>
> ... 
> The  danger  of direct interpretation by the shell is that the file is
> quite  likely  to  be  an  executable  object  file  for  some   other
> architecture  seen  from the wrong side of an NFS mount.  When this is
> the case the shell produces large numbers of "not found" messages  and
> often  ends  up  resetting  numerous operating modes.  Our newer users
> find this most confusing.

If the kernel simply returned EACCES (for example) rather than ENOEXEC
when the file is non-ascii, the shells would not attempt interpretation.
(Just check that the first 4 characters have value > 1 and < 128.)
Dropping direct interpretation does make good sense.
But there is the problem of old kernels (e.g. System V.3.2!!) lacking #!,
and I think a surprising number of scripts will stop working
(such as /bin/true on some systems).  Serves them right I suppose.

For Freedomnet, we took this a bit further.  We identify
the binary's type and then execute it on the fastest available system.
This saves a lot of wear and tear in our user environment
with computers from a dozen different vendors.
Wherever I log in my favorite commands still work.
(Hmm, would other people have a dozen different personal "bin" directories?)
Of course this isn't entirely wonderful: when we unplugged the last
Gould machine some of my commands had to be recompiled.
But it goes a long way and surely it is in the right direction.

It is ironic that this NFS comment comes from the home of
the Newcastle Connection, which is the intellectual parent
of Freedomnet.  We kept the faith, and the technical
results have been most gratifying.
You too can get religion: contact Thomas Warren at 1-919-541-6110
or wtw@rti.rti.org.

	Tom Truscott

Volume-Number: Volume 22, Number 76
Technical Details
Message-ID: <17065@cs.utexas.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!cs.utexas.edu!jsq
References: <17011@cs.utexas.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!cs.utexas.edu!jsq
From: trt@mcnc.org (Tom Truscott)
Newsgroups: comp.std.unix
Subject: Re: Shell standardization (for c.std.unix)
Summary: Fix missing-#! problem with kernel (or shell) check, not lobotomy
Message-ID: <17065@cs.utexas.edu>
Date: 17 Jan 91 20:44:54 GMT
References: <17011@cs.utexas.edu>
Sender: jsq@cs.utexas.edu
Organization: MCNC; RTP, NC
Lines: 40
Approved: jsq@cs.utexas.edu (Moderator, John S. Quarterman)
X-Submissions: std-unix@uunet.uu.net