Embedded.com Tech Focus Newsletter (3-21-11): Real time operating systems (RTOS) - Embedded.com

Embedded.com Tech Focus Newsletter (3-21-11): Real time operating systems (RTOS)

Embedded Newsletter for 03-21-11

» Click here to view online I » Forward to a friend I » Sign up for an EE Times Newsletter

Mouser Electronics: Delivering Cost and Energy-Saving MCU Solutions
EE Times.com

Share this Newsletter:

facebook linkedin twitter digg

March 21, 2011

 Issue Highlights

Lower the overhead in RTOS scheduling

How PTS benefits embedded systems designs

Introduction to Preemptive Multitasking

RTOSes, 'mutexes' fight priority inversion

Editor's Note

The RTOS that “drives” an embedded system is like the driver of an automobile who must do a number of critical tasks simultaneously relating to vehicle operation and safety, while at the same time deal with a variety of lower priority activities inside the car that compete for attention – the number of which seems to increase with every new model.

Faced with the same pressures within the context of an embedded design, systems designers have developed a variety of techniques to cope, both within and outside the RTOS, and do so without overburdening the limited resources of time, memory, processor performance, and power consumption of most embedded designs.

In a two-part article this month in ESD Magazine and on Embedded.com – “Lower the overhead in RTOS scheduling,” and “How PTS benefits embedded systems designs,” – Dr. Alexander Dean of North Carolina State University does an excellent job of reviewing the problems of scheduling tasks within an RTOS and  the various means of preemption that must used to ensure that critical tasks get done without necessarily sacrificing tasks of lower priority.

To put his findings in the proper context, included in this Tech Focus edition of the newsletter are a variety of recent design articles on Embedded.com on dealing with such issues in the RTOS environment, of which my Editor’s Top Picks include:

Multitasking & the perils of preemption
How to use priority inheritance
Reduce RTOS latency in interrupt-intensive apps 

In his two-part article, Dr. Dean focuses in particular on preemption-threshold scheduling (PTS) used in Express Logic’s ThreadX RTOS, and compares it with a number of other alternative algorithms for dealing with the same problems: fully preemptive stack resource policies (SRP), SRP with preemptive thresholds, priority inheritance protocols, and priority ceiling protocols as well as their use in combination with PTS.

The articles are a tough but rewarding read. The effort you put into it will be more than compensated for by the additional insights into this important aspect of embedded systems design. (Embedded.com editor Bernard Cole, , 928-525-9087 )

Design How Tos

Lower the overhead in RTOS scheduling

Research shows that preemption-threshold scheduling helps to mitigate the deadline-vs.-overhead tradeoff.

How PTS benefits embedded systems designs

Preemption-Threshold Scheduling reduces overhead while maintaining the ability to meet deadlines under worst-case conditions.

Multitasking alternatives and the perils of preemption

In this tutorial Michael Barr explores the advantages and disadvantages of priority-based preemptive scheduling and alternative forms of multitasking.

How to use priority inheritance

Fatal embraces, deadlocks, and obscure bugs await the programmer who isn't careful about priority inversions.

Reduce RTOS latency in interrupt-intensive apps

Here is a way to bypass the RTOS in latency-sensitive interrupt situations. The use of a hybrid interrupt handling technique may reduce or eliminate the latency introduced by the RTOS in many embedded designs

RTOS selection and best practices

What do you need to consider when selecting a real-time operating system (RTOS), be it in-house, open source or commercially acquired.

Don't believe everything you hear about RTOSes

The myth that mutexes and semaphores are interchangeable may not be true.

RTOSes, 'mutexes' fight priority inversion

Modern real-time operating systems support multitasking with a priority-based pre-emptive scheduler.

Measure your RTOS's real-time performance

To find the RTOS with the best real-time performance, you've got to do an apples-to-apples comparison.

Building “instant-up” real-time operating systems

Here are three ways to build an instant “up and running” RTOS for use on any target system requiring only some compilation and minimal hardware resources.

Tutorial: Techniques for measuring execution time and real-time performance – Part 1

In the first of a two part tutorial, David Stewart focusses on techniques for measuring execution time, by first providing a definition of key attributes and overview of methods, then provides details for using each method.

Product News

Express Logic's ThreadX RTOS supports CEVA-TeakLite III DSP Core

Express Logic, Inc., has announced that its ThreadX RTOS now supports CEVA, Inc.'s CEVA-TeakLite-III DSP core. The CEVA-TeakLite-III targets SoCs used in consumer, mobile, networking, and office automation applications.

Express Logic : RTOS supports communication in multicore systems

Express Logic and PolyCore Software have announced commercial RTOS integration of the Multicore Association's recently released Multicore Communications API (MCAPI) specification. MCAPI provides an industry standard, implementation agnostic API for multicore systems communication.

Green Hills provides optimized RTOS, virtualization and tools for Atom E6xx

Green Hills Software, Inc., has announced support for the embedded Intel Atom processor E6xx series with the INTEGRITY real-time operating system, INTEGRITY Secure Virtualization (ISV) technology, MULTI integrated development environment (IDE), optimizing C/C++ compilers, and DoubleCheck static analyzer, enabling customers to create and deploy reliable, high-performance products for in-vehicle infotainment, industrial control, automation, and a wide variety of other embedded applications in the least amount of time and at the lowest cost.

Wind River Releases 64-Bit VxWorks RTOS

New version of VxWorks is designed for high-performance processing of large data structures

LynxSecure 5.0 features increased performance and virtualization

LynxSecure 5.0 from Lynux Works, Inc., is a new release of the LynxSecure separation kernel and hypervisor that adds significant performance increases for fully virtualized guest operating systems (OSes) by utilizing new hardware technologies. The new release also offers 64-bit and Symmetric Multi-processing (SMP) guest OS virtualization support.

Register Now for ESC Silicon Valley!


Introduction to Preemptive Multitasking

Most real-time operating systems employ preemptive schedulers. This primer on preemption also looks at the kind of multitasking it enables.

Introduction to Priority Inversion

When tasks share resources, as they often do, strange things can and will happen. Priority inversions can be particularly difficult to anticipate. Here's an introduction to priority inversions and a pair of techniques you can use to avoid them.

Scheduling – an inherently flawed process

Agile methods are as flawed as big up-front design in creating schedules. Even worse, there's no solution.

RTOS dissatisfaction

RTOS vendors have never offered better or more powerful products, but a growing chorus of developers seems less than thrilled.

Three Things Every Programmer Should Know About RMA

Engineers are developing real-time systems without applying rate monotonic algorithms to their design are living dangerously. Michael Barr details the three things every programmer should know about RMA.

Sponsored White Papers

Scheduling Fixed-Priority Tasks with Preemption Threshold

How to Select a Reliable RTOS

Operating System with Supertasks, Priority Functions and Priority Objects

Preemptible Linux: A Reality Check

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.