typical RTEMS system HW?

Shiro rt9f.3141 at gmail.com
Wed Jul 14 00:05:50 UTC 2021



> On Jul 9, 2021, at 11:40 AM, Joel Sherrill <joel at rtems.org> wrote:
> 
> On Thu, Jul 8, 2021 at 3:11 AM Shiro <rt9f.3141 at gmail.com> wrote:
>> 
>> Hello,
>> 
>> I’m new to RTEMS but very much like its features.  I’m wonder what HW (MCU/MPU and memory size) RTEMS is typical used on.  Anyone care to share a bit of details?
>> 
> 
> Well I held back hoping more people on the using side would answer.
> This is my perspective from the long-term developer view.
> 
> Most users are on 32-bit platforms. There have been 64-bit ports for a
> long time but most people aren't using them.
> 
> There are a lot of users from the space community who tend to be on
> hardened hardware. This SPARC LEON family is probably the most
> commonly used there. In the early days of the LEON predecessor
> (ERC32), I would say 1-4 MB was quite common for RAM. Other CPU
> architectures have been used in RTEMS space-based systems like
> PowerPC, Coldfire, MIPS, and ARM.
> 
> There are also a lot of users in the EPICS (Experimental Physics and
> Industrial Control System) community which is commonly used in high
> energy physics, astronomy, and other big science equipment. I would
> tend to put a lot of those users on VME and CompactPCI boards with the
> PowerPC and x86 being common. They may still use some of their old
> VME m68040 boards or at least we haven't dropped support for them.
> These mostly tend to have 4-16 MB RAM.
> 
> There are also a lot of commercial users and currently I think a lot
> of those are on ARM platforms (STM, Xilinx, NXP, etc) with RISC-V
> coming on strong. There are users on other architectures but I think
> the bulk are there now. PowerPC users seem to be realizing they are on
> the tail end of the lifecycle and need to look forward to a
> transition.
> 
> RTEMS has been ported to 16-bit CPUs but there are none currently in the tree.
> 
> You can certainly have an RTEMS application which fits into a small
> amount of Flash but as you add capabilities, you tend to pick up code
> and data space requirements. The earliest RTEMS systems would be big
> if they had 1-4 MB total Flash and RAM but that's considered small
> these days in general. I recall one m68k based system that has 96K
> total code and data space. The legacy network stack could easily run
> on 1 MB RAM. Now libbsd generally has more features and takes more
> memory. It may be able to be trimmed down but no one has invested the
> time. lwIP would be a better alternative in those cases.
> 
> If you need a lot of features, the footprint naturally grows. If you
> are on a small target board, some tests won't fit. For example, some
> of the file system tests assume a 1MB RAM disk. If you don't have the
> space, you just don't.
> 
> I still think that a large RTEMS system is on the smallest end of
> Linux systems.
> 
> Not sure this gives specific answers but that's my impression.
> 
> —joel


Wow, what an awesome reply.  Thank you for the detailed response, I appreciate your time.  This helps me quite a bit.  My take away is that RTEMS is not going to be a comfortable fit for Cortex M3/M4 MCUs with 64k to 256k RAM (although it can be shoehorned in with some work).

This helps me partition the MCU/MPU space by RTOS.

Thanks again,
Shiro




More information about the devel mailing list