Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2024/2025

Real-Time Systems Programming

Předmět není vypsán Nerozvrhuje se
Kód Zakončení Kredity Rozsah Jazyk výuky
AE4B35PSR Z,ZK 6 2P+2C anglicky
Garant předmětu:
Přednášející:
Cvičící:
Předmět zajišťuje:
katedra řídicí techniky
Anotace:

The goal of this subject is to give students basic knowledge in the area of software design for embedded systems with real-time operating systems (RTOS) with emphasis to practical experience. Students will solve several simple tasks to get basic knowledge about RTOS VxWorks and to measure timing parameters of the RTOS and hardware, which are necessary when choosing a platform for a given application. Then a more complicated task (motor control) will be solved, which will fully utilize means of RTOS VxWorks. During lectures, students will become familiar with real-time systems theory, which can be used to formally prove the timing correctness of the applications. Moreover, some software engineering techniques, which help with increasing of quality of safety-critical systems will be discussed.

Výsledek studentské ankety předmětu je zde: http://www.fel.cvut.cz/anketa/aktualni/courses/AE4B35PSR

Požadavky:

Basics of C language. Experience with programming of multi-threaded applications is an advantage.

Osnova přednášek:

1. Real-Time operating systems, requirements, properties

2. VxWorks OS

3. POSIX API

4. Advanced use of C language, GNU C compiler

5. Coding standards, version control systems, certifications

6. Memory access timing; dynamic memory management

7. Clock driven scheduling

8. Dynamic priority scheduling

9. Static priority scheduling

10. Problems in analysis of real-time systems

11. Shared resource management

12. Shared resource management II.

13. Other real-time operating systems; interrupt subsystem; support for different HW platforms (BSP)

14. Combining real-time tasks with non-real-time tasks

Osnova cvičení:

1. Introduction to VxWorks OS and its IDE. Compilation, debugging, event viewer.

2. Task 1: VxWorks API: mutexes, semaphores.

3. Task 2: VxWorks API: message queues timers

4. Task 3: VxWorks API: processes, shared memoy

5. Task 4: Benchmak of OS scheduler latency

6. Task 5: Memory access timing (cache, prefetching, ...)

7. Task 6: Ethernet communication timing

8. Task 7: Mutex blocking timing (priority inheritance,...)

9. Test; assignment of task 8 - motor control

10. Solving of task 8

11. Solving of task 8

12. Solving of task 8

13. Delivery of task 8

14. Assesment

Cíle studia:
Studijní materiály:

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)

Poznámka:

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

Další informace:
https://psr.pages.fel.cvut.cz/
Pro tento předmět se rozvrh nepřipravuje
Předmět je součástí následujících studijních plánů:
Platnost dat k 21. 11. 2024
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet12820704.html