Hacker News new | comments | ask | show | jobs | submit login

Linux is probably a more compact OS for IoT than Windows, but it is still pretty bloated.

Should be interesting to see if Fuschia gains some mindshare. Linux is "bloated" by LOC standards, but once you target a specific architecture, the LOC drops dramatically.

The whole LOC drama train is tied to code that doesn't get compiled when you specify the architecture.

Are people who call Linux bloated for IoT-like devices really talking about lines of code? I always thought the main focus was on Linux's architectural layout and how closely tied it is to the x86 memory model & the PC in general.

Realtime OSs are currently in vogue because they better match how some IoTs devices work, so there's less abstraction that doesn't apply to that circumstances (and therefore improved performance/reduced complexity).

...how closely tied it is to the x86 memory model & the PC in general.

Is it, though? Linux has had NOMMU (running without an MMU at all) support since the early 2000s, and the atomics / barriers are more based on Alpha's memory model than anything else - several of those primitives just compile out to a compiler barrier or nothing at all on x86.

Most heavyweight things you don't need in an IoT context can be compiled-out completely - I think probably the major bit of infrastructure you can't is support for multiple user IDs?

That's fair. What's the counterpart example though? Is it Fuschia, or QNX, or similar? If so, why are they so niche? If there is an obvious better answer I'd expect more noise.

To underline this, the LOC has actually dropped in the next version of the kernel (which has just hit -rc1), primarily because a set of no-longer-used architectures were removed.

I can't understand not using eChronos, seL4 or RTEMS.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact