Systemy operacyjne czasu rzeczywistego 0800-AR2SOCZARZ
Główne zagadnienia poruszane na wykładzie:
1. Wprowadzenie do systemów czasu rzeczywistego, podstawowe pojęcia i definicje.
2. Systemy operacyjne czasu rzeczywistego
2.1 Linux czasu rzeczywistego - RTAI
a) Architektura systemu,
b) Podstawy pisania modułów dla jądra Linuxa,
c) Wirtualny system przerwań,
d) Zadania czasu rzeczywistego, szeregowanie zadań, odmierzanie czasu,
e) Komunikacja międzyprocesowa
- kolejki FIFO,
- pamięć dzielona,
- synchronizacja i wzajemne wykluczanie,
f) Wykorzystanie RTAI-Lab i oferowanych przez nie narzędzi do realizacji zadań czasu rzeczywistego
2.2 System operacyjny czasu rzeczywistego QNX
a) architektura systemu,
b) zarządzanie procesami i wątkami,
c) komunikacja pomiędzy procesami,
d) pamięć dzielona i semafory,
e) sygnały, alarmy, kolejki komunikatów,
f) przerwania, czas, jego pomiar i reprezentacja w systemie
2.3 Systemy operacyjne czasu rzeczywistego w układach SoC
2.4 Przegląd i porównanie pozostałych systemów RTOS
3. Przykłady zastosowań systemów RTOS w praktyce
Laboratorium - realizowane zagadnienia:
- stany procesów i wątków,
- zarządzanie procesami i wątkami,
- szeregowanie wątków,
- pamięć dzielona i semafory,
- sygnały, komunikaty,
- timery i zdarzenia,
- przerwania,
- wykorzystanie poznanych mechanizmów w procesie sterowania
Całkowity nakład pracy studenta
Efekty uczenia się - wiedza
Efekty uczenia się - umiejętności
Efekty uczenia się - kompetencje społeczne
Metody dydaktyczne eksponujące
Metody dydaktyczne podające
Metody dydaktyczne poszukujące
- projektu
Wymagania wstępne
Koordynatorzy przedmiotu
Kryteria oceniania
Zaliczenie przedmiotu odbywa się na podstawie pozytywnej oceny z laboratorium oraz pozytywnego wyniku egzaminu pisemnego.
Egzamin pisemny w formie testu z pytaniami otwartymi i zamkniętymi sprawdza osiągnięcie efektów: W1, W2, W3.
Laboratorium zaliczane jest na podstawie średniej ocen z dwóch kolokwiów weryfikujących praktyczne umiejętności studenta z zakresu tworzenia aplikacji wykorzystujących mechanizmy stosowane przy realizacji zadań spełniających wymogi reżimu czasu rzeczywistego.
Kolokwia sprawdzają osiągnięcie efektów: U1, U2, U3, K1, K2, K3.
Kryteria oceniania:
ndst - <0% - 45%)
dst – <45% - 55%)
dst plus – <55% - 65%)
db – <65% - 75%)
db plus – <75% - 85%)
bdb - <85% - 100%>
Praktyki zawodowe
„nie dotyczy”
Literatura
Literatura podstawowa:
1. Ułasiewicz J.: Systemy czasu rzeczywistego QNX6 Neutrino, BTC, 2007;
2. Wang, K. C.: Embedded and Real-Time Operating Systems, Springer, 2017;
3. J. Cooling: Real-time Operating Systems: Book 1 - The Theory (The engineering of real-time embedded systems), 2017;
4. K. Lal: RTLinux – system czasu rzeczywistego, Helion, 2003;
5. Kulesz Z.: Programowanie sterowników czasu rzeczywistego w układach PLD i FPGA, Politechnika Białostocka, 2015;
6. White E.: Systemy wbudowane. Wzorce projektowe dla twórców oprogramowania, Helion, 2025;
Literatura uzupełniająca:
1. Strona domowa linuxa wraz z modułem czasu rzeczywistego: www.linuxcnc.org
2. System czasu rzeczywistego QNX6 Neutrino: www.qnx.com
3. Xilkernel oraz FreeRTOS Documentations: www.amd.com
4. PetaLinux Tools Documentation, Reference Guide, UG1144, 2018
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: