Hello! "Zack Weinberg" <[email protected]> skribis:
> But leaving > those aside -- they are largely cosmetic -- it's *dangerous* to put a > lot of code in process 1, because more code means more bugs, and if > process 1 crashes it takes out the entire system. It’s more complicated than this. Guile is large, but the Shepherd is small, auditable, and hackable to a level not seen with other non-trivial init systems; its concurrency story, which is central to that sort of program, is much nicer than that of a typical C program. That doesn’t mean it’s perfect: it has its own class of problems, for example issues in Fibers that affect its behavior. But it’s not black and white and “dangerous” would probably be more justified for a large init system written in C. Thanks, Ludo’.
