Popis předmětu - AD4B35PSR
AD4B35PSR | Programování systémů reálného času | ||
---|---|---|---|
Role: | Rozsah výuky: | 14KP+6KC | |
Katedra: | 13135 | Jazyk výuky: | CS |
Garanti: | Zakončení: | Z,ZK | |
Přednášející: | Kreditů: | 6 | |
Cvičící: | Semestr: | Z |
Webová stránka:
https://moodle.dce.fel.cvut.cz/course/view.php?id=16Anotace:
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 |
Stránky předmětu: |
https://moodle.dce.fel.cvut.cz/course/view.php?id=16 |
Předmět je zahrnut do těchto studijních plánů:
Plán | Obor | Role | Dop. semestr |
Stránka vytvořena 13.3.2025 17:51:02, semestry: L/2024-5, Z/2025-6, Z/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) |