Logo ČVUT
Loading...
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2011/2012

Real-Time Systems Programming

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
A4B35PSR Z,ZK 6 2+2c Czech
The course is a substitute for:
Real-Time Operating Systems (Y35ORT)
Lecturer:
Michal Sojka, Pavel Píša
Tutor:
Pavel Píša
Supervisor:
Department of Control Engineering
Synopsis:

The goal of this subject is to give students basic knowledge in area of software design for embedded systems with real-time operating system (RTOS) with emphasis to practical experience. Students will solve several simple tasks in order to get both basic knowledge about RTOS VxWorks and measure the 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 be familiarized 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.

Requirements:

Basics of C language and programming of multi-threaded applications.

Syllabus of lectures:

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

Syllabus of tutorials:

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

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

3. Task 2: VxWorks API: fronty zpráv, časovače

4. Task 3: VxWorks API: procesy, sdílená paměti

5. Task 4: Benchmark latencí rozvrhovače OS.

6. Task 5: Vliv přístupu k paměti na dobu běhu (cache, prefetching, ...)

7. Task 6: Měření latence při komunikaci přes ethernet

8. Task 7: Měření času blokování na mutexu, dědění priorit

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. Zápočet

Study Objective:
Study materials:

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)

Note:
Time-table for winter semester 2011/2012:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon
Tue
Fri
roomKN:E-2
Píša P.
09:15–10:45
(lecture parallel1
parallel nr.101)

Karlovo nám.
Laboratoř PC
roomKN:E-2
Píša P.
11:00–12:30
(lecture parallel1
parallel nr.102)

Karlovo nám.
Laboratoř PC
Thu
roomT2:C3-340
Píša P.
Sojka M.

09:15–10:45
(lecture parallel1)
Dejvice
Posluchárna
Fri
Time-table for summer semester 2011/2012:
Time-table is not available yet
The course is a part of the following study plans:
Generated on 2012-7-9
For updated information see http://bilakniha.cvut.cz/en/predmet12539104.html