Version 8.2.0 of the embedded operating system FreeRTOS has just been released and is available to download. A complete list of changes is available, but personally I would highlight two of them: task notifications and some improvements of the popular ARM Cortex-M4F port.
Just a short introduction for those of you who have never heard about FreeRTOS before: it’s a popular open source (released under a modified GPL license) embedded operating system (well, a multithreading library would be a more accurate description) which runs on many microcontrollers with just a few kilobytes of memory. It allows your embedded application to be split into several threads (called “tasks”) with different priorities, and offers several mechanisms for synchronization/communication among tasks, dynamic allocation of memory etc.
The project officially supports quite a lot of combinations of toolchains and professional microcontrollers, however, it is not too difficult to port it to other microcontrollers. Would you like to run it on your Raspberry Pi? No problem, somebody has already ported it for you. You don’t have a R.Pi? Never mind, you can try it in Qemu.
They still don’t support Power PC. I know they say that there are a couple of ancient architectures that they support, 405 and 440, but these are of almost no use to the embedded crowd that could really use FreeRTOS. Those old architectures are also of almost no use in trying to port FreeRTOS to more modern chip families, such as the MPC56xx.
So it seems the PPC people are not that interested in it, possibly because one of the established players like Freescale might have their own nice solution for PPC already that’s in common use.
If there’s _real_ interest, someone will take the time and port it. If nobody does, there’s simply not enough interest I guess….
Edited 2015-01-17 13:04 UTC
The big irons mostly have enough power to run Linux, Hypervisors and so on. There might be some projects where they count cycles even if the CPU runs at 2GHz, but those won’t invest in porting an RTOS, but rather buy one of the shelf.
The small PowerPCs are mostly inside automotive, where AutoSAR is a must.
But I guess there are PowerPC ports of FreeRTOS. But it is done by some consultancy companies which do not return it to the “community”. (At least that’s what I learned: OpenSource is often a one-way road.
BTW: I guess there is no Cortex-A57 port either…
Typically people using an embedded PPC use a more industrial strength RTOS than FreeRTOS. All the PPC projects I participated in used VxWorks for example.
Why should be VxWorks a better/more mature RTOS than FreeRTOS or other small RTOSes arround?
It depends what you need, but usually PowerPC applications are either very big (QuorIQ) or automotive (Quoriva). Both markets are mostly occupied by specialized RTOSes, like VxWorks or OSEK.
Then there is Industrial Safety, where I guess you’ll find a bigger diversity. But still no SafeRTOS.
Glad to see AmigaOS’s signal bits (in exec.library) used in a new OS!
I’d say it is an RTOS. It does provide to my understanding more of an OS than simple threading.
Or maybe call it microkernel? (Minimum number of OS-calls, drivers, middle-ware outside the kernel).