<div dir="ltr">Hi,<div><br></div><div>I'm new to systemd and have just enabled it for my Xilinx based dual core cortex A-9 platform.  The linux system is built using Yocto (Fido branch) which is using version 219 of systemd.</div><div><br></div><div>The main reason for moving over to systemd was to see if we could improve boot times and the good news was that by just moving over to systemd we halved the boot time.  So I read that I could analyse the boot times in detail using bootchart so I set init=/..../bootchart in my kernel command line and was really suprised to see my boot time halved again.  Thinking some weird caching must have occurred on the first boot I reverted back to normal systemd boot and boot time jumped back to normal (around 17/18 seconds), putting bootchart back in again reduced it to ~9/10 seconds.</div><div><br></div><div>So I created my own init using bootchart as a template that just slept for 20 seconds using nanosleep and this also had the same effect of speeding up the boot time.</div><div><br></div><div>So the only difference I can see is that the kernel is not starting /sbin/init -> /lib/systemd/systemd directly but via another program that is performing a fork and then in the parent an execl to run /lib/systemd/systemd.  What I would really like to understand is why it runs faster when started this way?</div><div><br></div><div>I'm using glibc v2.21</div><div>Linux kernel v3.14</div><div>gcc v4.9.2</div><div><br></div><div><br></div><div>Let me know if you require any more information.</div><div><br></div><div>Any help appreciated,<br></div><div>Martin.</div><div><br></div><div><br></div></div>