Your "One-Stop-Shop" for your next Embedded Project

embOS | Embedded RTOS | Preemptive scheduling | SEGGER | Carnica Technology
Stacks Image 10686

The Leading Real-Time Operating System

embOS, a small and efficient real-time kernel, supports all common 8/16/32-bit CPUs and has become one of the most popular kernel. embOS provides on all CPU the benefits of a fully featured multitasking system by 100% identical API e.g. low memory footprint, fast context switches, low interrupt latency, embOSView.

embOS comes with a viewer that allows looking into the system from the PC (including profiling). Its small memory footprint makes it also suitable for single-chip applications. embOS is royalty-free, can be used in a unlimited number of projects and comes with 12 months of technical support and free updates.

  • More than 25 years of continuous development
  • Available for all popular cores, compiler, and development tools
  • Deployed in several billion devices in a wide range of application areas
  • Certified for functional safety according to IEC 61508 SIL 3 and IEC 62304 Class C
  • MISRA-C:2012 compliant
  • Powerful and easy to use API
  • Highest performance with lowest use of memory
  • Kernel awareness plugins available
  • Zero interrupt latency

Solutions for 8/16/32 bit CPUs

embOS is a priority-controlled multitasking system, designed to be used as an embedded operating system for the development of real time applications for a variety of microcontrollers. It is a zero interrupt latency*, high-performance tool that has been optimized for minimum memory consumption in both RAM and ROM, as well as high speed and versatility.
* High priority interrupts are never disabled by embOS.

embOS Trial Versions and Documentation

For various processors, embOS is also available for download as full functional trial version. All trial versions contain a complete ready to go start project, the users manual and embOSView tool which can also be downloaded separately from our download page. Of course there are some limitations for the trial version: Using the trial version in a product is not allowed.

The trial version of the embOS libraries run without a time limit with a maximum of three tasks. If your application creates more than three tasks, embOS stops after a time limit of 15 minutes. Customer support is not included.

Check here for the available embOS trial versions and documentation.

Profiling using embOSView

embOSView is a very helpful tool for analysis of the running target application in real time. It displays the state of a running application using embOS. All communication is done from within the communication interrupt routines. This means that the communication is none intrusive if embOSView is not connected and minimum intrusive while embOSView is connected. In the profiling build, embOS collects precise timing information for every task, which enables embOSView to show the CPU load.

embOS Plug-in for IAR Embedded Workbench

The embOS plug-in for the IAR Embedded Workbench provides embOS awareness during debugging sessions. The state of several embOS objects such as the tasks, resource semaphores, mailboxes, or timers can be inspected. Read more

Libraries and source code

embOS is available as library or source code; the source code version includes libraries and the source code of the libraries. Both versions come with ready to go start projects, BSPs and embOSView. Different builds of libraries are also included: Release/stack check build, typically used in the release build of the application program; Debug/profiling build typically used in the development phase. The libraries offer the full functionality of embOS including all supported memory models of the compiler, the debug libraries and the source code for idle task and hardware initialization.

However, the libraries do not allow source-level debugging of the library routines and the kernel. The full source version provides the ultimate options: embOS can be recompiled for different data sizes; different compile options give full control of the generated code, making it possible to optimize the system for versatility or minimum memory requirements. The entire system can be debugged and modified.