Micro runlevel

Zen programming is not a spectator sport.

Clean room implementation of runlevel/init.d/SYS V init applets for busybox, aiming for LSB compliance.

Busybox currently has no support for runlevels and init.d scripts, also known as the SYS V init system. My software adds that support as standard busybox applets written in the C langauge.

I am aiming for LSB compliance, so Linux is the supported platform, but I have no objections to making sure it works on other busybox supported platforms. This was in fact written to the LSB specs, with no reference to the source code of similar systems. Any LSB compliant init.d script will be compatible with this. All the support programs and functions mentioned in the LSB spec are provided as part of this system. Other support programs and functions that I have found useful will be provided. Example init.d "scripts", written in C, are also included, especially all the system scripts that LSB requires distros to provide.

I am writing this as part of a Linux distro that I am building. One of the design criterea for this distro is to boot as fast as possible. Typicall Linux boots involve a lot of shell scripts, which are typically a lot slower than C. Most of these shell scripts are part of the SYS V init process. By writing this in C, writing init scripts themselves in C, and writing as much support stuff in C as possible, I am able to make a major improvement in boot speed.

Features -

Busybox does not include named and portmap applets, so boot_named.c and boot_portmap.c should be considered as examples. Skeleton is also an example.

SourceForge.net Logo
Sourceforge project site.

This file was last modified on 2005-03-14