real time operating systems introduction to real-time systems course originally developed by maj ron...
TRANSCRIPT
Real Time Operating Systems
Introduction to
Real-Time SystemsCourse originally developed by
Maj Ron Smith
Apr 20, 2023 1Dr. Alain Beaulieu
Apr 20, 2023 Dr. Alain Beaulieu
Outline
Definitions
Applications of real-time computer
systems
Lifecycles
An Example
2
Apr 20, 2023 Dr. Alain Beaulieu
Definitions
Real-Time System:
“A real-time system is a software system that maintains an ongoing and timely interaction with its environment”
Bran Selic
3
Apr 20, 2023 Dr. Alain Beaulieu
Definitions (cont’d)
Real-Time System:
“We can think of real-time systems as those that react to external inputs and in a timely manner affect the environment in which they operate”
Burns and Wellings
4
Apr 20, 2023 Dr. Alain Beaulieu
Definitions (cont’d)
Real-Time System:“ 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 Oxford Dictionary of Computing
5
Apr 20, 2023 Dr. Alain Beaulieu
Definitions (cont’d)
Key characteristics of all the definitions
timeliness timeliness = correctness
interaction with its environment hardware interfaces
6
Apr 20, 2023 Dr. Alain Beaulieu
Definitions (cont’d)
Aren’t all computer systems real-time
While almost all software does interface to hardware, Windows, Icons, Menus and Pointers (WIMP) programming is NOT considered real-time
?
7
Apr 20, 2023 Dr. Alain Beaulieu
Definitions (cont’d)
Hard versus soft real-time hard real-time systems require that strict time
deadlines are met; the strictest are when an event must occur at time x, not just by time x.
in soft real-time systems timeliness of events is important but not necessarily critical.
Often expressed as : x out of y events be on time, or
by x time ± some slack
8
Apr 20, 2023 Dr. Alain Beaulieu
Definitions (cont’d)
Real-time versus embedded software most real-time software is “embedded” within
some larger system, and is usually the de facto central nervous system.
therefore quite often real-time and embedded are used interchangeably when referring to the software of real-time systems.
9
Apr 20, 2023 Dr. Alain Beaulieu
Applications of real-time systems
process control nuclear power plant chemical plant
production control automobile assembly line
communication, command & control air traffic control system
embedded systems TV Satellite receiver
10
Apr 20, 2023 Dr. Alain Beaulieu
Life Cycles of real-time systems
Small embedded commercial applications typically one-shot
field and (hope to) forget
high multiples cost driven efficiency requirements
11
Apr 20, 2023 Dr. Alain Beaulieu
Life Cycles (continued)
Larger real-time systems (including most Military applications)
generally subject to constant change very long life-cycles expensive to maintain robust designs are critical Configuration management is a must Integrated Logistics Support
Software support must be planned
12
Apr 20, 2023 Dr. Alain Beaulieu
Examples of Some Real Real-Time systems
Low Level Air Defence ADATS 10 Computers – 10 CSCI (without the missiles)
4 Radar Computers C16A, B, C, D Data Processing Unit Turret Electronic Unit Interface Electronic Unit Coast Mode Processor Control Electronic Unit Servo Electronic Unit
full MIL-STD-2167A
13
Apr 20, 2023 Dr. Alain Beaulieu 14
Examples of some Real-Time Systems
InterfaceElec Unit
To Radar and other ADATS (network of 6 +AF-BCP)
Serial Interface& Auto Scanner
R/D Converter16 Channels
ResolversGBA, LOSSA
Discrete I/O24/24 Bits
TEU TAU LEU ECU MV PSSEU
Mount Servo Elect Unit
A/D Converter16 Channels
D/A Converter24 Channels
Analog I/PGBA, LOSSA
Analog O/PSEU
CDU
Main Memory
DPU
CMP
Clock and interrupts16 channel
Apr 20, 2023 15Dr. Alain Beaulieu
Apr 20, 2023 Dr. Alain Beaulieu
Some problems…
Several computer languages, C, Several Assembly Languages, Pascal
DPU was a 16 bit processor… when there was none. 4X4 bit-sliced computer
Cyclic Executive No RTOS End-To-End test two weeks DPU only Cycle counting from Pulse Code
Modulation (PCM) Dumps It works but…
16
Apr 20, 2023 Dr. Alain Beaulieu
What might go wrong when developing this type of software?
Requirements formulation / documentation Design formulation / documentation Test formulation / documentation / conduct (Software engineering communication) Schedulability on a single processor Compatibility among systems Support for long-term maintenance
To name just a few
17
Apr 20, 2023 Dr. Alain Beaulieu
Summary
“Real-time and distributed systems (combined) design has proven to be one of the most difficult and intricate problems ever faced. This is primarily because of the complexity of the real world in which these systems operate. Their environment can be bewilderingly diverse, dynamic, and unpredictable - components fail at random, communications are corrupted, interruptions occur when they are most inappropriate, and so on.”
Selic
18