Course detail
Real-Time Operating Systems
FIT-ROSAcad. year: 2014/2015
A study of concepts, techniques, and standards related to embedded real-time operating systems. Topics include: Introduction. Basic Real-Time Concepts. Real-Time Specification, Verification and Design. Real-Time Kernels. Intertask Communication and Synchronization. Real-Time Memory Management. System Performance Analysis and Optimization. Queuing Models. Reliability, Testing and Fault Tolerance. Multiprocessor Systems. Hardware/Software Integration. Case Studies.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Learning outcomes of the course unit
Theoretical and practical orientation in the area of design cycle of real-time applications, competence to design applications based on real-time operating systems.
Prerequisites
Co-requisites
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
Course curriculum
- Syllabus of lectures:
- Definition of basic terms related to real-time (RT) systems. Motivation.
- Introduction to RT specification and verification area.
- RT kernel architectures - typical attributes, problems and benchmarking principles.
- Timing analysis of RT kernels, principles of response-time analysis of particular RT kernel types.
- Overview and properties of common interfaces and scheduling policies in (RT)OS, priority-driven schedulers, POSIX 1003.1b.
- Case Studies: uC/OS-II, uC/OS-III.
- Case Studies: FreeRTOS, Autosar-OSEK/VDX, QNX.
- RT task model and introduction to RT task scheduling. RT task schedulability problem.
- Scheduling of independent, static- and dynamic-priority periodic RT tasks running in 1-CPU environment: RM, DM, EDF, LL.
- Joint scheduling of periodic, sporadic and aperiodic RT tasks using task servers.
- Scheduling of dependent, dynamic-priority RT tasks running in 1-CPU environment, priority inversion, blocking and deadlock prevention using resource access protocols: PIP, HLP, PCP, SRP, TBS, CBS.
- Mechanisms of scheduling RT tasks for architecture overload: Dover, LBESA, DASA.
- RT task scheduling for n-CPU environment (anomalies, RMNF, RMFF, RMBF, RMST, RMGT), fault-tolerance and low power (DVS, DPM).
- Introduction to UPPAAL tool.
- Specification and verification of a simple RT system by means of UPPAAL tool.
- Implementation of a simple RT application by means of interfaces included in QNX/Neutrino, uC/OS-II and POSIX 1003.1b.
- Introduction to Timestool and Cheddar tools for modeling and analysis of RT applications based on RTOS.
- Utilization of TimesTool, Cheddar tools and uC/OS-II, FreeRTOS kernels for an advanced analysis such as examining properties of resource access protocols and scheduling policies designed for overload, multiprocessor or low-power conditions.
- Individual or group project.
Syllabus of computer exercises:
Syllabus - others, projects and individual work of students:
Work placements
Aims
Specification of controlled education, way of implementation and compensation for absences
Recommended optional programme components
Prerequisites and corequisites
Basic literature
Recommended reading
Classification of course in study plans
- Programme IT-MSC-2 Master's
branch MBI , 0 year of study, winter semester, elective
branch MBS , 0 year of study, winter semester, elective
branch MIN , 0 year of study, winter semester, elective
branch MIS , 2 year of study, winter semester, elective
branch MMI , 0 year of study, winter semester, compulsory-optional
branch MMM , 0 year of study, winter semester, elective
branch MPV , 0 year of study, winter semester, elective
branch MSK , 1 year of study, winter semester, compulsory-optional
branch MGM , 0 year of study, winter semester, elective