id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,field_blocks,field_dependson,field_seealso 525,Service manager,Martin Decky,Michal Koutny,"Design and implement a replacement for the current init task, i. e. a full-fledged service manager. Details:: The current init task in HelenOS is very roughly equivalent to the Unix init process. Its purpose is to coordinate the bootstrap sequence in user space, start all necessary services and components of the user session. However, the current init is even more rudimentary than the traditional SysV init: it is a more-or-less sequential program that performs some hard-coded actions with only limited and mostly compile-time configuration options. The goal of this ticket is to design and implement a general bootstrap and service managing infrastructure for HelenOS that would allow a flexible and declarative way of configuring the bootstrap process and services, their run-time monitoring, starting, stopping and (possibly automatic) restarting. While using different implementation means, the infrastructure should provide similar features as [http://www.freedesktop.org/wiki/Software/systemd systemd for Linux], including (but not limited to) dependency management and concurrent execution of independent tasks. The goal is not to port systemd to HelenOS, but to reimplement from scratch its non-trivial features. What Gains and Benefits will this bring?:: Even in monolithic systems the importance of a reliable service managing infrastructure is becoming more and more obvious. In a microkernel system, where even the basic system functionality depends on many components and services, a reliable and configurable service management is even more important. This ticket will enable HelenOS to move past the rudimentary hard-coded service configuration to a more flexible open infrastructure. Difficulty:: Medium Required skills:: A successful applicant will have good skills of programming in the C languages and the ability to survive in a non-standard non-POSIX application environment. Documentation:: * [http://www.freedesktop.org/wiki/Software/systemd systemd] Possible mentors:: HelenOS Core Team, Martin Decky",enhancement,accepted,major,,helenos/app/init,mainline,,"gsoc13, gsoc14",,,,"#414, #443, #184"