Lezingen, discussies en oefeningen. Op de laatste dag is er een intensieve interactieve workshop om de gepresenteerde technieken te oefenen. Cursusmateriaal: boek, aantekeningen, hand-outs, artikelen.
De ontwikkeling van real-time software vereist speciale methoden en technieken. In deze intensieve 5-daagse cursus leren deelnemers ontwerpaspecten van real-time (embedded) programma's, in het bijzonder tijdigheid en concurrency.
Doelstelling
Na succesvolle afronding van de cursus kan de deelnemer redeneren over tijdigheid en concurrency aspecten van real-time (embedded) software. Meer specifiek zal hij/zij
- Methoden voor het ontwerpen van gelijktijdige programma's op een systematische manier kunnen toepassen;
- Kunnen omgaan met tijdsoverwegingen en real-time planning;
- Technieken kunnen toepassen voor het modelleren van real-time software;
- Bekend zijn met R-T besturingssystemen die concurrency en scheduling ondersteunen.
Doelgroep
Deze cursus is bedoeld voor hardware- en software-ingenieurs, systeemanalisten en ontwerpers die real-time software ontwikkelen op het gebied van embedded systemen, CAM, laboratoria enz.
Vereisten:
- Ervaring met softwareontwikkeling;
- Kennis van de grondbeginselen van computerwetenschap;
- Kennis van algemeen beleid en mechanismen van besturingssystemen.
Programma
Dag 1 & 2:
- Grondbeginselen en concepten van real-time ingebedde softwaresystemen.
- Concurrency primitieven.
- Multitasking problemen.
- Programmeermodellen.
- Communicatie en synchronisatie.
- RT Besturingssystemen.
Dag 3:
- Inleiding tot planning.
- Planningsanalyse met periodieke, sporadische en aperiodieke gebeurtenissen.
- Rate Monotonic Scheduling met en zonder resourcecontent.
- Reactietijdberekeningen.
- Monotone planning op deadline vs. monotone planning op snelheid.
- Vaste prioriteit vs. dynamische prioriteit.
Dag 4:
- Waarom is real-time anders dan niet-real-time?
- Algemene aspecten, abstractieniveaus, methodologische aspecten van RT-ontwerp (objectoriëntatie en real-time, RT-objectgeoriënteerde talen, modellering van RT-systemen in UML2.
Dag 5:
- Eisen, ontwerp van structuur (toepassen van algemene en taakstructurerende heuristieken), specificatie van gedrag, analyseren van tijdsbeperkingen, analyseren van roosterbaarheid (toekennen van prioriteiten, identificeren van bronnen, prioriteitsovererving en prioriteitsmaximum), programmeren van modelafhankelijkheden.