Popis předmětu - B4B38PSR
| B4B38PSR | Programování systémů reálného času | ||
|---|---|---|---|
| Role: | PZ | Rozsah výuky: | 2P+2C |
| Katedra: | 13138 | Jazyk výuky: | CS |
| Garanti: | Sojka M. | Zakončení: | Z,ZK |
| Přednášející: | Kreditů: | 6 | |
| Cvičící: | Tereň O., Tomlain J. | Semestr: | Z |
Anotace:
Cílem tohoto předmětu je poskytnout studentům základní znalosti v oblasti vývoje softwaru pro řídicí či jiné systémy pracující v reálném čase. Hlavní důraz bude kladen na vestavné systémy vybavené některým z operačních systémů reálného času (RTOS). Na přednáškách se studenti seznámí s teorií systémů pracujících v reálném čase, která slouží k formálnímu potvrzení správnosti kritických aplikací. Další část přednášek bude zaměřena na bezpečnostně kritické (safety-critical) aplikace, jejichž selhání může mít katastrofické následky. Na cvičeních budou studenti řešit nejprve několik menších úloh s cílem jednak zvládnout práci se základními komponentami RTOS VxWorks a jednak změřit časové parametry OS a hardwaru, které jsou potřebné při výběru platformy vhodné pro danou aplikaci. Poté se bude řešit složitější úloha - časově náročné řízení modelu, kde bude možno plně využít vlastnosti použitého RTOS. Úlohy na cvičeních se budou řešit v jazyku C.Obsah:
Absolvent předmětu se obeznámí se základními vlastnosti operačních systémů reálného času.| 1. | Úvod do systémů reálného času, požadavky, vlastnosti, aplikace | |
| 2. | Operační systém Azure RTOS (ThreadX) | |
| 3. | POSIX 1003.1b - přenositelné rozhraní operačních systémů reálného času | |
| 4. | Referenční model systému reálného času | |
| 5. | Off-line (hodinkami řízené) rozvrhování | |
| 6. | Rozvrhování se statickou prioritou | |
| 7. | Rozvrhování s dynamickou prioritou | |
| 8. | Správa sdílených zdrojů v systémech reálného času | |
| 9. | Kombinování real-time a běžných úloh | |
| 10. | Vývoj bezpečnostně-kritického (safety-critical) aplikací, standardy pro funkční bezpečnost, úroveň bezpečnosti (SIL) | |
| 11. | Techniky pro zvýšení spolehlivosti bezpečnostně kritického softwaru (redundance, kódování, dekompozice) | |
| 12. | Studie HAZOP, software HAZOP, ukázka aplikace | |
| 13. | Více jádrové systémy a reálný čas, přehled RTOS |
Osnovy přednášek:
Absolvent předmětu se obeznámí se základními vlastnosti operačních systémů reálného času.| 1. | Úvod do systémů reálného času, požadavky, vlastnosti, aplikace | |
| 2. | Operační systém Azure RTOS (ThreadX) | |
| 3. | POSIX 1003.1b - přenositelné rozhraní operačních systémů reálného času | |
| 4. | Referenční model systému reálného času | |
| 5. | Off-line (hodinkami řízené) rozvrhování | |
| 6. | Rozvrhování se statickou prioritou | |
| 7. | Rozvrhování s dynamickou prioritou | |
| 8. | Správa sdílených zdrojů v systémech reálného času | |
| 9. | Kombinování real-time a běžných úloh | |
| 10. | Vývoj bezpečnostně-kritického (safety-critical) aplikací, standardy pro funkční bezpečnost, úroveň bezpečnosti (SIL) | |
| 11. | Techniky pro zvýšení spolehlivosti bezpečnostně kritického softwaru (redundance, kódování, dekompozice) | |
| 12. | Studie HAZOP, software HAZOP, ukázka aplikace | |
| 13. | Více jádrové systémy a reálný čas, přehled RTOS |
Osnovy cvičení:
| 1. | Základy VxWorks IDE: tvorba aplikaci, simulátor VxWorks, přístup k dokumentaci, ladění | |
| 2. | VxWorks API: Mutexy, semafory | |
| 3. | VxWorks API: Real-Time procesy a sdílená paměť | |
| 4. | Blokování na mutexu, dědění priorit | |
| 5. | Cyklická exekutiva, měření doby běhu (WCET) | |
| 6. | Měření latence rozvrhovače | |
| 7. | Měření latence při komunikaci po Ethernetu | |
| 8. | Semestrální práce - distribuované řízení motoru v reálném čase (steer-by-wire) + vizualizace pomocí vestavěného web serveru |
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 1999Požadavky:
Zájemce musí zvládat základy programování v jazyce C a programování vícevláknových aplikací. Výhodou je absolvování předmětu A0B35APO. Stránky předmětu: https://moodle.dce.fel.cvut.cz/Předmět je zahrnut do těchto studijních plánů:
| Plán | Obor | Role | Dop. semestr |
| BPOI2_2025 | Internet věcí | PZ | 5 |
| Stránka vytvořena 13.11.2025 12:51:06, semestry: Z,L/2026-7, Z/2025-6, L/2024-5, L/2025-6, 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) |