>>[EMAIL PROTECTED] wrote: >Manoj Srivastava writes: >> *Nothing* has an S* in more than one level. A package is meant to be at a >> certain run level and higher. A level 3 package is started at run level >> 3, killed in run level 2, and at *no* other level. See how this works? > >Simple and elegant, but not very flexible. How about a state machine >approach?
Assuming "runlevel" is roughly equivalent to "state", the above model is a stack of states. A state transition diagram would be a (potentially fully connected) graph of states. (Potentially) what a mess. :) Next question is how to define a "state" -- 6 basic states is what we have now. If we want more states (finer grain) our graph becomes messier. Also, runlevels _are flexible. Nobody can force me to start networking daemons at RL 2 -- I can bloody well start them from ip-up when I ring my ISP, at whatever runlevel I happen to be then. (In practice I don't care: when I don't need networking daemons, they waste about $0.5 worth of my swap partition. Big deal). If you let user similarly customize the states, you _will end up with a fully connected graph for STD -- definitely a mess. (One program implementing a complex state machine is sendmail, BTW.) Stack is a much simpler structure -- easier to implement, less bugs etc. Besides, it's almost there already. -- Dimitri emaziuk at curtin dot edu dot au, if you're replying to ------------------------------- a Usenet posting Avoid reality at all costs. -- TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to [EMAIL PROTECTED] . Trouble? e-mail to [EMAIL PROTECTED] .