Real-time systems are systems interacting with the real world. Their correctness depends on the timeliness of results. This topic touches many of the classical branches of computer science. It is related to computer architecture like bus design, operating systems, programming languages, software engineering, use cases like multimedia or car electronics, and theoretical computer science. Processor scheduling, a synonym for real-time systems in many universities, is but a true subset of what we try to teach in this course.
The lecture is very loosely based on these two books: Jane Liu: Real-Time Systems, Hermann Kopetz: Real-Time Systems
Despite bearing the same title, the books a fundamentally different. The authors even follow different schools of real-time systems. Neither book covers all areas of real time systems. Consequently, we use both books in the lecture and also mix in publications and own experiences. And we are generous with leaving things out.
The lecture will be a bit heterogeneous, as we are trying to cover a broad range of topics. However, we cut short on scheduling theory and the deeper mathematics, as this is covered in the lecture on scheduling theory.