Real-Time Programming (C0091), 6 op
Perustiedot
Kurssin nimi: | Real-Time Programming |
Winhakoodi: | C0091 |
Kurren lyhenne: | R-TProg |
Opintopisteet: | 6 |
Opintojakson taso: | Ammattiopinnot |
Toteutusvuosi: | 4.vsk |
Jakso: | Kevätlukukausi, 3.jakso, 4.jakso |
Lukuvuosi: | 0708 |
Opetuskieli: | English |
Opettaja: | Hannu Laine |
Lopullinen arviointi: | Arvosteluasteikolla (0-5) |
Kuvaukset
Esitietovaatimukset
UNIX Operating System
C Programming
Real-time operating systems
Sisältö (ydinaines ja -osaaminen)
Program development in Linux/Unix-environment
Basic operating system services for application programs
Processes and process interaction
Process synchronization (why and how?)
Signals
Pipes and FIFOs
Asynchronous and multiplexed i/o
Timing, timers and timeouts
Semaphores
Shared memory
Message queues
Threads and thread synchronization
Dynamically linked function libraries
Sisältö (täydentävä ja erityisosaaminen)
Sockets and streams
Device drivers
Different scheduling policies
Strict real-time requirements
Tiedolliset oppimistulokset (ydinaines ja -osaaminen)
After completing the unit the student understands the meaning and effects of the things in the list above when processes are run concurrently. In addition to that he/she knows how these things are implemented in the software according the latest version of the standard IEEE Std 1003.1-2001 (Posix). A special emphasis is put on the real time extensions of the standard like timers, real time signals, asynchronous i/o, semaphores, shared memory objects and so on.
Taidolliset oppimistulokset (ydinaines ja -osaaminen)
After completing the course the student masters in practice the technique needed to implement real-time and embedded software systems using operating system services via the operating system calls and library functions. He/she can develop systems that consist of multiple communicating processes or threads. The student can design and implement real-time applications that work in reliable way so that all timing combinations of different asynchronous events that could cause problems are taken into consideration.
Kirjallisuus ja muu materiaali
Lecture handouts and lecture transparencies
Opetusmenetelmät
Lectures, laboratory exercises and teamwork project
Opiskelijan kuormittavuus
Luennot - 28
Tentti - 4
Itsenäinen työskentely - 54
Laboratoriotyöt - 28
Projektit - 46
Arvioinnin perusteet
Examination 80%
Laboratory exercises and teamwork project 20%
Koulutusohjelmakohtaiset kompetenssit
Ohjelmistotekniikka