[systemd-devel] [RFC 00/25] Compile against the musl libc

Umut Tezduyar Lindskog umut.tezduyar at axis.com
Fri Sep 19 04:38:44 PDT 2014


Axis Communications is running fairly compact version of systemd with some properties disabled with --disable--xyz. Files are a bit over 10 mb on MIPS ISA (stripped of binaries and conf files). 

Top 10 large files are (in kb)

276 ./Root/usr/lib/systemd/systemd-udevd
280 ./Root/usr/bin/udevadm
288 ./Root/usr/bin/busctl
296 ./Root/usr/lib/systemd/systemd-hostnamed
300 ./Root/usr/lib/systemd/systemd-timedated
304 ./Root/usr/lib/systemd/systemd-bus-proxyd
368 ./Root/usr/bin/systemd-nspawn
548 ./Root/usr/bin/systemctl
1152 ./Root/usr/bin/systemd-analyze
1220 ./Root/usr/lib/systemd/systemd

Umut

[1] Maybe it is time (again) to visit making /shared code part of libsystemd or libsystemd-internal. Has anyone made any calculation regarding the cost of using static library. If not, maybe I can take a stab.
[2] I am quite surprised systemd-analyze is so big.


On 18 Sep 2014, at 05:19 pm, Jóhann B. Guðmundsson <johannbg at gmail.com> wrote:

> 
> On 09/18/2014 02:20 PM, Philippe De Swert wrote:
>> Hi,
>> 
>> On 18/09/14 17:13, Emil Renner Berthing wrote:
>>> On 18 September 2014 16:10, "Jóhann B. Guðmundsson" <johannbg at gmail.com> wrote:
>>>> On 09/18/2014 01:24 PM, Emil Renner Berthing wrote:
>>>>> The real reason is of course that I'd like to see systemd running
>>>>> on my router and other small devices that usually run some OpenWRT
>>>>> derivative.
>>>> The openwrt community is still going forward with their (re)-invention of
>>>> init system called procd since they were incapable of using systemd built
>>>> with --disable-alots right?
>>>> 
>>>> Or are you talking about you dont want to use OpenWRT but your own or
>>>> something else and thus the request?
>>> Yes, indeed. Also I am hoping that having this option means other small
>>> devices will run systemd in the future.
>> I think you are missing the point of musl.... So you have so little
>> space you need a smaller libc but then you want to use a binary of ~1MB
>> + tools to replace an init of a few Kb?
>> 
>> Moreover systemd needs a lot more kernel options, so making smaller
>> kernels gets hard. Not to mention for example cgroups etc is often very
>> unstable in the earlier kernels that have the support for those devices.
>> IOW more kernel crashes due to systemd requiring cgroups.
>> 
>> The reason why OpenWrt would do their own init, is to keep it small.
>> Often those routers etc have only a few Mb of flash. Even with
>> compression just having a 2Mb just for the init system is a bit much.
> 
> It would be interesting to get some "how low can you go" numbers from 
> the embedded crowd regarding systemd and or systemd + udev-hwdb.
> 
> I would think 16MiB target should be fairly easy to achieved but 
> anything less than that might be well work...
> 
> JBG
> _______________________________________________
> systemd-devel mailing list
> systemd-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/systemd-devel



More information about the systemd-devel mailing list