Detail předmětu

Real-time operační systémy

FIT-ROSAk. rok: 2013/2014

Studie konceptů, technik a standardů pro vestavěné operační systémy včetně vestavěných operačních systémů reálného času. Předmět pokrývá následující problematiku: Základní koncepty reálného času. Specifikace, verifikace a návrh systémů reálného času. Jádra. Komunikace a synchronizace. Správa paměti. Analýza a optimalizace výkonnosti. Fronty. Spolehlivost a odolnost proti poruchám. Multiprocesorové systémy. Integrace hardware a software. Studie operačních systémů.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

Teoretický základ z oblasti specifikace/verifikace a praktická znalost operačních systémů pracujících v reálném čase. Po absolvování předmětu studenti budou schopni využít víceúlohové možnosti real-time operačních systémů, porozumí základním principům z oblasti real-time systémů, seznámí se s vlastnostmi, strukturou a konkrétními implementacemi těchto systémů a s faktory, které mají podstatný vliv na vlastnosti těchto systémů.

Teoretické a praktická orientace v oblasti vývojového cyklu aplikací pracujících v reálném čase, schopnost navrhovat aplikace založené na real-time operačních systémech.

Prerekvizity

Znalost principů operačních systémů (OS): přehled architektur OS, klasifikace OS, znalost struktury jádra OS UNIX a principů volání služeb jádra, shell. Pojmy přepínání kontextu, multitasking. Souborové systémy, správa procesů, virtuální paměť. Znalost programování v jazyce C.

Plánované vzdělávací činnosti a výukové metody

Výuka předmětu je realizována formou: Přednáška - 2 vyučovací hodiny týdně, Cvičení na poč. - 1 vyučovací hodina týdně, Projekty - 1 vyučovací hodina týdně.

Způsob a kritéria hodnocení

Hodnocení studia je založeno na bodovacím systému. Pro úspěšné absolvování předmětu je nutno dosáhnout 50 bodů.

Osnovy výuky

Osnova přednášek:
  1. Vymezení základních pojmů souvisejících se systémy pracujícími v reálném čase (RT), motivace.
  2. Úvod ke specifikaci a verifikaci RT systémů.
  3. Architektury jader RT systémů - typické vlastnosti, problémy a principy srovnání výkonnosti.
  4. Časové analýzy RT jader, principy analýz dob odezev jednotlivých typů RT jader.
  5. Přehled a vlastnosti běžných rozhraní a plánovacích mechanismů v (RT)OS, prioritních plánovačů, POSIX 1003.1b.
  6. Případové studie: uC/OS-II, uC/OS-III.
  7. Případové studie: FreeRTOS, Autosar-OSEK/VDX, QNX.
  8. Model RT úloh a úvod k plánování množin RT úloh. Problém plánovatelnosti množin RT úloh.
  9. Plánování množin nezávislých periodických RT úloh s pevnými a dynamickými prioritami v jednoprocesorovém prostředí: RM, DM, EDF, LL.
  10. Mechanismy společného plánování periodických, sporadických a aperiodických RT úloh s využitím serverů úloh.
  11. Plánování závislých RT úloh přiřazováním priorit v jednoprocesorovém prostředí, prevence inverze priorit, blokování a uváznutí pomocí protokolů přístupu k prostředkům: PIP, HLP, PCP, SRP, TBS, CBS.
  12. Mechanismy plánování RT úloh při přetížení RT systému: Dover, RED, LBESA, DASA.
  13. Plánování RT úloh ve víceprocesorovém prostředí (anomálie, RMNF, RMFF, RMBF, RMST, RMGT), pro pro zvýšení spolehlivosti RT systému a pro nízký příkon (DVS, DPM).

Osnova počítačových cvičení:
  1. Seznámení se s nástrojem UPPAAL pro specifikaci a verifikaci RT systémů, ukázka možností nástroje.
  2. Specifikace a verifikace jednoduchého RT systému pomocí nástroje UPPAAL.
  3. Návrh a implementace jednoduché RT aplikace pomocí rozhraní obsažených v QNX/Neutrino, uC/OS-II, FreeRTOS a normě POSIX 1003.1b.
  4. Seznámení se z nástroji Timestool a Cheddar pro modelování a analýzu RT aplikací založených na RTOS.

Osnova ostatní - projekty, práce:
  • Individuální nebo skupinový projekt.

Učební cíle

Cílem předmětu je seznámit studenta se základními principy v oblasti real-time systémů a obohatit studenta o teoretické znalosti a praktické zkušenosti spojené s vývojovým cyklem vestavěných aplikací založených na real-time operačních systémech.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Kontrolována je účast a aktivita během přednášek, počítačových laboratoří a postup prací na projektu.

Základní literatura

  • Cheng, A. M. K.: Real-Time Systems: Scheduling, Analysis, and Verification. Wiley, 2002, 552 s., ISBN 0-471-18406-3.
  • Cottet, F., Delacroix, J., Kaiser, C., Mammeri, Z.: Scheduling in Real-Time Systems. John Wiley & Sons, 2002, 266 s., ISBN 0-470-84766-2.
  • Horovčák, P.: Systémy reálneho času. Elfa, Košice, 2002, 141 s., ISBN 80-89066-29-1 (brož.).
  • Joseph, M.: Real-Time Systems Specification, Verification and Analysis. Prentice Hall, 1996, 278 s., ISBN 0-13-455297-0.
  • Krishna, C. M., Shin, K. G.: Real-Time Systems. McGraw-Hill, 1997, 448 s., ISBN 0-07-114243-6.
  • Labrosse, J. J.: MicroC OS II: The Real Time Kernel. Newnes, 2nd ed., 2002, 648 s., ISBN 978-1578201037.
  • Laplante, P. A.: Real-Time Systems Design and Analysis. Wiley-IEEE Press, 2004, 528 s., ISBN 0-471-22855-9.
  • Levi, S. T., Agrawala, A. K.: Real-Time System Design. McGraw-Hill, 1990, 299 s., ISBN 0-07037-491-0.
  • Li, Q., Yao, C.: Real-Time Concepts for Embedded Systems. CMP Books, 1st Edition, 2003, 294 s., ISBN 1-57820-124-1.
  • Srovnal, V.: Operační systémy pro řízení v reálném čase. VŠB TU, Ostrava, 1. vydání, 2003, 218 s., ISBN 80-248-0503-0 (brož.).
  • Strnadel, J.: Studijní opora k předmětu ROS. FIT VUT v Brně, Brno, 2006, 120 s.

