Module also offered within study programmes:
General information:
Annual:
2017/2018
Code:
EME-1-505-s
Name:
Introduction to programming of real-time systems
Faculty of:
Faculty of Electrical Engineering, Automatics, Computer Science and Biomedical Engineering
Study level:
First-cycle studies
Specialty:
-
Field of study:
Microelectronics in industry and medicine
Semester:
5
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Course homepage:
 
Responsible teacher:
dr inż. Piwowarczyk Jacek (jpi@agh.edu.pl)
Academic teachers:
dr inż. Piwowarczyk Jacek (jpi@agh.edu.pl)
Module summary

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Skills
M_U001 Potrafi rozwiązywać proste zadania programistyczne stosując architekturę wielowątkową. ME1A_U22 Completion of laboratory classes
M_U002 Potrafi stosować sekcje krytyczne do organizacji prawidłowego dostępu do zasobów przez więcej niż jeden wątek. ME1A_U22 Completion of laboratory classes
M_U003 Potrafi synchronizować pracę wątków oraz przesyłać informacje między wątkami za pomocą semaforów i kolejek. ME1A_U22 Completion of laboratory classes
M_U004 Potrafi wykrywać proste przypadki występowania typowych błędów w systemach wielowątkowych takie jak zakleszczenie, hazardy, inwersja priorytetów. ME1A_U22 Completion of laboratory classes
M_U005 Potrafi podłączyć wybrane przerwanie wybranego kontrolera do programu napisanego dla systemu czasu rzeczywistego. ME1A_U22 Completion of laboratory classes
M_U006 Potrafi przenieść prosty program napisany dla systemu czasu rzeczywistego na wybrany port (inna platformę sprzętową). ME1A_U22 Completion of laboratory classes
Knowledge
M_W001 Ma podstawową wiedze o wątkach w tym o jądrze systemu, kontekście wątku, shedulerze, wywłaszczaniu, funkcjach typu reentrant, priorytetach. ME1A_W08, ME1A_W07 Completion of laboratory classes
M_W002 Ma podstawową wiedze o metodach dostępu do zasobów w systemach wielowątkowych. ME1A_W08, ME1A_W07 Completion of laboratory classes
M_W003 Ma podstawową wiedze o podstawowych mechanizmach synchronizacji wątków. ME1A_W08, ME1A_W07 Completion of laboratory classes
M_W004 Ma podstawową wiedze o typowych problemach dotyczących aplikacji wielowątkowych . ME1A_W08, ME1A_W07 Completion of laboratory classes
M_W005 Ma podstawową wiedze o obsłudze przerwań w systemach czasu rzeczywistego ME1A_W08, ME1A_W07 Completion of laboratory classes
M_W006 Ma podstawową wiedze o portowaniu systemu czasu rzeczywistego dla różnych platform sprzętowych. ME1A_W08, ME1A_W07 Completion of laboratory classes
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Others
E-learning
Skills
M_U001 Potrafi rozwiązywać proste zadania programistyczne stosując architekturę wielowątkową. - - + - - - - - - - -
M_U002 Potrafi stosować sekcje krytyczne do organizacji prawidłowego dostępu do zasobów przez więcej niż jeden wątek. - - + - - - - - - - -
M_U003 Potrafi synchronizować pracę wątków oraz przesyłać informacje między wątkami za pomocą semaforów i kolejek. - - + - - - - - - - -
M_U004 Potrafi wykrywać proste przypadki występowania typowych błędów w systemach wielowątkowych takie jak zakleszczenie, hazardy, inwersja priorytetów. - - + - - - - - - - -
M_U005 Potrafi podłączyć wybrane przerwanie wybranego kontrolera do programu napisanego dla systemu czasu rzeczywistego. - - + - - - - - - - -
M_U006 Potrafi przenieść prosty program napisany dla systemu czasu rzeczywistego na wybrany port (inna platformę sprzętową). - - + - - - - - - - -
Knowledge
M_W001 Ma podstawową wiedze o wątkach w tym o jądrze systemu, kontekście wątku, shedulerze, wywłaszczaniu, funkcjach typu reentrant, priorytetach. + - - - - - - - - - -
M_W002 Ma podstawową wiedze o metodach dostępu do zasobów w systemach wielowątkowych. + - - - - - - - - - -
M_W003 Ma podstawową wiedze o podstawowych mechanizmach synchronizacji wątków. + - - - - - - - - - -
M_W004 Ma podstawową wiedze o typowych problemach dotyczących aplikacji wielowątkowych . + - - - - - - - - - -
M_W005 Ma podstawową wiedze o obsłudze przerwań w systemach czasu rzeczywistego + - - - - - - - - - -
M_W006 Ma podstawową wiedze o portowaniu systemu czasu rzeczywistego dla różnych platform sprzętowych. + - - - - - - - - - -
Module content
Lectures:
  1. Idea i zastosowania systemu czasu rzeczywistego.
  2. Jądro systemu, wątki, sheduler, wywłaszczanie, funkcje reentrant, priorytety wątków.
  3. Metody dostępu do zasobów w systemach wielowątkowych.
  4. Mechanizmy synchronizacji wątków.
  5. Typowe problemy dotyczące aplikacji wielowątkowych.
  6. Obsługa przerwań w systemach czasu rzeczywistego.
  7. Przystosowywanie systemu do różnych platform sprzętowych.
Laboratory classes:
  1. Rozwiązywanie prostych zadań programistycznych z wykorzystaniem architektury wielowątkowej.
  2. Organizacja prawidłowego dostępu do wybranych zasobów przez więcej niż jeden wątek z użyciem sekcji krytycznej.
  3. Synchronizacja i przesyłanie informacji między wątkami za pomocą semaforów i kolejek.
  4. Wykrywanie prostych przypadków występowania zakleszczenia, hazardu i inwersji priorytetów.
  5. Podłączanie wybranego przerwania wybranego kontrolera do programu napisanego dla systemu czasu rzeczywistego.
  6. Przenoszenie prostego programu napisanego dla systemu czasu rzeczywistego na wybraną platformę sprzętową.
Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 120 h
Module ECTS credits 4 ECTS
Participation in lectures 30 h
Participation in laboratory classes 30 h
Preparation for classes 30 h
Realization of independently performed tasks 30 h
Additional information
Method of calculating the final grade:

Ocena końcowa wystawiana na podstawie oceny z egzaminu i oceny z laboratorium

Prerequisites and additional requirements:

Podstawowe wiadomości z zakresu programowania

Recommended literature and teaching resources:

Recommended literature and teaching resources not specified

Scientific publications of module course instructors related to the topic of the module:

Additional scientific publications not specified

Additional information:

None