| TDDD07 |
Real Time Systems, 6 ECTS credits.
/Realtidssystem/
For:
CS
D
DAV
IT
SOC
|
OBS! |
Overlapping course contents: TDDA47, TDDC47, TTIT62.
|
| |
Prel. scheduled
hours: 42
Rec. self-study hours: 118
|
| |
Area of Education: Technology
Main field of studies: Computer Science, Computer Engineering
|
| |
Advancement level
(G1, G2, A): A
|
|
Aim:
After finishing this course the student is able to:
- Choose, apply and implement CPU scheduling algorithms for hard real-time systems and their response time analysis, including mechanisms for sharing of multiple resources and their relationship to deadlock avoidance.
- Identify and analyze characteristics of real-time operating systems in terms of predictability compared to ordinary operating systems.
- Explain implications of dependability requirements, identify and apply methods for fault tolerance in real-time systems development.
- Describe and exemplify implications of predictability requirements for distributed real-time systems, and quality of service (QoS) requirements in soft real-time applications.
- Analyze and implement methods for real-time communication in hard real-time applications, using event-triggered and time-triggered buses.
- Describe and exemplify design and modelling issues related to real-time systems.
- Identify and model applications that require the use of real-time systems techniques and predict the outcomes for application of task/message scheduling and resource sharing methods.
- Structure a real-time system and evaluate its performance based on application of different algorithms and methods.
- Evaluate information from different research articles and books used as course material, and relate the information to the goals above.
|
|
Prerequisites: (valid for students admitted to programmes within which the course is offered)
First and second programming courses. A course on concurrent programming and operating systems.
Note: Admission requirements for non-programme students usually also include admission requirements for the programme and threshhold requirements for progression within the programme, or corresponding.
|
|
Organisation:
The theory is presented during the lectures. Lessons help to analyze the presented material and prepare for the laboratory assignments.
|
|
Course contents:
Introduction to real-time systems applications. Resource allocation and in particular allocation of CPU as a resource (scheduling). Algorithms for static and dynamic scheduling: cyclic executive, rate-monotonic, earliest deadline first. Deadlock related problems in a real-time context and ceiling protocols for management of multiple resources. Overview of real-time operating systems. Dependability and its implications in real-time system development, fault tolerance, and exception handling. Interaction between resource allocation and performance demands in different systems, including methods for assuring networked applications' quality of service (QoS), e.g. Intserv and Diffserv. Design and application modelling in real-time systems. Distributed real-time systems and issues related to time, clocks and shared state. Real-time communication and support in time-triggered (TTP) and event-triggered (CAN) buses.
|
|
Course literature:
Burns & Wellings: Selected chapters from "Real-Time Systems and Their Programming Languages", Addison-Wesley, Fourth Edition (2009), and published articles from the electronic library.
Laboratory instruction material, published by the Department of Computer and Information Science.
|
|
Examination: |
|
Written examination Laboratory work |
4 ECTS 2 ECTS
|
| |
|
|
Course language is English.
Department offering the course: IDA.
Director of Studies: Tommy Färnqvist
Examiner: Simin Nadjm-Tehrani
Course Syllabus in Swedish
|