0% found this document useful (0 votes)
190 views24 pages

Real-Time Systems and Programming Languages: Alan Burns and Andy Wellings

Uploaded by

KARUNAMOORTHY B
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
190 views24 pages

Real-Time Systems and Programming Languages: Alan Burns and Andy Wellings

Uploaded by

KARUNAMOORTHY B
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 24

Real-Time Systems and

Programming Languages

Alan Burns and Andy Wellings

Real-Time Systems and Programming Languages © Alan Burns and Andy Wellings
Other books

Ada 2005 RTSJ Version 1.0.1


Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 2 of 24
Prerequisites
 Basic understanding of Ada and C
 Basic understanding of Computer
Architectures.
 Basic understanding of Operating Systems

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 3 of 24
Book Aims
 Understanding of the broad concept of real-
time systems
 Practical understanding for industry
 To stimulate research interest

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 4 of 24
Overall Technical Aims
 To understand the basic requirements of real-time
systems and how these requirements have
influenced the design of real-time programming
languages and real-time operating systems
 To understand the implementation and analysis
techniques which enable these requirements to be
realized

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 5 of 24
What is a real-time system?
 A real-time system is any information processing system
which has to respond to externally generated input stimuli
within a finite and specified period
 the correctness depends not only on the logical result but
also the time it was delivered
 failure to respond is as bad as the wrong response!
 The computer is a component in a larger engineering
system => EMBEDDED COMPUTER SYSTEM
 99% of all processors are for the embedded systems market

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 6 of 24
Terminology
 Hard real-time — systems where it is absolutely
imperative that responses occur within the required
deadline, e.g. A flight control system

 Soft real-time — systems where deadlines are important


but which will still function correctly if deadlines are
occasionally missed. E.g. Data acquisition system

 Firm real-time — systems which are soft real-time but in


which there is no benefit from late delivery of service
A single system may have hard, soft and firm real-time
subsystems. In reality many systems will have a cost function
associated with missing each deadline

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 7 of 24
Terminology
 Time-aware — system makes explicit reference to time
(eg. open vault door at 9.00

 Reactive — system must produce output within deadline


(as measured from input)
 Control systems are reactive systems
 Required to constraint input and output (time)
variability, input jitter and output jitter control

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 8 of 24
Terminology
 Time-triggered — computation is triggered by the passage of
time
 Release activity at 9.00

 Release activity every 25ms – a periodic activity

 Event-trigger — computation is triggered by an external or


internal event
 The released activity is called sporadic if there is a bound on the arrival
interval of the event

 The released activity is called aperiodic if there is no such bound

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 9 of 24
A simple fluid control system
Interface

Pipe

Input flow Flow meter


reading

Processing

Valve
Output valve
angle
Time
Computer

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 10 of 24
A Grain-Roasting Plant

Bin

Furnace
Fuel Tank

grain
Pipe

fuel

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 11 of 24
A Widget-Packing Station

Switch
Computer

Switch

Assembly line

Bell

Line controller Box

0 = stop
1 = run

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 12 of 24
A Process Control System
Process
Control
Computer

Temperature Finished
Valve Stirrer
Chemicals Transducer Products
and
Materials

PLANT
Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 13 of 24
A Production Control System

Production
Control
System

Finished
Products
Parts

Machine Tools Manipulators Conveyor Belt

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 14 of 24
Command and Control System
Command
Post

Command and Control


Computer

Temperature, Pressure, Power and so on

Terminals Sensors/Actuators

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 15 of 24
A Typical Embedded System
Real-Time Algorithms for Engineering
Interface
Clock Digital Control System

Data Logging Remote


Monitoring System

Database
Data Retrieval Display
and Display Devices

Operator’s
Console Real-Time Computer
Operator
Interface
Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 16 of 24
Other Real-Time Systems
 Multi-media systems
 Including mobile devices

 Cyber-physical systems
 Linking web-based information and the sensed physical

world

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 17 of 24
Characteristics of a RTS
 Guaranteed response times — we need to be able to predict
with confidence the worst case response times for systems;
efficiency is important but predictability is essential

 Concurrent control of separate system components —


devices operate in parallel in the real-world; better to model
this parallelism by concurrent entities in the program

 Facilities to interact with special purpose hardware — need


to be able to program devices in a reliable and abstract way

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 18 of 24
Characteristics of a RTS
 Support for numerical computation – be able to support the
discrete/continuous computation necessary for control system
feed-back and feed-forward algorithms

 Large and complex — vary from a few hundred lines of


assembler or C to 20 million lines of Ada, also variety as well as
size is an issue

 Extreme reliability and safety — embedded systems typically


control the environment in which they operate; failure to control
can result in loss of life, damage to environment or economic
loss

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 19 of 24
RT Programming Languages
 Assembly languages
 Sequential systems implementation languages — e.g.
RTL/2, Coral 66, Jovial, C.
 Both normally require operating system support.
 High-level concurrent languages. Impetus from the software
crisis. e.g. Ada, Chill, Modula-2, Mesa, Java.
 No operating system support!
 We will consider:
 Java/Real-Time Java
 C and Real-Time POSIX (not in detail)
 Ada 2005

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 20 of 24
Real-Time Languages and OSs

User Programs User Program

Operating Including Operating

Hardware Hardware

System
System Components

Typical OS Configuration Typical Embedded Configuration

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 21 of 24
Summary

 This lecture has introduced a number of key


definitions and examples of real-time systems

 The basic aspects of a real-time are well


represented in the following diagrams

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 22 of 24
Aspects of Real-Time Systems
Real-Time

Temporal Characteristics
Structure Classification (see next page)
Requirements

Periodic/
Deadline/ Input/output Time- Event- Role of
Sporadic/ Criticality
Latency jitter Aperiodic triggered triggered time

hard time-aware

soft reactive

firm

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 23 of 24
Aspects of Real-Time Systems

Characteristics

Interaction
Real-Time Numerical Efficiency/ Reliability/ Large/
Concurrency with
facilities computation Predictability Safety Complex
hardware

Real-Time Systems and Programming Languages: © Alan Burns and Andy Wellings 24 of 24

You might also like