Popis předmětu - B4B35PSR

Přehled studia | Přehled oborů | Všechny skupiny předmětů | Všechny předměty | Seznam rolí | Vysvětlivky               Návod
B4B35PSR Programování systémů reálného času
Role:PZ, PO Rozsah výuky:2P+2C
Katedra:13135 Jazyk výuky:CS
Garanti:Sojka M. Zakončení:Z,ZK
Přednášející:Sojka M. Kreditů:6
Cvičící:Klapálek J., Sojka M. Semestr:Z

Webová stránka:

https://wiki.control.fel.cvut.cz/psr/

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.

Osnovy přednášek:

1. Úvod do systémů reálného času, požadavky, vlastnosti, aplikace
2. Operační systém VxWorks
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ícejá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 (knihovna ČVUT má jeden kus, naše katedra také, další pořídíme) 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 (naše katedra má 1 kus) Redmill F., Morris Ch. et al, System Safety: HAZOP and Software HAZOP, Wiley, April 1999 (naše katedra má 1 kus)

Pož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_2018 Internet věcí PZ 5
BPOI2_2016 Internet věcí PO 5


Stránka vytvořena 8.10.2024 17:50:55, semestry: L/2023-4, L/2024-5, Z/2025-6, Z/2024-5, 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)