Intro Flashcards
What is Real-time computing
Has guaranteed or predictable response time
Worst-case execution time is most interesting
Optimized for predictability while general purpose is optimized for speed and throughput
Not really possible to do with general-purpose operating systems
Not a fancy way of saying fast computing
Not irrelevant even if hardware is fast enough
Types of constraints and what does a missed deadline lead to?
Hard real-time - total system failure
Firm real-time - results have no value
Soft real-time - results have less value
What are the different types of task triggers?
Periodic - at a regular time interval
Sporadic - when event occurs, limits on how often the event can occur
Aperiodic - when event occurs, no limitations on when it can occur
How do we separate general purpose vs. real-time computers?
- General purpose
- Optimized for speed and througput
- Usually comes with a wide range of applications, tools, etc.
- Mouse, keyboard and screen
- Real-time
- Optimized for predictability
- Usually a minimized system without anything that is not necessary
- Serial interface or SSH (Specialized I/O)
Characteristics of FreeRTOS
- Minimalistic operating system for microcontrollers that often do not use operating systems
- Run on many platforms
Characteristics of VxWorks and QNX
- Proprietary operating systems for embedded and real-time systems
- Stable and proven platforms
- Expensive licenses
Characteristics of Real-time variants of Linux
- Various methods for improving the real-time capabilities of Linux
- RT-Linux, RTAI, Xenomai, preempt-RT
Real time system definition
Any system in which the time at which output is produced is significant. This is usually because the input corresponds to some movement in the physical world, and the output has to relate to that same movement. The lag from input time to output time must be sufficiently small for acceptable timeliness.
Cohesion
Cohesion is concerned with how well a module holds together – its internal strength.
Coupling
Coupling, by comparison is a measure of the interdependence of program modules. If two modules pass control information between them, they are said to possess high (or tight) coupling.
Types of real-time systems:
reactive systems, time-aware systems, time-triggered and event-triggered systems
Characteristics of a general real-time or embedded computer system
Real-time control, concurrent control of separate system components, low-level programming, support for numerical computation, largeness and complexity, extreme reliability and safety
Stages of design
- Requirements specification 2. system design,
- detailed design,
- coding
- testing