Doporučená literatura

  • Cottet, F., Delacroix, J., Kaiser, C., Mammeri, Z.: Scheduling in Real-Time Systems. John Wiley & Sons, 2002, 266 s., ISBN 0-470-84766-2.
  • Labrosse, J. J.: MicroC OS II: The Real Time Kernel. Newnes, 2nd ed., 2002, 648 s., ISBN 978-1578201037.
  • Laplante, P. A.: Real-Time Systems Design and Analysis. Wiley-IEEE Press, 2004, 528 s., ISBN 0-471-22855-9.
  • Strnadel, J.: Studijní opora k předmětu ROS. FIT VUT v Brně, Brno, 2006, 120 s.
  • Strnadel, J.: Návrh časově kritických systémů I: specifikace a verifikace, Automa, roč. 2010, č. 10, CZ, s. 42-44, ISSN 1210-9592
  • Strnadel, J.: Návrh časově kritických systémů II: úlohy reálného času, Automa, roč. 2010, č. 12, CZ, s. 18-19, ISSN 1210-9592 
  • Strnadel, J.: Návrh časově kritických systémů III: priorita úloh, Automa, roč. 2011, č. 2, CZ, s. 50-52, ISSN 1210-9592
  • Strnadel, J.: Návrh časově kritických systémů IV: realizace prostředky RTOS, Automa, roč. 2011, č. 4, CZ, s. 58-60, ISSN 1210-9592
  • Strnadel, J.: Plánování úloh v systémech RT - I: závislé úlohy, Automa, roč. 18, č. 10, 2012, CZ, s. 42-45, ISSN 1210-9592
  • Strnadel, J.: Plánování úloh v systémech RT - II: neperiodické úlohy, Automa, roč. 18, č. 11, 2012, CZ, s. 44-46, ISSN 1210-9592
  • Strnadel, J.: Plánování úloh v systémech RT - III: přetížení systému, Automa, roč. 18, č. 12, 2012, CZ, s. 44-47, ISSN 1210-9592
  • Strnadel, J.: Plánování úloh v systémech RT - IV: víceprocesorové prostředí, Automa, roč. 19, č. 1, 2013, CZ, s. 44-46, ISSN 1210-9592
  • Strnadel, J.: Plánování úloh v systémech RT - V: zvyšování provozuschopnosti systémů, Automa, roč. 19, č. 2, 2013, CZ, s. 46-49, ISSN 1210-9592

Zařazení předmětu ve studijních plánech

  • Program IT-MGR-2 magisterský navazující

    obor MBS , libovolný ročník, zimní semestr, volitelný
    obor MBI , libovolný ročník, zimní semestr, volitelný
    obor MIN , libovolný ročník, zimní semestr, volitelný
    obor MMI , libovolný ročník, zimní semestr, povinně volitelný
    obor MMM , libovolný ročník, zimní semestr, volitelný
    obor MGM , libovolný ročník, zimní semestr, volitelný
    obor MPV , libovolný ročník, zimní semestr, volitelný
    obor MSK , 1. ročník, zimní semestr, povinně volitelný
    obor MIS , 2. ročník, zimní semestr, volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

  1. Úvod do konceptů, technik a standardů pro systémy pracující v reálném čase (RT), motivace.
  2. Úvod ke specifikaci a verifikaci systémů.
  3. Specifikace RT systémů.
  4. Verifikace RT systémů.
  5. Architektury jader RT systémů.
  6. Analýza výkonnosti jednotlivých typů RT jader.
  7. Norma POSIX. Přehled rozhraní POSIX 1003.1b RT operačních systémů (RTOS).
  8. Případové studie: OSEK/VDX, uC/OS-II.
  9. Případové studie: QNX, Windows CE.
  10. Úvod k plánování množin RT úloh.
  11. Plánování množin nezávislých RT úloh se staticky přiřazenými prioritami běžícími v jednoprocesorovém prostředí.
  12. Plánování množin závislých RT úloh s dynamicky přidělovanými prioritami běžícími v jednoprocesorovém prostředí.
  13. Pokročilé mechanismy plánování RT úloh ve víceprocesorovém/distribuovaném/síťovém prostředí, plánování pro zvýšení spolehlivosti, plánování při přetížení systému.

Cvičení na počítači

10 hod., nepovinná

Vyučující / Lektor

Osnova

  1. Seznámení se s nástrojem UPPAAL pro specifikaci a verifikaci RT systémů, ukázka možností nástroje.
  2. Specifikace a verifikace jednoduchého RT systému pomocí nástroje UPPAAL.
  3. Návrh a implementace jednoduché RT aplikace pomocí rozhraní obsažených v QNX/Neutrino, uC/OS-II a normě POSIX 1003.1b.
  4. Seznámení se z nástroji Timestool a Cheddar pro modelování RT aplikací založených na RTOS.

Projekt

16 hod., nepovinná

Vyučující / Lektor