Real Time Systems, 6 credits
Realtidssystem, 6 hp
TDDD07
Main field of study
Computer Science and Engineering Computer ScienceCourse level
Second cycleCourse type
Programme courseExaminer
Simin Nadjm-TehraniDirector of studies or equivalent
Martin SjölundEducation components
Preliminary scheduled hours: 50 hRecommended self-study hours: 110 h
Available for exchange students
YesMain field of study
Computer Science and Engineering, Computer ScienceCourse level
Second cycleAdvancement level
A1XCourse offered for
- Master of Science in Computer Science and Engineering
- Master of Science in Information Technology
- Master of Science in Computer Science and Software Engineering
- Master of Science in Industrial Engineering and Management
- Master of Science in Industrial Engineering and Management - International
- Master's Programme in Electronics Engineering
- Master's Programme in Computer Science
- Master's Programme in Cybersecurity
Prerequisites
First and second programming courses. A course on concurrent programming and operating systems.Intended learning outcomes
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 describe 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. Analysis of conflicting demands such as energy efficiency and responsiveness.
- Analyze and implement methods for real-time communication in hard real-time applications, including event-triggered and time-triggered techniques.
- 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.
Course content
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 approaches for assuring networked applications' quality of service (QoS), e.g. Intserv and Diffserv. Managing datacentre requirements with respect to energy efficiency and responsiveness. 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.
Teaching and working methods
The theory is presented during the lectures. Lessons help to solve exercises within the theoretical areas and prepare for the laboratory assignments. Resource sessions are used for discussing questions raised by students.
Examination
LAB1 | Laboratory work | 2 credits | U, G |
TEN1 | Written examination | 4 credits | U, 3, 4, 5 |
Grades
Four-grade scale, LiU, U, 3, 4, 5Other information
About teaching and examination language
The teaching language is presented in the Overview tab for each course. The examination language relates to the teaching language as follows:
- If teaching language is “Swedish”, the course as a whole could be given in Swedish, or partly in English. Examination language is Swedish, but parts of the examination can be in English.
- If teaching language is “English”, the course as a whole is taught in English. Examination language is English.
- If teaching language is “Swedish/English”, the course as a whole will be taught in English if students without prior knowledge of the Swedish language participate. Examination language is Swedish or English depending on teaching language.
Other
The course is conducted in such a way that there are equal opportunities with regard to sex, transgender identity or expression, ethnicity, religion or other belief, disability, sexual orientation and age.
The planning and implementation of a course should correspond to the course syllabus. The course evaluation should therefore be conducted with the course syllabus as a starting point.
The course is campus-based at the location specified for the course, unless otherwise stated under “Teaching and working methods”. Please note, in a campus-based course occasional remote sessions could be included.
Department
Institutionen för datavetenskapCourse literature
Books
- Burns & Wellings, (2009) Real-Time Systems and Their Programming Languages 4:e upplagan
Chapters recommended on the course web pages.
Articles
Articles from the university digital library. Presented on the course web.
Compendia
Code | Name | Scope | Grading scale |
---|---|---|---|
LAB1 | Laboratory work | 2 credits | U, G |
TEN1 | Written examination | 4 credits | U, 3, 4, 5 |
Books
Chapters recommended on the course web pages.
Articles
Articles from the university digital library. Presented on the course web.
Compendia
Note: The course matrix might contain more information in Swedish.
I | U | A | Modules | Comment | ||
---|---|---|---|---|---|---|
1. DISCIPLINARY KNOWLEDGE AND REASONING | ||||||
1.1 Knowledge of underlying mathematics and science (G1X level) |
|
|
|
|||
1.2 Fundamental engineering knowledge (G1X level) |
|
X
|
|
LAB1
TEN1
|
Scheduling, resource sharing, dependability |
|
1.3 Further knowledge, methods, and tools in one or several subjects in engineering or natural science (G2X level) |
X
|
X
|
|
LAB1
TEN1
|
Operating systems, software engineering, QoS and networks |
|
1.4 Advanced knowledge, methods, and tools in one or several subjects in engineering or natural sciences (A1X level) |
|
X
|
|
TEN1
|
Distributed scheduling in datacentres, hard real-time communication |
|
1.5 Insight into current research and development work |
|
X
|
|
TEN1
|
Design and timing analysis |
|
2. PERSONAL AND PROFESSIONAL SKILLS AND ATTRIBUTES | ||||||
2.1 Analytical reasoning and problem solving |
|
X
|
X
|
LAB1
|
||
2.2 Experimentation, investigation, and knowledge discovery |
|
X
|
X
|
LAB1
|
||
2.3 System thinking |
|
X
|
X
|
LAB1
|
||
2.4 Attitudes, thought, and learning |
|
X
|
X
|
LAB1
TEN1
|
||
2.5 Ethics, equity, and other responsibilities |
X
|
|
|
|||
3. INTERPERSONAL SKILLS: TEAMWORK AND COMMUNICATION | ||||||
3.1 Teamwork |
|
|
X
|
|||
3.2 Communications |
|
X
|
X
|
LAB1
TEN1
|
||
3.3 Communication in foreign languages |
|
|
X
|
|||
4. CONCEIVING, DESIGNING, IMPLEMENTING AND OPERATING SYSTEMS IN THE ENTERPRISE, SOCIETAL AND ENVIRONMENTAL CONTEXT | ||||||
4.1 External, societal, and environmental context |
|
|
|
|||
4.2 Enterprise and business context |
|
X
|
|
TEN1
|
||
4.3 Conceiving, system engineering and management |
|
X
|
X
|
LAB1
TEN1
|
||
4.4 Designing |
|
X
|
X
|
LAB1
TEN1
|
||
4.5 Implementing |
|
|
|
|||
4.6 Operating |
X
|
|
|
|||
5. PLANNING, EXECUTION AND PRESENTATION OF RESEARCH DEVELOPMENT PROJECTS WITH RESPECT TO SCIENTIFIC AND SOCIETAL NEEDS AND REQUIREMENTS | ||||||
5.1 Societal conditions, including economic, social, and ecological aspects of sustainable development for knowledge development |
|
X
|
|
TEN1
|
Datacenter energy efficiency through scheduling |
|
5.2 Economic conditions for knowledge development |
|
|
|
|||
5.3 Identification of needs, structuring and planning of research or development projects |
|
|
|
|||
5.4 Execution of research or development projects |
X
|
|
|
Guest lectures from industry |
||
5.5 Presentation and evaluation of research or development projects |
|
|
X
|
LAB1
|
Documentation of systematic measurements and outcomes (verbal and written presentation) |
This tab contains public material from the course room in Lisam. The information published here is not legally binding, such material can be found under the other tabs on this page.
There are no files available for this course.