LWN: Comments on "Kernel tinification" https://lwn.net/Articles/608945/ This is a special feed containing comments posted to the individual LWN article titled "Kernel tinification". en-us Thu, 18 Sep 2025 09:03:22 +0000 Thu, 18 Sep 2025 09:03:22 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Linux recommended / compatible RTOS https://lwn.net/Articles/612004/ https://lwn.net/Articles/612004/ tinti <div class="FormattedComment"> You may try Nuttx. I don't know how much compatible it is.<br> <p> <a rel="nofollow" href="http://www.nuttx.org/">http://www.nuttx.org/</a><br> </div> Mon, 15 Sep 2014 17:22:47 +0000 Kernel tinification https://lwn.net/Articles/611275/ https://lwn.net/Articles/611275/ oldtomas <div class="FormattedComment"> How history repeats itself.<br> <p> I haven't the reference ready, but I think it was in CACM's "Inside Risks" column, late in the last century: some computer at a port (of the naval kind) crashed repeatedly. It took some time to realize that the crashes came at a bi-weekly schedule. From there it was relatiely easy to correlate the crashes with the (regular) arrival of one military ship: its radar machinery confused the electronics of said computer.<br> </div> Tue, 09 Sep 2014 09:06:37 +0000 Linux recommended / compatible RTOS https://lwn.net/Articles/610524/ https://lwn.net/Articles/610524/ pizza <div class="FormattedComment"> <font class="QuotedText">&gt; These processors usually have under 512k flash and 64k ram. </font><br> <p> Indeed, 512/64 is actually a pretty high-end part.<br> <p> <font class="QuotedText">&gt; Recommended opensource Linux compatible RTOS? </font><br> <font class="QuotedText">&gt; Compatible: Event queue, Asynchronous message queue, mailbox intercommunication. </font><br> <p> In short, such a thing does not exist, at least not if you're looking to be API-compatible with Linux. Or even behaivorally-compatible.<br> <p> Come to think of it, eCOS may be the closest, but by the time you enable all the nice APIs and features the RAM/Flash requirements are such that you may as well be running uClinux.<br> <p> nuttx is pretty full-featured too at this point, and RTX has been freed by ARM and is actually bundled with CMSIS these days. Personally, I'm particularly fond of FreeRTOS, but it's fairly bare bones in comparison to the others.<br> </div> Wed, 03 Sep 2014 11:31:44 +0000 Linux recommended / compatible RTOS https://lwn.net/Articles/610489/ https://lwn.net/Articles/610489/ tdwebste <div class="FormattedComment"> I was hoping the discussion was NOT going to revolve around whether Linux can be shoe horned into cortex m0, m4 ARM processors.<br> <p> cortex m0 processors are in extremely price sensitive markets, which makes external flash very undesirable. These processors usually have under 512k flash and 64k ram. <br> cortex m4 processors maybe able to run Linux. But there is many reasons not to. The main being the m4 and m0 are often performing similar applications. Applications that often need to be compiled without unused file system and networking support to reduced flash and ram requirements.<br> <p> Currently running the same OS on cortex m0 and m4 ARM processors makes the most since. <br> <p> <p> <p> It is increasingly common for a cortex-m0/4 to be connected by pcb/usb/serial bus to a more powerful ARM processor running Linux. The imx6 is a example combining ARM Cortex-A9 and Cortex-M4 cores.<br> <p> Back to my original question. <br> Recommended opensource Linux compatible RTOS? <br> Compatible: Event queue, Asynchronous message queue, mailbox intercommunication. <br> <p> </div> Wed, 03 Sep 2014 02:57:46 +0000 Linux recommended / compatible RTOS https://lwn.net/Articles/610485/ https://lwn.net/Articles/610485/ pizza <div class="FormattedComment"> <font class="QuotedText">&gt; I am going to assume the simple statement is true.</font><br> <font class="QuotedText">&gt; "Linux can not run in the confined flash and ram of cortex-M0 and cortex-M4 ARM processors."</font><br> <p> It depends entirely on how much RAM and flash those parts have.<br> <p> Many of these Cortex-M processors support the use of external RAM and flash. Those that do are generally capable of running uClinux; in particular there's mainline support for at least some of the EFM32 parts.<br> </div> Wed, 03 Sep 2014 00:47:54 +0000 Linux recommended / compatible RTOS https://lwn.net/Articles/610480/ https://lwn.net/Articles/610480/ tdwebste <div class="FormattedComment"> I am going to assume the simple statement is true.<br> "Linux can not run in the confined flash and ram of cortex-M0 and cortex-M4 ARM processors."<br> <p> These processors are used in many IOT devices. Examples include nordic, stmicro cortex-M0 MCU with programmable ble radio, Toshiba cortex-M4 MCU with accelerometer, programmable ble radios, lcd controller.<br> <p> What is the recommended opensource Linux compatible RTOS?<br> With compatible: Event queue, Asynchronous message queue, mailbox intercommunication. <br> </div> Tue, 02 Sep 2014 23:32:49 +0000 Kernel tinification https://lwn.net/Articles/610027/ https://lwn.net/Articles/610027/ Fowl <div class="FormattedComment"> Welcome to the future!<br> </div> Sun, 31 Aug 2014 10:37:10 +0000 Kernel tinification https://lwn.net/Articles/610025/ https://lwn.net/Articles/610025/ Wol <div class="FormattedComment"> We had our induction hob fitted as part of our new kitchen some six years ago, and how's *this* for an obscure bug!!!<br> <p> We repeatedly had the same issue as you, soft crashes requiring a hard reset to fix. So we called in the engineer under warranty to fix it.<br> <p> He looked outside, and said "Are you under a flight path?". We are, about three or four miles from City Airport, almost right under the normal approach. So the engineer said, "it's a well known problem, the flight avionics interfere with the controller. You'll need a new controller." He replaced it and it's been fine ever since ...<br> <p> Cheers,<br> Wol<br> </div> Sun, 31 Aug 2014 09:49:51 +0000 LTO https://lwn.net/Articles/609981/ https://lwn.net/Articles/609981/ nix <div class="FormattedComment"> Not only do they do that -- they even do things like #include files that declare structure types with the same name but different members depending on #defines that vary per translation unit.<br> <p> There's no *way* you can handle that in the same TU.<br> </div> Fri, 29 Aug 2014 21:07:10 +0000 Kernel tinification https://lwn.net/Articles/609931/ https://lwn.net/Articles/609931/ phuewe <div class="FormattedComment"> How was the minimum kernel size shown in the diagram measured?<br> <p> Also a real reference hardware would be a good thing, especially to get started.<br> </div> Fri, 29 Aug 2014 13:50:21 +0000 LTO https://lwn.net/Articles/609919/ https://lwn.net/Articles/609919/ jezuch <div class="FormattedComment"> <font class="QuotedText">&gt; i wonder if -whole-program can be used in final link stage.</font><br> <p> Normally, no - because in the final link stage all you (normally) have are the already compiled and optimized object files. You need the source code in some form [also] available, and that's *exactly* what gcc's LTO does. There's not much more to it.<br> <p> And, it's a lot less buggy than a few years ago.<br> </div> Fri, 29 Aug 2014 10:37:06 +0000 LTO https://lwn.net/Articles/609782/ https://lwn.net/Articles/609782/ yoshi314 <div class="FormattedComment"> i wonder if -whole-program can be used in final link stage.<br> </div> Thu, 28 Aug 2014 09:01:18 +0000 Kernel tinification https://lwn.net/Articles/609400/ https://lwn.net/Articles/609400/ dlang <div class="FormattedComment"> wireless access points have MB of flash and not that much memory (depending on the model, 16MB flash and 128MB ram is not uncommon), these are also cheap.<br> <p> Such devices do have a need to read usb attached disks created on larger systems.<br> <p> This isn't as tiny as what some people are aiming for, but trying to keep systems of this size running comfortably would go a fair ways towards the really tiny systems (especially since different people would want to be doing very different things with their APs, so they would be cutting out different parts of the kernel)<br> </div> Sun, 24 Aug 2014 04:10:09 +0000 Kernel tinification https://lwn.net/Articles/609295/ https://lwn.net/Articles/609295/ etienne <div class="FormattedComment"> <font class="QuotedText">&gt; Even with a tinified linux, there will always be room for such light RTOS at the low end (tiny micro-controllers).</font><br> <p> There is a lot more software these days.<br> The other day, in my kitchen, the new "Induction Ceramic hob" crashed with non-responsive soft On/Off - I had to apply a complete and external power Off/On cycle...<br> </div> Fri, 22 Aug 2014 15:51:31 +0000 LTO https://lwn.net/Articles/609236/ https://lwn.net/Articles/609236/ anselm <p> I'm not overly familiar with the Linux kernel source, but it seems to me that individual translation units (source files) might use »static« declarations at top level to keep identifiers local to that translation unit, which is a popular programming technique in C. </p> <p> Simply concatenating everything to make one huge translation unit would presumably fail if a name is declared that way in two different source files. </p>. Fri, 22 Aug 2014 10:54:04 +0000 LTO https://lwn.net/Articles/609234/ https://lwn.net/Articles/609234/ epa <div class="FormattedComment"> Instead of (possibly buggy) link-time optimization, could you not concatenate all the source files into one enormous translation unit and compile that with optimization? If nothing else, it would be a great stress test for gcc. Perhaps even with today's large memory sizes (128 gigabytes, say) it is still not practical.<br> </div> Fri, 22 Aug 2014 09:28:38 +0000 Kernel tinification https://lwn.net/Articles/609225/ https://lwn.net/Articles/609225/ micka <div class="FormattedComment"> <font class="QuotedText">&gt; we have to make it possible to build smaller kernels — perhaps as much as an order of magnitude smaller.</font><br> <p> This packs a bit of precision. A binary ordre of magnitude ?<br> </div> Fri, 22 Aug 2014 08:07:33 +0000 Kernel tinification https://lwn.net/Articles/609126/ https://lwn.net/Articles/609126/ yaap <div class="FormattedComment"> "forcing them to go to a proprietary real-time operating system instead"<br> <p> There are several free RTOS, like FreeRTOS or eCos so no need to dramatize by saying "proprietary" there ;) Even with a tinified linux, there will always be room for such light RTOS at the low end (tiny micro-controllers).<br> <p> </div> Thu, 21 Aug 2014 14:55:35 +0000