I'm a hardware design engineer myself, so I tend not to lose too much sleep worrying about things like how a real-time operating system (RTOS) can be made to work on a system containing multiple heterogeneous CPU and DSP cores? (Just in case you were wondering, the word "heterogeneous" comes from a Greek word meaning "composed of parts having dissimilar characteristics or properties.")
As it happens, however, I've recently been looking at different trends in computing – including multi-core systems and reconfigurable computing – as part of which I ran headfirst into the mire of operating systems.
One very interesting company that caught my eye was Quadros Systems, whose RTXC real-time operating system is targeted toward embedded DSP and multiprocessing applications featuring heterogeneous mixtures of 8, 16, 32-bit CPUs and DSPs from Analog Devices, ARM, Hitachi, IBM, Infineon, Intel, Motorola, and Texas Instruments.
A key feature of RTXC is its small memory footprint. A typical embedded RTOS provides 70 to 80 services and occupies anywhere between 25 and 150 KB. By comparison, a full-up version of RTXC provides around 350 services and occupies only 30 KB. Furthermore, RTXC is extremely scalable through a special configuration utility; for example, it can be incrementally pared down to as little as 2 KB by cutting out unwanted services (although admittedly you wouldn’t be able to do much with this 2K version).
Don’t forget that, in order to keep on top of this sort of thing, you should Sign Up for our weekly Programmable Logic DesignLine Newsletter.