suomeksi
in English

Real-Time Programming (C0091), 6 op

Basic information

Course name:Real-Time Programming
Real-Time Programming
Course Winha code:C0091
Kurre acronym:R-TProg
Credits:6
Type and level of course:Professional studies
Year of study, semester or study period:4.year
Implementation:Spring semester, 3.period, 4.period
Semester:0708
Language of tuition:English
Teacher:Hannu Laine
Final assessment:Grading scale (0-5)

Descriptions

Prerequisites

Unix-käyttöjärjestelmä
C-ohjelmointi
Reaaliaikakäyttöjärjestelmät

Course contents (core content level)

Ohjelmankehitys Linux/Unix-ympäristössä
Käyttöjärjestelmän peruspalvelut sovellusohjelmille
Prosessit ja niiden vuorovaikutus
Prosessien synkronointitarve ja -välineet
Signaalit
Putket ja FIFOt
Asynkroninen ja multipleksattu i/o
Ajoitukset, timerit ja timeoutit
Semaforit
Jaettu muisti
Viestijonot
Säikeet ja niiden synkronointi
Dynaamisesti linkattavat ohjelmakirjastot

Course contents (additional)

Soketit ja streamit
Laiteajurit
Erilaiset skedulointipolitiikat
Tiukat reaaliaikavaatimukset

Core content level learning outcomes (knowledge and understanding)

Kurssin suoritettuaan opiskelija ymmärtää sisältölistassa mainittujen asioiden merkityksen prosessien rinnakkaisessa toiminnassa käytännön tasolla. Lisäksi hän tietää kuinka nämä asiat toteutetaan ohjelmistossa uusimman standardin IEEE Std 1003.1-2001 (Posix) mukaisesti. Erityinen painotus kurssissa annetaan standardin reaaliaikajärjestelmiä koskeville laajennuksille, kuten timerit, reaaliaikasignaalit, asynkroninen i/o, semaforit, jaetut muistiobjektit jne.

Core content level learning outcomes (skills)

Opintojakson suoritettuaan opiskelija hallitsee käytännössä reaaliaikaohjelmistojen ja sulautettujen järjestelmien toteutukseen liittyvän tekniikan käyttöjärjestelmäkutsurajapinnan osalta. Hän ystyy ohjelmistokehitystyöhön projekteissa, joissa kehitetään systeemiä, joka muodostuu useista keskenään kommunikoivista prosesseista tai säikeistä. Hän osaa suunnitella ja toteuttaa reaaliaikasovelluksia, jotka toimivat luotettavasti ja joissa on varauduttu erilaisten asynkronisten tapausten aiheuttamiin ongelmatilanteisiin.

Recommended reading

Luentomonisteet ja luentokalvot.

Teaching and learning strategies

Luennot, laboratorioharjoitukset ja ryhmätyöprojekti

Teaching methods and student workload

Lectures
Exam
Individual research, reading
Laboratory assignments
Report/project

Assessment weighting and grading

Tentti 80%
Laboratorioharjoitukset ja ryhmätyöprojekti 20%

Related competences of the degree programme

Software Engineering

login