[ale] compiled system calls versus shell scripts

Bjorn Dittmer-Roche dittmeb at mail.rockefeller.edu
Thu Oct 23 12:59:59 EDT 2003


On Thu, 23 Oct 2003, Geoffrey wrote:

> Bjorn Dittmer-Roche wrote:
> > On Thu, 23 Oct 2003, Geoffrey wrote:
>
> >>For example, you know networking needs to be up before Samba is started.
> >>  But, startup of samba and nfs could be parallel processes.
> >
> >
> > Make is a little smarter than that. EG. if you have a copplex web of
> > dependencies, rather than just a few things that can happen in parallel,
> > make might do better.
>
> How so?  You still have to create the make file with the specified
> dependencies.  How does that differ from building a script with the
> dependency checking built in as well?  What is that make will do
> differently?
>

I'm not comparing make to a custom built script, but rather to a c program
(which I thought was what we were talking about, but perhaps I missed
something). All I mean is that, in c, doing something like running a, b,
c, and d in parallel and waiting for a, c and d to finish before running p
and q and waiting for c and d before running s (and waiting for a, p and s
before running v ....) is much harder to program than just running
everything in parallel. UNIX offers some help with system calls like
wait(2), but it's an awful lot of bookkeeping if you have a complex web of
dependencies. Make is specifically designed to handle these problems
efficiently.

	bjorn



More information about the Ale mailing list