Date: Wed, 13 Jun 2007 16:32:31 +0300 From: Danny Braniss <danny@cs.huji.ac.il> To: David Wolfskill <david@catwhisker.org> Cc: Garrett Cooper <youshi10@u.washington.edu>, hackers@freebsd.org Subject: Re: Using shell commands versus C equivalents Message-ID: <E1HySxb-000PIg-89@cs1.cs.huji.ac.il> In-Reply-To: <20070613123213.GE98927@bunrab.catwhisker.org> References: <466F86C6.7010006@u.washington.edu> <20070613123213.GE98927@bunrab.catwhisker.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> > --Rgf3q3z9SdmXC6oT > Content-Type: text/plain; charset=us-ascii > Content-Disposition: inline > Content-Transfer-Encoding: quoted-printable > > On Tue, Jun 12, 2007 at 10:55:18PM -0700, Garrett Cooper wrote: > > Another simple question (I hope): > > Is there any reason why shell commands should be used in place of a=20 > > C command (in this case chmod via vsystem instead of the chmod(2)=20 > > function)? It seems like the fork / exec would be more expensive with=20 > > the shell command, but any area where code could be optimized is more=20 > > than welcome I would think. > > There often are reasons to prefer using shell commands to C. > > There typically exist many tradeoffs involved in evaluating one over the > other, and "machine efficiency" is not always the highest goal. (For > example, it may be better to reduce complexity in favor of having a > simpler structure that is easier for people to understand and maintain > with confidence that the changes they make have the desired results. > This is, of course, not to try to claim that shell scripts are > inherently easier to understand than C code; that would be a silly > stance to take.) > > I commend to your attention Geoff Collyer and Henry Spencer's "C News" > (a successor to Rick Adams' "B News") implementation, a great deal of > which was written as shell scripts (ca. 1988 or so). > > (Yes, I realize that that was almost 20 years ago, and that it > didn't involve FreeBSD per se. Ignoring the lessons of history is > rather short-sighted and foolish: despite using shell scripts for > so much of the "code," the machine I was then running went from > being extremely busy all the time to having a couple of bursts of > activity per day for about an hour each time -- with more news > flowing with C News vs. B News.) > read the question again, though it is not absolutely clear/correct, the question was: chmod(path, mode) vs system("chmod ...") and not wheather to write a program or a shell script. danny
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1HySxb-000PIg-89>