RealTime Computing - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

RealTime Computing

Description:

Characteristics and Challenges of Real-Time Computing Systems ... Drive-by-wire & Tele-driving & Telematics. Page 28. Building Reliable Component-based Systems ... – PowerPoint PPT presentation

Number of Views:110
Avg rating:3.0/5.0
Slides: 30
Provided by: gor139
Category:

less

Transcript and Presenter's Notes

Title: RealTime Computing


1
Real-Time Computing
  • Sunggu Lee
  • EE Dept., POSTECH

2
Overview
  • Introduction
  • Characteristics and Challenges of Real-Time
    Computing Systems
  • Definitions, Issues and Comparisons
  • Tasks and Scheduling
  • Worst-Case Execution Time Analysis
  • Real-Time Software
  • Real-Time Operating Systems
  • Middleware


3
Introduction Crnkovic 2002
  • Embedded computers
  • Examples Medical control equipment, mobile
    phones, and vehicle control systems.
  • Most such embedded systems can also be
    characterized as real-time systems.
  • They must usually meet stringent specifications
    for safety, reliability, limited hardware
    capacity etc

4
Characteristics and Challenges of RTS Crnkovic
2002
  • Real-time systems are computing systems in which
    the meeting of timing constraints is essential to
    correctness.
  • If the system delivers the correct answer, but
    after a certain deadline, it could be regarded as
    having failed.

5
Types of Real-Time Systems
  • Hard real-time system
  • A system where something very bad happens if
    the deadline is not met
  • Examples control systems for aircraft, nucluear
    reactors, chemical power plants, jet engines,
    etc.
  • Soft real-time system
  • A system where the performance is degraded below
    what is generally considered acceptable if the
    deadline is missed
  • Example multimedia system

6
Utility Function (Task Value Function) Kim 2005
Task with a hard deadline
Utility
Task with a soft deadline
1
0
deadline
Time
7
Issues in Real-Time Computing Liu 2000
  • Real-time computing deals with all problems in
    computer architecture, fault-tolerant computing
    and operating systems are also problems in
    real-time computing, with the added complexity of
    having to meet real-time constraints
  • Real-time computer systems differ from
    general-purpose systems
  • They are more specific in their applications
  • The consequences of their failure are more
    drastic
  • Emphasis is placed on meeting task deadlines

8
Example Problems in Real-Time Computing
  • Example 1 Task Scheduling
  • General-purpose system can use round-robin
    scheduling
  • This is NOT suitable for real-time systems
    because high-priority tasks may miss their
    deadlines with round-robin scheduling
  • A priority mechanism is necessary
  • Example 2 Cache Usage Scheduling
  • A general-purpose system typically allows the
    process that is currently executing the right to
    use the entire cache area
  • This keeps the cache miss rate low
  • Side effect task run times are less predictable
  • Thus, not so desirable for real-time systems

9
Comparison of Typical Systems Liu 2000
  • Jet Engine Control System
  • Designer knows precise workload to be executed
  • System must be designed to meet task deadlines
  • If a deadline is not met, the jet engine may
    explode
  • General-Purpose Computer Workstation
  • Workload is not known in advance
  • System should be designed to be fast on the
    average
  • Task execution time variance is less important

10
Tasks Crnkovic 2002
  • Real-time systems can be constructed out of
    sequential programs, but typically they are built
    out of concurrent programs, called tasks.
  • Tasks are usually divided into
  • Periodic tasks consist of an infinite sequence
    of identical activities, called instances, which
    are invoked within regular time periods.
  • Non-periodic or aperiodic are invoked by the
    occurrence of an event.
  • Sporadic aperiodic tasks with a bounded
    interarrival time

11
Scheduling Crnkovic 2002
  • Offline scheduling
  • The scheduler has complete knowledge of the task
    set and its constraints.
  • Online scheduling
  • Make their scheduling decisions during run-time.
  • Deadline
  • Is the maximum time within which the task must
    complete its execution with respect to an event.
  • Real-time systems are divided into two classes,
    hard and soft real-time systems

12
Schedulability Analysis Crnkovic 2002
  • At this point we must check that the temporal
    requirements of the system can be satisfied,
    assuming time budgets assigned in the detailed
    design stage.
  • In other words, we need to make a schedulability
    analysis of the system based on the temporal
    requirements of each component

13
WCET Verification Crnkovic 2002
  • Performing a worst-case analysis can either be
    based on measurements or on a static analysis of
    the source code.
  • What is more interesting in the test cases is the
    execution time behavior shown as a function of
    input parameters as shown in the following slide.

14
An Execution Time Graph Crnkovic 2002
  • The execution time shows different values for the
    different
  • input sub-domains.

15
Maximum execution time per sub-domain Crnkovic
2002
16
Composition of Components Crnkovic 2002
17
End-To-End Deadlines Crnkovic 2002
  • End-to-end deadlines
  • Are set such that the system requirements are
    fulfilled in the same way as the time budgets are
    set
  • Should be specified for the input to and output
    from the component since the WCET cannot be
    computed since its parts may be executing with
    different periods.

