mAbassi SMP RTOS for Cortex-A9

Multicore in than 6 kilobytes.

In addition to the standard features supported by all RTOS, the Abassi family has many features unmatched in the industry:

    1. Intelligent starvation protectionGuarantees fair access to CPU, via enhanced priority aging, even on heavily loaded systems.
    2. Priority inheritance, including dynamic trackingAutomatically adjusts for priority aging, timeouts, etc. and propagationBetween entangled mutex owners, to prevent deadlock.
    3. Adaptive priority ceilingTarget priority is self determined.
    4. Deadlock detectionReports recursive mutex dependencies anywhere in the execution chain.
    5. AsymmetricTimeslice adjustable at a per task level. Round Robin scheduling
    6. and more...

Get Up And Running For Free

Download the freeware version of our multicore RTOS. Everything you need to get your multicore environment up and running and ready for real work.

Download demos of the RTOS, including demonstrations for multiple evaluation platforms. Full support for Altera Cyclone V, Altera Arria 10, Altera Arria V, Freescale i.MX6, Xilinx Zynq-7000, and TI OMAP4430 and OMAP4460.

Development Tool Choices

Abassi supports major ARM development tools, including ARM Design Studio 5, Xilinx SDK, Atollic TrueSTUDIO and Code Composer Studio.

Memory Requirements

Don't settle for half a RTOS! Even with all features enabled, Abassi still consumes less memory than the minimum configuration of most kernels. And you get advanced priority inheritance, asymmetric round-robin scheduling, starvation protection, and much more. Or, if memory footprint is paramount, Abassi scales to a minimum size that can't be matched.

"C" Code Memory Usage
Description Size
Minimal Build <1375 bytes
+ Runtime service creation / static memory <1650 bytes
+ Multiple tasks at same priority <2150 bytes
+ Runtime priority change
+ Mutex priority inheritance
+ Task suspension
<2550 bytes
+ Timer & timeout
+ Timer call back
+ Round robin
<2925 bytes
+ Events
+ Mailbox
<3550 bytes
Full Feature Build (no name / no runtime creation) <3775 bytes
Full Feature Build (no names) <4175 bytes
Assembly Code Memory Usage
Description Size
Assembly code size (non-privileged / >1 core) 1588 bytes
Assembly code size (non-privileged / ==1 core) 1088 bytes
Assembly code size (privileged / >1 core) 1436 bytes
Assembly code size (privileged / ==1 core) 952 bytes
VFPv3 +128 bytes
VFPv3D16 +116 bytes
Saturation Bit Enabled +36 bytes
GICinit() 136 bytes
GICenable() 104 bytes

For your exact data memory requirements, please consult the Porting Document that applies to your design environment.