Chapter 2 Real-time software design

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 13Slide 1 Chapter 13 Real-time Software Design.
Advertisements

1 Note content copyright © 2004 Ian Sommerville. NU-specific content copyright © 2004 M. E. Kabay. All rights reserved. Real-time Software Design IS301.
Real-time Software Design
Real-time software Sommerville, Hfst. 13. Sommerville, Ch. 132 Real-time systems A real-time system is a software system where the correct functioning.
Chapter 20- Embedded Systems
Computer Architecture
Chapter 20- Embedded Systems Lecture 1. Topics covered  Embedded systems design  Architectural patterns  Timing analysis  Real-time operating systems.
5.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Chapter 5: CPU Scheduling.
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
Figures – Chapter 20.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 2.
Tasks Periodic The period is the amount of time between each iteration of a regularly repeated task Time driven The task is automatically activated by.
Real-time Software Design
April 16, 2009 Center for Hybrid and Embedded Software Systems PtidyOS: An Operating System based on the PTIDES Programming.
1 / 32 CS 425/625 Software Engineering Real-Time Software Design Based on Chapter 15 of the textbook [SE-8] Ian Sommerville, Software Engineering, 8 th.
OS Fall ’ 02 Introduction Operating Systems Fall 2002.
OPERATING SYSTEM OVERVIEW
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Advanced OS Chapter 3p2 Sections 3.4 / 3.5. Interrupts These enable software to respond to signals from hardware. The set of instructions to be executed.
Real-Time Systems and Programming Languages
Chapter 11 Operating Systems
CprE 458/558: Real-Time Systems
Real-Time Operating System Chapter – 8 Embedded System: An integrated approach.
EMBEDDED SOFTWARE Team victorious Team Victorious.
Chapter 1 Embedded And Real-Time System Department of Computer Science Hsu Hao Chen Professor Hsung-Pin Chang.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 1.
1 Embedded Systems Development. 2 Topics covered  Embedded systems design  Architectural patterns  Timing analysis  Real-time operating systems.
Real-Time Software Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Real Time Process Control (Introduction)
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
 Dr. Syed Noman Hasany 1.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 16 System Architecture and Design II.
