mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Rich Felker <dalias@aerifal.cx>
To: musl@lists.openwall.com
Subject: Re: Re: Vision for new platform
Date: Sun, 10 Jun 2012 15:33:48 -0400	[thread overview]
Message-ID: <20120610193348.GK163@brightrain.aerifal.cx> (raw)
In-Reply-To: <CAPLrYEQGNHdwdJyQ5=XY=G-4qyePUwAkHpzr1kxig_bscTv2-w@mail.gmail.com>

On Sun, Jun 10, 2012 at 08:38:57PM +0200, Daniel Cegiełka wrote:
> > The problem with systemd is that it is not only bloated
> > all-in-pid-number-1 thing that depends on dbus, it *comes* from
> > freedesktop, which reputation is not so good at software engineering.
> > And udev is going to be merged with that codebase.
> > And important thing: not to repeat already repeated mistakes.
> 
> I understand that and instead systemd I prefer to stay with
> sysvinit+openrc...

sysvinit is really not a rational design. It does a lot of the same
stupid stuff as systemd (controlling process lifetime from pid 1, but
in this case it's only used for legacy console gettys, not for
daemons). And runlevels never really made any sense to me; they just
made init scripts a lot more complex and difficult to maintain by
having to handle the additional case of switching between runlevels
with different things in them and getting the order of stop/start
right..

> but the only solution is to prepare a new init
> stuff from scratch (systemd+udev+dbus alternative). Do you see another
> solution?

I think it's a mistake to think in terms of needing a replacement for
X+Y+Z instead of needing a solution to problems A,B,C. Especially when
X+Y+Z are poorly designed and it's not even clear what problems they
were intended to solve.

Let's instead start from the perspective of problems to solve:

1. Initiating/controlling the boot process.
2. Providing login prompts on console ttys.
3. Managing system daemons.
4. Handling insertion and removal of hardware.
5. Handling changes to hardware status.
6. Shutting down/rebooting the system.

I'm generally of the opinion that trying to tightly integrate these
(largely unrelated) tasks just creates a lot of complexity and lock-in
with little or no benefit. In contrast, for problems #1 and 2, I have
a 22-line (C) init program that does nothing but run the boot script
and reap orphaned zombies, and a 34-line (C) program that repeatedly
re-runs a program in a new session every time it exits. The latter,
combined with a 14-line (shell script) getty program, is sufficient to
handle all console logins.

I hope this doesn't come across as a claim that ALL of the above tasks
are trivial; indeed, they're not. But I think it is a motivation for
highly factoring different tasks...

Rich


  parent reply	other threads:[~2012-06-10 19:33 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-18  1:06 Rich Felker
2012-05-18  3:11 ` Isaac Dunham
2012-05-18  3:26   ` Rich Felker
2012-05-19  1:28     ` Isaac Dunham
2012-05-18  6:07 ` Szabolcs Nagy
2012-05-21 20:05 ` aep
2012-05-21 20:17   ` Rich Felker
2012-05-21 20:51   ` nwmcsween
2012-05-21 20:59     ` Rich Felker
2012-05-21 21:18   ` Rich Felker
2012-05-21 21:51     ` aep
2012-05-21 22:25       ` Rich Felker
2012-05-22  0:53         ` aep
2012-05-22  1:54           ` Rich Felker
2012-05-22 12:55         ` Christoph Lohmann
2012-06-09 11:27 ` orc
2012-06-09 14:44   ` Isaac Dunham
2012-06-09 15:25     ` orc
2012-06-09 21:24     ` Rich Felker
2012-06-09 22:38       ` Christian Neukirchen
2012-06-10 12:53         ` Daniel Cegiełka
2012-06-10 13:22           ` Rich Felker
2012-06-10 14:52             ` orc
2012-06-10 14:55               ` orc
2012-06-10 15:13               ` Rich Felker
2012-06-10 15:51                 ` orc
2012-06-10 16:33                   ` Rich Felker
2012-06-10 17:53                     ` orc
2012-06-10 18:03                       ` Daniel Cegiełka
2012-06-10 18:26                         ` orc
2012-06-10 18:38                           ` Daniel Cegiełka
2012-06-10 18:58                             ` orc
2012-06-10 19:19                               ` Daniel Cegiełka
2012-06-10 19:33                             ` Rich Felker [this message]
2012-06-10 20:13                               ` Daniel Cegiełka
2012-06-11  7:24                                 ` orc
2012-06-11 12:54                               ` Init system (Re: [musl] Re: Vision for new platform) aep
2012-06-12  0:59                               ` Re: Vision for new platform Isaac Dunham
2012-06-12  1:48                                 ` Rich Felker
2012-06-12  5:37                                   ` idunham
2012-06-12  5:48                                     ` Kurt H Maier
2012-06-12  8:20                                       ` aep
2012-06-12 14:32                                         ` Rich Felker
2012-06-14  4:28                                       ` Isaac Dunham
2012-06-12 14:30                                     ` Rich Felker
2012-06-12  7:46                                   ` orc
2012-06-12  8:27                                     ` nwmcsween
2012-06-12  8:41                                       ` orc
2012-06-12  8:44                                     ` aep
2012-06-12  9:02                                       ` orc
2012-06-12 10:28                                         ` aep
2012-06-12 10:33                                           ` orc
2012-06-10 15:17               ` Daniel Cegiełka
2012-06-10 15:27                 ` Rich Felker
2012-06-10 15:12 ` Jeremy Huntwork
2012-06-10 18:03   ` Kurt H Maier
2012-06-10 18:15     ` Jeremy Huntwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120610193348.GK163@brightrain.aerifal.cx \
    --to=dalias@aerifal.cx \
    --cc=musl@lists.openwall.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).