Introduction To Real-Time Systems

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 13

CprE 458/558: Real-Time Systems

Introduction to Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 1


A typical real-time system

CprE 458/558: Real-Time Systems (G. Manimaran) 2


Sample Applications
Agile Manufacturing

Traffic control system

3
Industrial Internet & Internet of Things
 

CprE 458/558: Real-Time Systems (G. Manimaran) 4


Real-time Systems -- Introduction
Real-time systems are defined as those
systems in which the correctness of the
system depends not only on the logical result
of computation, but also on the time at which
the results are produced.

• Hard real-time systems (e.g., Avionics,


Command & Control Systems).

• Firm real-time systems (e.g., Banking, Online


transaction processing).

• Soft real-time systems (e.g., Video streaming).


CprE 458/558: Real-Time Systems (G. Manimaran) 5
Real-Time Systems -- Introduction
•Hard deadline: penalty due to missing deadline is a higher
order of magnitude than the reward in meeting the
deadline
•Firm deadline: penalty and reward are in the same order
of magnitude
•Soft deadline: penalty often lesser magnitude than
reward

CprE 458/558: Real-Time Systems (G. Manimaran) 6


Example – Car driver
• Mission: Reaching the destination safely.

• Controlled System: Car.

• Operating environment: Road conditions.

• Controlling System
- Human driver: Sensors - Eyes and Ears of the driver.
- Computer: Sensors - Cameras, Infrared receiver,
Laser telemeter, Navigation system, Street maps.

• Controls: Accelerator, Steering wheel, Break-pedal.

• Actuators: Wheels, Engines, and Brakes.


CprE 458/558: Real-Time Systems (G. Manimaran) 7
Example – Car driver (contd)

• Critical tasks: Steering and breaking.

• Non-critical tasks: Turning on radio.

• Performance is not an absolute one. It measures the


goodness of the outcome relative to the best outcome
possible under a given circumstance.

• Cost of fulfilling the mission → Efficient solution.

• Reliability of the driver → Fault-tolerance is a must.

CprE 458/558: Real-Time Systems (G. Manimaran) 8


Real-Time Tasks (Workload)
• Periodic tasks
- Time-driven. Characteristics are known a priori
- Task Ti is characterized by (ci, pi)
E.g.: Task monitoring temperature of a patient in an ICU.

• Aperiodic tasks
- Event-driven. Characteristics are not known a priori
- Task Ti is characterized by (ai, ri, ci, di)
E.g.: Task activated upon detecting change in patient’s
condition.

• Sporadic Tasks
– Known minimum inter-arrival time among successive
instances of a (periodic) task, rather strictly being periodic.

pi : task period    ai : arrival time    ri : ready time


di : deadline     ci : worst case execution time.

CprE 458/558: Real-Time Systems (G. Manimaran) 9


Task constraints
• Deadline constraint

• Resource constraints
– Shared access (read-read)
– Exclusive access (write-x)

• Precedence constraints
– T1  T2: Task T2 can start executing only after T1
finishes its execution

• Fault-tolerant Requirements
– To achieve higher reliability for task execution
– Redundancy in execution

CprE 458/558: Real-Time Systems (G. Manimaran) 10


Notion of Predictability
• The most common denominator that is expected from a real-time
system is predictability.

– The behavior of the real-time system must be


predictable which means that with certain
assumptions about workload and failures, it
should be possible to show at “design time”
that all the timing constraints of the
application will be met.

• For static systems, 100% guarantees can be given at design time.



• For dynamic systems, 100% guarantee cannot be given since the
characteristics of tasks are not known a priori.

• In dynamic systems, predictability means that once a task is


admitted into the system, its guarantee should never be violated as
long as the assumptions under which the task was admitted hold.

CprE 458/558: Real-Time Systems (G. Manimaran) 11


Computing systems

Uniprocessor, multiprocessor (multicore systems),


distributed system, networked control systems

CprE 458/558: Real-Time Systems (G. Manimaran) 12


Common Misconceptions
• Real-time computing is equivalent to fast
computing.

• Real-time programming is assembly coding,


priority interrupt programming, and writing
device drivers.

• Real-time systems operate in a static


environment.

• The problems in real-time system design have


all been solved in other areas of computer
science.
CprE 458/558: Real-Time Systems (G. Manimaran) 13

You might also like