1 소프트웨어공학 강좌 Chap 11. Real-time software Design - Designing embedded software systems whose behaviour is subject to time constraints -
Recall: Three I/O Methods Synchronous: Wait for I/O operation to complete. Asynchronous: Post I/O request and switch to other work. DMA (Direct Memory.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
المحاضرة الاولى Operating Systems. The general objectives of this decision explain the concepts and the importance of operating systems and development.
Reference: Ian Sommerville, Chap 15  Systems which monitor and control their environment.  Sometimes associated with hardware devices ◦ Sensors: Collect.
Slide 1 Chapter 11 Real –time Software Designs. Slide 2 Real-time systems l Systems which monitor and control their environment l Inevitably associated.
EKT 424 Real Time System 1.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
INFORMATION SYSTEM-SOFTWARE Topic: OPERATING SYSTEM CONCEPTS.
1 / 30 CS 425/625 Software Engineering Real-Time Software Design Based on Chapter 13 of the textbook [SOMM00] Ian Sommerville, Software Engineering, 6.
1: Operating Systems Overview 1 Jerry Breecher Fall, 2004 CLARK UNIVERSITY CS215 OPERATING SYSTEMS OVERVIEW.
©Ian Sommerville, Robin Abraham 2004CS 361, Summer 2004 Slide 1 Real-time Software Design.
Real-time Software Design King Saud University College of Computer and Information Sciences Department of Computer Science Dr. S. HAMMAMI.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 2 Computer-System Structures Slide 1 Chapter 2 Computer-System Structures.
Concurrency, Processes, and System calls Benefits and issues of concurrency The basic concept of process System calls.
Chapter 21– Real-time Software Engineering 04/12/2014Chapter 21. Real-time Software Engineering1.
Real-time Software Design Chapter 15 of Ian Sommerville’s Book on Software Engineering.
Stephen Norum LCLS Oct. 12, LCLS Machine Protection System Outline Overview of interim MPS Update on the interim MPS.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Software Design.
Real-time System Definition A real-time system is a software system where the correct functioning of the system depends on the results produced by the.
Embedded System Design and Development Introduction to Embedded System.
Embedded software / Real-time Software Engineering 1.
Real-time Software Design. Objectives l To explain the concept of a real-time system and why these systems are usually implemented as concurrent processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
Real-time Software Design
Real-time Software Design
Real-time Software Design
Resource Management IB Computer Science.
CS490 Windows Internals Quiz 2 09/27/2013.
Real-time Software Design
חוברת שקפים להרצאות של ד"ר יאיר ויסמן מבוססת על אתר האינטרנט:
Real-time Software Design
Shell & Kernel Concepts in Operating System
Real-time Software Design
CS 501: Software Engineering Fall 1999
LCLS Machine Protection System
Presentation transcript:

Chapter 2 Real-time software design Lab 02 (Software Engineering 8th Ed. Chapter 15)

Objectives To explain the concept of a real-time system and why these systems are usually implemented as concurrent processes To describe a design process for real-time systems To explain the role of a real-time operating system To introduce generic process architectures for monitoring and control and data acquisition systems

Real-time systems Systems which monitor and control their environment Software system where the correct functioning of the system depends on the results produced by the system and the time at which these results are produced Soft real-time system Operation is degraded if results are not produced according to the specified timing requirements Hard real-time system Operation is incorrect if results are not produced according to the timing specification Inevitably associated with hardware devices Sensors Collect data from the system environment Actuators Change (in some way) the system’s environment Time is critical Real-time systems MUST respond within specified times.

Question 1 Explain why an object-oriented approach to software development may not be suitable for real- time systems.

Design process of real-time systems Identify the stimuli to be processed and the required responses to these stimuli For each stimulus and response, identify the timing constraints Aggregate the stimulus and response processing into concurrent processes A process may be associated with each class of stimulus and response Design algorithms to process each class of stimulus and response These must meet the given timing requirements Design a scheduling system which will ensure that processes are started in time to meet their deadlines Integrate using a real-time operating system

Real-time operating systems (real-time executives) Real-time clock. Provides information for process scheduling. Interrupt handler. Manages aperiodic requests for service. Scheduler. Chooses the next process to be run. Resource manager. Allocates memory and processor resources. Despatcher. Starts process execution. Figure 15.4 Components of a real-time operating system

Monitoring and control and data acquisition systems Monitoring systems examine sensors and report their results Control systems take sensor values and control hardware actuators Acquisition systems collect data from sensors for subsequent processing and analysis

Question 2 Draw a state machine model of the control software of a compact disk player. States include: Idle Ready Door close Door open Ready to play Disk playing Track selecting

Question 3 A train protection system automatically applies the brakes of a train if the speed limit for a segment of track is exceeded or if the train enters a track segment that is currently signalled with a red light (i.e., the segment should not be entered). Details are shown in Figure 15.15. Identify the stimuli that must be processed by the on-board train control system and the associated responses to these stimuli. If a periodic process in the on-board train protection system is used to collect data from the trackside transmitter, how often must it be scheduled to ensure that the system is guaranteed to collect information from the transmitter? Explain how you arrived at your answer.

Figure 15.4 Components of a real-time operating system Question 3 (cont’d) The system acquires information on the speed limit of a segment from a trackside transmitter, which continually broadcasts the segment identifier and its speed limit. The same transmitter also broadcasts information on the status of the signal controlling that track segment. The time required to broadcast track segment and status information is 50ms. The train can receive information from the trackside transmitter when it is within 10m of a transmitter. The maximum train speed is 180kph. Sensors on the train provide information about the current train speed (updated every 250ms) and the train brake status (updated every 100ms). If the train speed exceeds the current segment limit by more than 5kph, a warning is sounded in the driver’s cabin. If the train speed exceeds the current segment speed limit by more than 10kph, the train’s brakes are automatically applied until the speed falls to the segment speed limit. Train brakes should be applied within 100ms of the time when the excessive train speed has been detected. If the train enters a train segment that is signalled with a red light, the train protection system applies the train brakes and reduces speed to zero. Train brakes should be applied within 100ms of the time when the red light a signal is received. The system continually updated a status display in the deriver’s cabin. Figure 15.4 Components of a real-time operating system