
Reactive Systems
The main common characteristic of Real-Time Embedded (RTE) systems is that they constantly interact with the external world. Such systems, termed reactive, do not transform inputs into outputs, but rather are supposed to maintain a
Embedded software developers in a wide range of industries independently discover patterns for building concurrent software that is safer, more flexible and easier to understand than “naked” threads and the myriad of blocking mechanisms of a traditional Real-Time Operating System (RTOS).
The following sections explain the key concepts related to this increasingly popular, reactive architecture, and specifically how they apply to real-time embedded systems, which are targeted by the Quantum Leaps frameworks and tools.
Format:
The main common characteristic of Real-Time Embedded (RTE) systems is that they constantly interact with the external world. Such systems, termed reactive, do not transform inputs into outputs, but rather are supposed to maintain a
Most embedded systems are traditionally programmed in a sequential manner, where the expected sequence of events is hard-coded.Recommended video playlist “RTOS”:https://www.youtube.com/embed/TEq3-p0GWGI Traditional Approach: Sequential Programming A sequential program explicitly waits in-line, for the expected events
Embedded systems need a program structure that can respond to a multitude of possible event sequences, any of which can arrive at unpredictable times. This program structure is generally called event-driven programming.Recommended video playlist “Event-Driven
Active Objects combine event-driven programming with multithreading. They naturally implement and automatically enforce the best practices of concurrent programming.Recommended video “Beyond the RTOS – Part 2”:https://www.youtube.com/embed/U1pHSkftzhwRecommended video playlist “Object-Oriented Programming”:https://www.youtube.com/embed/dSLodtKuung Best Practices of Concurrent Programming
A Real-Time Embedded Framework (RTEF) is an implementation of the Active Object design pattern specifically designed for real-time embedded systems. RTEF provides the event-driven infrastructure for executing Active Objects based on a real-time kernel (RTOS
The behavior of each Active Object in the QP™ real-time embedded frameworks is specified by means of a hierarchical state machine (UML statechart), which is a very powerful and effective and elegant technique of designing
Model-Based Design (MBD) is a software development process in which the primary focus and products are software models rather than directly code. MBD holds promise of being the first true quantum leap in software development
Software tracing is a method for obtaining diagnostic information about the embedded software in a live environment without the need to stop the application to get the system feedback. Software tracing always involves some form
Recent Comments