Cortex M, CodeSourcery
embOS for Cortex M was developed for and with Sourcery G++ compiler version 4.4.1 and supports all memory models offered by these compiler. It comes with easy to use make files. Initilization code for different Cortex M starter boards is included. Software development with with JTAG tools like J-Link ARM is possible.
Resources and performance data
| Memory usage | |
|---|---|
| Kernel size (ROM) | approx. 1700 bytes |
| Kernel RAM usage | 51 bytes |
| RAM usage per task control block | 36 bytes |
| RAM usage per resource semaphore | 16 bytes |
| RAM usage per counting semaphore | 8 bytes |
| RAM usage per mailbox | 24 bytes |
| RAM usage per software timer | 20 bytes |
| RAM usage event | 0 bytes |
| Min. stack-size per task (RAM) | 72 bytes |
| Timing | |
| Context switch time | 5.5 usec |
| Interrupt latency time | zero |
| Kernel CPU usage/TICK | less than .2% of total calculation time at 1000 Interrupts/second (1ms TICK) |
| Basic time unit (TICK) | typ. 1 ms, min. 20 µs (50 kHz interrupt frequency) |
| Features | |
| Max. no. of tasks | Unlimited (by available RAM only) |
| Max. no. of mailboxes | unlimited (by available RAM only) |
| Max. no. of semaphores (resource/binary/counting) | unlimited (by available RAM only) |
| Max. no. of software timers | unlimited (by available RAM only) |
| Max. no. of priorities | 255 |
| Stack size idle task (RAM) | 0(no memory needed) |
| Nested interrupts | permitted |
| Task switches from within ISR | possible |
Absolute values given above were measured with embOS release build on an ST SMT32F10 CPU running at 72MHz.
embOSView offers system analysis during runtime

Available Emulators
- J-Link ARM
- ARM
Board support packages
embOS comes with lots of ready to go start projects and support packages for various Cortex M3 CPUs and starterboards.
| CPU | Eval board |
|---|---|
| ST STM32F103ZET6 | ST STM3210E-EVAL(MB672) |
Release notes
- Tool chain used for build
- New features
- Improvements
- Program corrections
- Known problems/limitations
- Release history
- Miscellaneous
Tool chain used for build
The following tools have been used:
Compiler: arm-none-eabi-gcc V4.5.2 Assembler: arm-none-eabi-as V2.20.51.20100809 Librarian: arm-none-eabi-ld V2.20.51.20100809 Workbench: Sourcery_CodeBench_IDE_2011.03-66
New features
Version 3.82u1
- Makefiles and linker files updated.
The start projects includes now linker files for RAM and Flash.
Version 3.82u
- Update to latest embOS generic sources.
- BSP for STM32F207_MB786 added.
Version 3.82g
- Initial version for Cortex M3.
Improvements
Version 3.82g
- NONE, initial version for Cortex M3.
Program corrections
Version 3.82u2
- The macro OS_EnterRegion() is replaced by the function OS_EnterRegion().
The macro OS_EnterRegion() could fail when it is used with GCC and high optimization.
Version 3.82g
- NONE, initial version for Cortex M3.
Known problems/limitations
Version 3.82g
- NONE.
Release history
| Version | Release date | Short explanation |
| V3.82u2 | 09. May 2012 | Macro OS_EnterRegion() replaced by a function. |
| V3.82u1 | 14. July 2011 | Makefiles and linker files updated. |
| V3.82u | 11. July 2011 | Update to latest embOS generic sources. BSP for STM32F207_MB786 added. |
| V3.82g | 12. May 2010 | Initial version for Cortex M3 |
Miscellaneous
This document was first released with version 3.82g of the software.
Software released earlier is documented internally. This information is available at request.
Cortex M, CodeSourcery
