/etc/rc and potential startup improvements

Shahms King shahms at shahms.com
Fri Feb 6 18:11:42 UTC 2004


On Fri, 2004-02-06 at 09:32, Bill Nottingham wrote:
> Shahms King (shahms at shahms.com) said: 
> 
> Some discussion points:
> 
> - python is somewhat heavyweight. Moreover, you'd need to rearchitect
>   other things to make sure /usr is there before rc starts. :)
> - Dependency headers are already specified in the LSB, might as well
>   use those tags
> - We've done testing with some of these alternatives. It *really doesn't*
>   provide that much of a speedup just by paralellizing things. At
>   most we saw 10-15%.
> 
> IMO, the way to faster boot is simple, yet hard: Do Less.
> 
> Bill

Thanks for that, by the way.  Of course, all of the systems you pointed
out suffer from the fact that they are replacing init, or require major
changes to existing initscripts.  I'm just replacing rc (I happen to
*like* SysV initscripts -- for the most part).  Additionally, the lack
of /usr was an integral concern of mine, which is why the "proposed" way
to start this is from the traditional rc:

if [ -x /usr/bin/python ]; then
  exec /usr/bin/python /etc/rc.py
fi

Again, my primary motivation is making what improvements I can while
maintaining complete backwards-compatibility for situations where the
"new-fangled" approach can't work and to ensure a deterministic startup
order for scripts without the appropriate headers.

Of course, rewriting it as a statically (or minimally) linked C program
is also possible, the python is mostly proof-of-concept.

Man, that's a lot of headers to support, fortunately I really only care
about "Required-Start" ;-)

I should have a non-parallel version finished pretty soon and I will put
it up somewhere for anyone who is interested.

If I can get 10-15% "for free" (i.e. an optional component that will be
used if available) I'd say it's worth it.

-- 
Shahms King <shahms at shahms.com>





More information about the devel mailing list