Achtergrond

Softwareconcurrency achilleshiel in embedded-systeemontwikkeling

Alexander Pil
Leestijd: 7 minuten

Embedded systemen reageren op (externe) events. Het moment en de frequentie hiervan zijn deels onvoorspelbaar. Vaak wordt een besturingssysteem gebruikt om de softwaredelen die verantwoordelijk zijn voor afhandeling van deze events op het juiste moment te activeren. In de praktijk blijkt dat designers van dergelijke concurrentsystemen vaak onvoldoende kennis hebben waardoor ze ontwerpbeslissingen in de verkeerde fase en op oneigenlijke gronden nemen. Dit leidt tot overcomplexe, moeilijk te testen systemen waarbij veel fouten niet (tijdig) boven water komen. In dit artikel gaat Leon van Snippenberg in op de achtergronden van concurrentiesoftwareontwerp.

Embedded software maakt steeds vaker gebruik van een besturingssysteem. Dit is verantwoordelijk voor het op het juiste moment activeren van processen en voor communicatie en synchronisatie tussen deze processen. Het biedt slechts de primitieve functionaliteit. De ontwerper moet zorgen voor een correct werkend geheel. In de praktijk is zijn kennis vaak onvoldoende of gebruikt hij het verkeerd. Ook bij opleidingsinstituten is steeds minder aandacht voor ontwerpen van concurrentiesystemen ten faveure van meer fancy onderwerpen als webdesign en GUI-ontwerp. De afstand tussen benodigde en aanwezige kennis wordt steeds groter. Door gebruik te maken van een aantal uitgangspunten kunnen we dit probleem verkleinen.

This article is exclusively available to premium members of Bits&Chips. Already a premium member? Please log in. Not yet a premium member? Become one and enjoy all the benefits.

Login

Related content