> -----Original Message-----
> From: systemd-devel-boun...@lists.freedesktop.org [mailto:systemd-devel-
> boun...@lists.freedesktop.org] On Behalf Of Colin Guthrie
> Sent: Sunday, November 03, 2013 12:54 PM
> To: Peter Lemenkov; systemd-devel@lists.freedesktop.org
> Subject: Re: [systemd-devel] Need advice on daemon's architecture
> 'Twas brillig, and Peter Lemenkov at 03/11/13 06:40 did gyre and gimble:
> > Hello All!
> > I'm working on a system service which uses systemd intensively. Right
> > now it's socket-activated, with main service of type "simple". I
> > recently added support for querying and publishing some internals via
> > D-Bus, so it has a D-Bus name now. Does it add anything if I change
> > type of a main service to "dbus" thus allowing systemd to know for
> > sure if my service is fully initialized?
> If you are using systemd intensively, then you may want to use Type=notify.
> With type=dbus, systemd will consider things ready when you take the name on
> the bus, but this might not actually be the last thing you do to initialise
> your daemon (although if this is the only interface for clients this is not a
> problem!).
> You still might want to use sd_notify() instead. This can also pass through
> some internal performance info to systemd which will show up on systemctl
> status output which is kinda nice.
> Col
> --
> Colin Guthrie
> gmane(at)colin.guthr.ie
> http://colin.guthr.ie/
> Day Job:
>   Tribalogic Limited http://www.tribalogic.net/ Open Source:
>   Mageia Contributor http://www.mageia.org/
>   PulseAudio Hacker http://www.pulseaudio.org/
>   Trac Hacker http://trac.edgewall.org/
> _______________________________________________
> systemd-devel mailing list
> systemd-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Isn't the classical Linux way an option to?
- the daemon does its initialization with the calling thread
- once it is done with the initialization, it forks off a process that goes on 
with the daemons work (the main loop probably)
- the calling thread returns, which signals systemd that the daemon is up now

"Type=forking" must be defined in the .service to support this architecture.

Are there any drawbacks with this solution?

I'm just asking because I'm working at the moment on a daemon that is going 
exactly this way ... 

Best regards

Marko Hoyer
Software Group II (ADITG/SW2)

Tel. +49 5121 49 6948

systemd-devel mailing list

Reply via email to