Can anybody help me get kernel related details on this RTOS.

we are looking for
1) foot print
2) boot up time
3) certifications
4) Support for TCP,Serial,Can,I2C, FlexBus
5) Memory management without MMU

details of µClinux.


I combine new and so nice

test king's picture

I combine new and so nice post I agree with you. Your supplement is so informative.


Mitch Frazier's picture

If you're talking about Flash footprint, for most systems you'll need at least 2MB. RAM wise you probably need at least 8MB. Boot up time is going to depend on the CPU you're using and the services that need to start, so it could range from maybe 5 seconds to 30.

You want the Kernel certified? If so, certified for what purpose?

It's Linux, so it supports TCP/IP and Serial of course, although you may have to write low level drivers depending on the hardware you're using. CAN and I2C are also supported, although again the low level drivers may be up to you. FlexBus I don't know about.

Memory Management without an MMU: if the question is "does that exist?", then the answer is "yes", that was really what drove the development of µClinux. But maybe that's not the question you're asking.

Note that large parts of µClinux are now part of the mainline kernel. There are also other embedded Linux possibilities: OpenEmbedded, Ångström, etc. Also note that µClinux is not a "RTOS", it does not do Hard Real Time. It's for use on embedded devices but it's not for doing Hard Real Time.

Perhaps if your questions were a bit more specific we could get you more answers.

Mitch Frazier is an Associate Editor for Linux Journal.


radha's picture

We wanted to port the OS on MCF52259 processor which has 64KB of RAM. We heard from Freescale about this OS for use with this processor.
Processor has the capability to expand to 1MB( Flash as well as SRAM). Hence the memory foot print is very important. You said it requires 8MB of RAM. Is this a minimum requirement with all the drivers+kernel? Similarly for Flash?

What do you mean when you say Low level drivers? Does it mean we will use APIs provided by the OS to register read/write and even controlling the device? My understanding was device drivers are considered to be low level doing device register operation for configuration, control and handling of interrupts and application will just use API to read/write with the driver? If not please help me to understand.

Is there any memory protection in built with the OS? What type of memory management does the OS do without MMU?

What would be the latency time by the OS?
On Certifications, we are looking for any product that has been certified for DO-170B OR IEC, any other with this OS?
Is the OS certified like the greenhills OS?


Not a µClinux Device

Mitch Frazier's picture

The Freescale folks are smoking some of that funny stuff. You're not gonna stuff µClinux into a device like that. If you really want to use µClinux you'd need to move up to something like a MCF528x device which has a full external memory interface and includes SDRAM support.

You have the concept of low level drivers correct. With Linux direct interaction with the hardware is done by the kernel via low level drivers and the user application interacts with them through some higher level API, often through the same API used to read and write files. All I was saying about writing drivers is that if µClinux doesn't already include the driver for your device, then you have to provide it.

Generally speaking, without an MMU, there is no memory protection at all. The memory management done on a system without an MMU is about equivalent to what malloc and free do for the standard program heap.

Since µClinux is not a Real Time OS there's not a lot of information out there about it's latency numbers. Best you can probably guarantee is that it won't be much worse than your desktop computer, which in the Real Time world is not very good.

I'm not sure about the certifications, but I doubt that µClinux has any of those certifications.

But, at the end of the day, this is probably not the OS you're looking for, even if you could fit it into a MCF52259, or even if you were willing to move up to a MCF528x device. A more likely open source candidate for this device would be FreeRTOS. There is also a commercial IEC 61508 certified version available, it's called SafeRTOS. Although the website does not yet reflect it there is a port of FreeRTOS to the MCF52259 (specifically to the Freescale Development Board for the MCF52259). FreeRTOS would easily fit on a MCF52259, its Flash/RAM foot print is measured in tens of kilobytes.

Mitch Frazier is an Associate Editor for Linux Journal.