Popis předmětu - BE0M38PSR

Přehled studia | Přehled oborů | Všechny skupiny předmětů | Všechny předměty | Seznam rolí | Vysvětlivky               Návod
BE0M38PSR Real -Time Systems Programming
Role:PV Rozsah výuky:2P+2C
Katedra:13138 Jazyk výuky:EN
Garanti:Tereň O., Tomlain J. Zakončení:Z,ZK
Přednášející:Tereň O., Tomlain J. Kreditů:6
Cvičící:Tereň O., Tomlain J. Semestr:Z

Anotace:

The goal of this course is to provide students with basic knowledge about software development for real-time systems, for example in control and embedded applications. The main focus is on embedded systems equipped with a real-time operating system (RTOS). Lectures will cover real-time systems theory, which can be used to formally verify timing correctness such systems. Another set of lectures will introduce methods and techniques used for development of safety-critical systems, whose failure may have catastrophic consequences. During labs, students will first solve a few simple tasks to familiarize them with basic components of VxWorks RTOS and to benchmark the used OS and hardware (Xilinx Zynq). The obtained metrics represent the typical criteria for assessing the suitability of a given platform for the given application. After the simple tasks, students will solve complex task of time-critical motion control application which will require full utilization of RTOS features. All the tasks at the labs will be implemented in C (or C++) language.

Obsah:

The graduate of the course will become familiar with the basic properties of real-time operating systems.
1. Introduction to real-time systems, requirements, properties, applications
2. Azure RTOS (ThreadX) operating system
3. POSIX 1003.1b - portable real-time operating system interface
4. Real-time system reference model
5. Off-line (clock-driven) scheduling
6. Static priority scheduling
7. Dynamic priority scheduling
8. Shared resource management in real-time systems
9. Combining real-time and conventional tasks
10. Development of safety-critical applications, standards for functional safety, safety integrity level (SIL)
11. Techniques for increasing the reliability of safety-critical software (redundancy, coding, decomposition)
12. HAZOP study, HAZOP software, application example
13. Multi-core systems and real-time, RTOS overview
The knowledge gained in lectures will be consolidated in exercises through independent work on a semester project. During their work, students will use hardware devices with the STM32H753 processor, such as the STM32 cube IDE development environment and the Azure RTOS (ThreadX) RTOS operating system.

Osnovy přednášek:

1. Introduction to real-time systems, requirements, properties, applications
2. VxWorks operating system (OS)
3. POSIX 1003.1b - portable real-time OS interface
4. Reference model of real-time system
5. Off-line (clock-driven) scheduling
6. Fixed priority scheduling and analysis
7. Dynamic priority scheduling and analysis
8. Shared resource management
9. Combining real-time and non-real-time task, temporal isolation
10. Development of safety critical applications, functional safety standards, safety integriti level (SIL)
11. Techniques for increasing reliability of safety-critical software (redundancy, information coding, decomposition)
12. HAZOP study, software HAZOP, example
13. Multi-core systems and real-time, overview of RTOSes

Osnovy cvičení:

1. Basics of STM32 cube IDE: creating applications, monitoring system execution using TraceX, accessing documentation, debugging
2. ThreadX API: Mutexes, semaphores
3. ThreadX API: Real-Time processes and shared memory
4. Blocking on mutex, priority inheritance
5. Cyclic executive, runtime measurement (WCET)
6. Measuring scheduler latency
7. Measuring latency during Ethernet communication
8. Semester work - distributed real-time motor control (steer-by-wire) + visualization using built-in web

Literatura:

Buttazzo, Giorgio C, Hard Real-Time Computing Systems, Predictable Scheduling Algorithms and Applications, Springer, 2011 Burns A. and Wellings A.: Real-Time Systems and Programming Languages (Fourth Edition), Ada 2005, Real-Time Java and C/Real-Time POSIX, Addison Wesley Longmain, 2009 Redmill F., Morris Ch. et al, System Safety: HAZOP and Software HAZOP, Wiley, April 1999

Požadavky:

Attendee must be capable of writing basic C programs and understand principles of multithreaded programming. It is an advantage (but not requirements) to finish B0B36APO and B4B35OSY before taking this course.

Předmět je zahrnut do těchto studijních plánů:

Plán Obor Role Dop. semestr
MEKIT5_2026 Komunikace a zpracování informace PV 3
MEKIT2_2026 Internet věcí PV 3
MEEIS_2026 Před zařazením do oboru PV 3


Stránka vytvořena 16.6.2026 17:51:32, semestry: L/2029-30, L/2027-8, Z/2028-9, L/2025-6, Z/2027-8, L/2028-9, Z,L/2026-7, připomínky k informační náplni zasílejte správci studijních plánů Návrh a realizace: I. Halaška (K336), J. Novák (K336)