18
Real-Time Operating System
  • Multi-tasking OS designed to permit tasks
    (processes) to complete within precisely stated
    deadlines
  • If deadline constraints cannot be met for a new
    task, it may be rejected
  • If a new task would result in deadline violations
    for other tasks, it may be rejected
  • Example commercial operating systems
  • Vrtx Mentor Graphics Systems
  • VxWorks and pSOS Wind River Systems
  • RTLinux FSMLabs, later acquired by Wind River
    Systems

19
Real-Time Middleware
  • ObjectWeb defines middleware as "The software
    layer that lies between the operating system and
    the applications on each side of a distributed
    computing system in a network." Wikipedia
  • Collection of Tools for Real-Time Programming
  • Real-Time Java
  • Real-Time Middleware Systems
  • Real-Time CORBA
  • CORBA Component Object Request Broker
    Architecture
  • Time-triggered Message-triggered Object (TMO)
  • System developed at the University of California
    at Irvine

20
Essence of RT Programming Time-Triggered Action
Kim 2005
  • At time T do S
  • Start S during T - ?, T ?
  • A fundamental distinguishing part of real-time
    programming
  • If S is a function, a control signal for
    activation of the function in a node is derived
    from the progression of real-time
  • Whenever the real-time clock within a node
    reaches a preset value T specified in a
    scheduling table, a control signal is generated
  • In principle, S may be a single assignment
    statement, a compound statement, or a function.

21
Essence of RT Programming Time-Triggered Action
Kim 2005
  • Factors impacting response times
  • - Application, Middleware, OS, Hardware, Comm
    Network

Real-timeobjects
Middleware for real-time support
Middleware for real-time support
Middleware for real-time support
OS
OS
OS
H/W
H/W
H/W
22
Essence of RT Programming Time-Triggered Action
(cont) Kim 2005
  • If there are many factors impacting response
    times, analysis of response times becomes very
    complicated and often impossible unless every
    contributing factor has been very carefully
    designed.
  • gt Conventional response
  • Avoid most of the software layers
  • Implement application software in assembly or C
    programs
  • ?
  • Very low design productivity !!!
  • This practice CAN NOT continue in the 2nd half
    of 21st Century !!! (except in unusual
    circumstances)

23
Facilities in TMO for Time-Triggered Actions
Kim 2005
TMO Time-Triggered Message-Triggered
Object
24
New-Generation Real-Time (RT) Distributed
Computing (DC) Component Kim 2005
High-Level RT ObjectTime-triggered
Message-triggered Object (TMO)
  • Initiated in early 1990's
  • Meant to be a natural easy-to-use extension of
    the C/Java object
  • Can support Hard-RT DC Software Engineering (SE)
    as well as Non-RT DC SE
  • Contains only high-level intuitive and yet
    precise expressions of timing requirements

25
New-Generation RT DC Component Kim 2005
High-Level RT ObjectTime-triggered
Message-triggered Object (TMO)
  • Meant to be a natural easy-to-use extension of
    the C/Java object
  • Can support Hard-RT DC SE as well as Non-RT DC SE
  • Contains only high-level intuitive and yet
    precise expressions of timing requirements
  • Formulated from the beginning with the objective
    of enabling design-time guaranteeing of timely
    actions

26
TMO Network Structuring Kim 2005
All conceivable RT DC applications and Non-RT
applications can be Structured as TMO networks .
Kernel ( e.g. NT kernel )
Kernel ( e.g. NT kernel )
Kernel ( e.g. NT kernel )
H/W
H/W
H/W
27
Some New-Generation Applications Kim 2005
  • Distributed multi-media processing
  • Next-generation RT VR (Virtual Reality)
  • Multi-party multi-media conferencing and
    collaboration
  • Distributed orchestra (?)
  • Drive-by-wire Tele-driving Telematics

F
Precisely timed actions, please !!!
  • Military command-control
  • Missile defense (ground targets, airborne
    targets, ship-borne targets) and
    sub-division level command-control
  • Time-sensitive health care
  • Monitoring of in- out-patients
  • Remotely controlled surgery
  • Non-stop web servers

Non-stop service, please !!!
28
An example of a TMO network
Ex 2
Telematics in a Car Fleet Kim 2005
29
References
  • Jane Liu, Real-Time Systems, Prentice-Hall, Upper
    Saddle River, 2000.
  • Ivica Crnkovic and Magnus Larsson, Building
    Reliable Component-Based Software Systems, Artech
    House Publishers, July 2002. PowerPoint slides
    from http//www.idt.mdh.se/cbse-book/presentations
    /13-chapterWC.ppt
  • Kane (K. H.) Kim, PowerPoint slides used for
    undergraduate class ECES 123 Introduction to
    Real-Time Distributed Programming taught at the
    University of California at Irvine,
    http//dream.eng.uci.edu
Write a Comment
User Comments (0)
About PowerShow.com