Fakulta elektrotechnická

České vysoké učení technické v Praze

ČVUT v Praze

Popis předmětu - A3M35PSR

Přehled studia | Přehled oborů | Všechny skupiny předmětů | Všechny předměty | Seznam rolí | Vysvětlivky               Návod
A3M35PSR Programování systémů reálného času Rozsah výuky:2+2c
Garanti:  Role:PO,V Zakončení:Z,ZK
Vyučující: 
Zodpovědná katedra:13135 Kreditů:6 Semestr:Z

Anotace:

Cílem tohoto předmětu je poskytnout studentům základní znalosti v oblasti vývoje SW pro řídicí systémy vybavené některým z operačních systémů reálného času RTOS. 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 komponenty 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é budou řešit složitější úlohu - časově náročné řízení modelu, kde budou moci plně využít vlastností použitého RTOS. Na přednáškách budou studenti seznámeni jak s teorií systémů pracujících v reálném času, která slouží k formálnímu potvrzení správnosti bezpečnostně kritických aplikací, tak s některými praktikami softwarového inženýrství, které vedou ke zvyšování kvality výsledných softwarových produktů.

Výsledek studentské ankety předmětu je zde: A3M35PSR

Výsledek studentské ankety předmětu je zde: A4B35PSR

Osnovy přednášek:

1. Systémy reálného času, požadavky, vlastnosti
2. OS VxWorks
3. Rozhraní podle normy POSIX
4. Jazyk C pro pokročilé, překladač GCC
5. Kódovací standardy, verzovací systémy, certifikace
6. Časování přístupu k paměti; správa dynamické paměti
7. Statické rozvrhování
8. Rozvrhování s dynamickou prioritou
9. Rozvrhování se statickou prioritou
10. Problémy v analýze RT aplikací
11. Správa sdílených zdrojů
12. Správa sdílených zdrojů II.
13. Ostatní real-time operační systémy; přerušovací systém; podpora různých HW platforem (BSP
14. Kombinování real-time úloh s běžnými úlohami

Osnovy cvičení:

1. Seznámení se s OS VxWorks a jeho vývojovým prostředím. Překlad, ladění, prohlížeč událostí.
2. Úloha 1: VxWorks API: mutexy, semafory.
3. Úloha 2: VxWorks API: fronty zpráv, časovače
4. Úloha 3: VxWorks API: procesy, sdílená paměti
5. Úloha 4: Benchmark latencí rozvrhovače OS.
6. Úloha 5: Vliv přístupu k paměti na dobu běhu (cache, prefetching, ...)
7. Úloha 6: Měření latence při komunikaci přes ethernet
8. Úloha 7: Měření času blokování na mutexu, dědění priorit
9. Test; zadání úlohy 8 - řízení motorku
10. Řešení úlohy 8
11. Řešení úlohy 8
12. Řešení úlohy 8
13. Odevzdávání úlohy 8
14. Zápočet

Literatura:

1. Robbins, K., Robbins, S.: Practical UNIX Programming: A Guide to Concurrency, Communication and Multithreading. Prentice Hall, 1996
2. Liu J. W. S.: Real-Time Systems, Prentice Hall, 2000
3. Burns A., Wellings A.: Real-Time Systems and Programming Languages (Third Edition). Addison Wesley Longmain, 2001.
4. VxWorks manuals (http://www.wrs.com)

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/

Poznámka:

Rozsah výuky v kombinované formě studia: 14p+6c.

Webová stránka:

https://moodle.fel.cvut.cz/courses/A3M35PSR

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

Plán Obor Role Dop. semestr
MPIB Před zařazením do oboru V
MPKME2 Multimediální technika V 1
MPKME4 Sítě elektronických komunikací V 1
MPKME1 Bezdrátové komunikace V 1
MPKME3 Elektronika V 1
MPKME5 Komunikační systémy V 1
MPEEM5 Ekonomika a řízení elektrotechniky V 1
MPEEM4 Ekonomika a řízení energetiky V 1
MPEEM2 Elektrické stroje, přístroje a pohony V 1
MPEEM1 Technologické systémy V 1
MPEEM3 Elektroenergetika V 1
MPKYR1 Robotika PO 1


Stránka vytvořena 20.11.2017 17:47:25, semestry: L/2016-7, Z,L/2017-8, Z/2018-9, 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)
Za obsah odpovídá: doc. Ing. Ivan Jelínek, CSc.