Please tell me you're not going for launchd or systemd. I have nightmares of FreeBSD migrating to systemd or launchd and I wake up sweating and screaming. Let me elaborate (rant):
In my job I do administrator work on Windows machines. There's been so many times I've wished I was a janitor instead. Often solely because of svchost.exe. For most end users it doesn't make a difference if a process is running under svchost.exe or not. For administrators it makes a huge difference. For example, if a standard office Windows machine is using memory over 1G when no application is running, it's a sign of a problem. So you go to Task Manager and try to look up a process taking that memory. If you're lucky, it's not svchost.exe and you can go about your day, maintaining your zen.
However, if it does happen to run under svchost.exe, your day is most likely ruined. It's not easy to pinpoint what process is taking all that memory. You're able to see which processes are running under specific svchost.exe but it won't tell you what resources they're using and how much. There can be dozens of them processes and you'd have to isolate them all one by one to find the right one. Soooo, 9 times out of 10 it's quicker to dd your backup image and just let the machine reload and install all the updates overnight. The next day you can spend reinstalling all the programs and their updates. Well, it's not so bad when you're getting paid. But this is not acceptable if we are talking about my own computers at home. I do not want to waste my free time fixing problems that exist only because of a horrid operating system. And boy do we have those now.
I've understood that distributions NOT using systemd are now limited to handful, such as FreeBSD, OpenBSD, NetBSD, Slackware and Linux Mint. Pretty much everything else out there is now using systemd. I really wonder why. The reasoning coming from developers of systemd is just a bit off. They say it's to speed up booting, to "unify" Linux distributions and to make software development easier for 3rd party contributors such as Gnome.
The main developer of systemd has said that developers should only read about Linux API and just ignore anything POSIX related. Wow. Just wow. Nothing says "unify" quite like "ignore POSIX". Anyway, another reason for it is that init is old and systemd aims to replace it being something better suited for constantly evolving technology. Excuse me but init has been working well for over 40 years and besides, if by this "constantly evolving technology" we mean for instance wireless communications, that technology has existed for over 100 years. Yes. When you pick up your smartphone and make a phone call, send a text, use your 3G or LTE, Wi-Fi, you're actually just using a RADIO. I a very similar manner, computers haven't changed that much either. They come with more memory, better processors, but their basic design is still the same and they still calculate the same mathematics. I can understand that kernels evolve, but init? Why does that need to evolve?
This systemd approach is in conflict with traditional UNIX philosophy. I don't know why anyone reasonable would challenge that concept. Why replace a simple program that has done it's job well for over 40 years, with some bloated, poorly tested concept, that doesn't *really* do the job better? I'm confident it doesn't, I have measured and compared the boot times of Windows 10, FreeBSD 10.2 on a dual-boot machine, and just for fun on the side, iOS on a old iPhone 4.
FreeBSD is the fastest to boot, although Windows is considerably faster if I shutdown Windows and then boot it. When I shutdown FreeBSD and boot Windows, it takes longer to boot than FreeBSD. Still faster than the iPhone. So I don't buy it, launchd or systemd approach won't be a difference maker especially not on a new machine with SSD drives. Windows 10 shows that a fast boot is really just a matter of certain kind of hibernation. It does boot very fast if not used on a dual-boot machine. On UNIX it wouldn't be too difficult to have a Gnome/anydesktop program that just logs out users and then hibernates. Windows 10 essentially does this as "shutdown".
What really baffles me about systemd is this idea that the operating system needs to change to make things easier for 3rd party developers and users. If we were to take that path, why not just use Windows then. All these Linux distributors who migrated to systemd, they just want a free "windows" on their desktops. They don't seem to care that there are people who in general despise the Windows approach, mostly because they have to deal with all the problems it creates, every day as administrators for companies, moms, wifes, kids, rest of the family and friends.
Maybe it's just me, but I feel that traditional UNIX philosophy has been cornered. Apple is marketing OSX as UNIX, it's hard for me to think of it as such though. Launchd alone makes it feel distant to me. It distantly resembles UNIX. Now most Linux distributors are on the same path. It's all going to hell now, isn't it?
In my job I do administrator work on Windows machines. There's been so many times I've wished I was a janitor instead. Often solely because of svchost.exe. For most end users it doesn't make a difference if a process is running under svchost.exe or not. For administrators it makes a huge difference. For example, if a standard office Windows machine is using memory over 1G when no application is running, it's a sign of a problem. So you go to Task Manager and try to look up a process taking that memory. If you're lucky, it's not svchost.exe and you can go about your day, maintaining your zen.
However, if it does happen to run under svchost.exe, your day is most likely ruined. It's not easy to pinpoint what process is taking all that memory. You're able to see which processes are running under specific svchost.exe but it won't tell you what resources they're using and how much. There can be dozens of them processes and you'd have to isolate them all one by one to find the right one. Soooo, 9 times out of 10 it's quicker to dd your backup image and just let the machine reload and install all the updates overnight. The next day you can spend reinstalling all the programs and their updates. Well, it's not so bad when you're getting paid. But this is not acceptable if we are talking about my own computers at home. I do not want to waste my free time fixing problems that exist only because of a horrid operating system. And boy do we have those now.
I've understood that distributions NOT using systemd are now limited to handful, such as FreeBSD, OpenBSD, NetBSD, Slackware and Linux Mint. Pretty much everything else out there is now using systemd. I really wonder why. The reasoning coming from developers of systemd is just a bit off. They say it's to speed up booting, to "unify" Linux distributions and to make software development easier for 3rd party contributors such as Gnome.
The main developer of systemd has said that developers should only read about Linux API and just ignore anything POSIX related. Wow. Just wow. Nothing says "unify" quite like "ignore POSIX". Anyway, another reason for it is that init is old and systemd aims to replace it being something better suited for constantly evolving technology. Excuse me but init has been working well for over 40 years and besides, if by this "constantly evolving technology" we mean for instance wireless communications, that technology has existed for over 100 years. Yes. When you pick up your smartphone and make a phone call, send a text, use your 3G or LTE, Wi-Fi, you're actually just using a RADIO. I a very similar manner, computers haven't changed that much either. They come with more memory, better processors, but their basic design is still the same and they still calculate the same mathematics. I can understand that kernels evolve, but init? Why does that need to evolve?
This systemd approach is in conflict with traditional UNIX philosophy. I don't know why anyone reasonable would challenge that concept. Why replace a simple program that has done it's job well for over 40 years, with some bloated, poorly tested concept, that doesn't *really* do the job better? I'm confident it doesn't, I have measured and compared the boot times of Windows 10, FreeBSD 10.2 on a dual-boot machine, and just for fun on the side, iOS on a old iPhone 4.
FreeBSD is the fastest to boot, although Windows is considerably faster if I shutdown Windows and then boot it. When I shutdown FreeBSD and boot Windows, it takes longer to boot than FreeBSD. Still faster than the iPhone. So I don't buy it, launchd or systemd approach won't be a difference maker especially not on a new machine with SSD drives. Windows 10 shows that a fast boot is really just a matter of certain kind of hibernation. It does boot very fast if not used on a dual-boot machine. On UNIX it wouldn't be too difficult to have a Gnome/anydesktop program that just logs out users and then hibernates. Windows 10 essentially does this as "shutdown".
What really baffles me about systemd is this idea that the operating system needs to change to make things easier for 3rd party developers and users. If we were to take that path, why not just use Windows then. All these Linux distributors who migrated to systemd, they just want a free "windows" on their desktops. They don't seem to care that there are people who in general despise the Windows approach, mostly because they have to deal with all the problems it creates, every day as administrators for companies, moms, wifes, kids, rest of the family and friends.
Maybe it's just me, but I feel that traditional UNIX philosophy has been cornered. Apple is marketing OSX as UNIX, it's hard for me to think of it as such though. Launchd alone makes it feel distant to me. It distantly resembles UNIX. Now most Linux distributors are on the same path. It's all going to hell now, isn't it?