Abassi for MSP430X (metrics)

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 Medium Model Large Model
Minimal Build <575 bytes <700 bytes
+ Runtime service creation / static memory <825 bytes <975 bytes
+ Multiple tasks at same priority <925 bytes <1100 bytes
+ Runtime priority change
+ Mutex priority inheritance
+ FCFS
+ Task suspension
<1400 bytes <1700 bytes
+ Timer & timeout
+ Timer call back
+ Round robin
<1950 bytes <2375 bytes
+ Events
+ Mailbox
<2375 bytes <2925 bytes
Full Feature Build (no name / no runtime creation) <2625 bytes <3175 bytes
Full Feature Build (no names) <3000 bytes <3600 bytes
Assembly Code Memory Usage
Description Medium Model Large Model
Assembly code size 132 bytes 140 bytes
Vector table (per interrupt) +2 bytes +2 bytes
Interrupt prologue (per interrupt) +10 bytes +10 bytes
Hybrid Stack Enabled +20 bytes +20 bytes
Nested Interrupts Enabled +8 bytes +8 bytes
Oscillator Bits preservation Enabled +14 bytes +14 bytes
Position Independent Code Enabled +56 bytes +56 bytes
Data Memory Usage
Description Medium Model Large Model
Base Kernel 96 bytes 112 bytes
+ Task 28 bytes 32 bytes
+ Semaphore 10 bytes 12 bytes
+ Request 10 bytes 12 bytes
+ Mailbox 20 bytes 28 bytes
Measured using current software release, configured for MSP430F5438 at 18 MHz and IAR Embedded Workbench for MSP430, Version 5.40.2

"C" Code Memory Usage
Code Model
Data Model
Large
Small
Large
Large
Minimal Build <675 bytes <750 bytes
+ Runtime service creation / static memory <825 bytes <975 bytes
+ Multiple tasks at same priority <950 bytes <1075 bytes
+ Runtime priority change
+ Mutex priority inheritance
+ FCFS
+ Task suspension
<1500 bytes <1675 bytes
+ Timer & timeout
+ Timer call back
+ Round robin
<2075 bytes <2275 bytes
+ Events
+ Mailbox
<2675 bytes <2950 bytes
Full Feature Build (no name / no runtime creation) <2925 bytes <3250 bytes
Full Feature Build (no names) <3225 bytes <3600 bytes
Added Features
Code Model
Data Model
Large
Small
Large
Large
Zeroing .bss <75 bytes <125 bytes
Mutex Interface for Libraries <50 bytes <50 bytes
Assembly Code Memory Usage
Code Model
Data Model
Large
Small
Large
Large
Assembly code size 120 bytes 120 bytes
Vector table (per interrupt) +2 bytes +2 bytes
Interrupt prologue (per interrupt) +10 bytes +10 bytes
Hybrid Stack Enabled +12 bytes +12 bytes
Nested Interrupts Enabled +8 bytes +8 bytes
Oscillator Bits preservation Enabled +14 bytes +14 bytes
Data Memory Usage
Code Model
Data Model
Large
Small
Large
Large
Base Kernel 102 bytes 116 bytes
+ Task 16 bytes 28 bytes
+ Semaphore 6 bytes 10 bytes
+ Request 8 bytes 12 bytes
+ Mailbox 14 bytes 20 bytes
Measured using current software release, configured for MSP430F5438 at 18 MHz and Code Composer Studio for MSP430, Version 5.10.09000

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

Demonstration Package here