Software beïnvloed door hardwarefouten?

14/12/2018

Door Ad Spijkers

Onderzoekers van de Technische Universität Kaiserslautern hebben met behulp van een nieuwe methode vastgesteld dat niet alle fouten in de hardware effect hebben op de software.


     

In tal van apparaten, machines en voertuigen – vliegtuigen, hogesnelheidstreinen, industriële robots, wasmachines – draaien kleine computers die er voor zorgen dat de techniek functioneert. Deze embedded systemen zorgen er voor dat een trein op tijd remt, dat de landingskleppen van een vliegtuig uitgaan of dat een machine direct stopt wanneer de hand van een arbeider te dicht bij de zaag komt. De kleine computers garanderen de veiligheid van zulke toepassingen.

Testen van embedded systemen

Embedded systemen worden dus ook in voor de veiligheid relevante toepassingen gebruikt. Om fouten vroegtijdig op te sporen, moet de hardware regelmatig worden getest. Daarbij komt dat de processoren in de hardwarecomponenten steeds kleiner worden. Dat maakt ze vatbaarder voor fouten. Factoren zoals veroudering of hoge temperaturen leiden er toe dat delen van zulke chips sneller verslijten.

Op de markt is een veelheid van testmethoden beschikbaar. Deze verlopen automatisch zonder dat de gebruiker daar iets van merkt. De totale hardware testen kost echter tijd en energie, die de prestaties van het systeem negatief beïnvloeden.

Nieuw model

De onderzoekers in Kaiserslautern hebben nu een model ontwikkeld waarmee ze de uitwerkingen van hardwarefalen op het gedrag van de software analyseren. Ze hebben daartoe op verschillende plaatsen in de hardware fouten ingebouwd. De ingenieurs vergelijken dit model met een foutvrije variant waarbij de hardware feilloos werkt. Bij hun tests hebben ze steeds afzonderlijke fouten maar ook meerdere fouten gelijktijdig onderzocht. Ze hebben getest of deze uitwerkingen op de software hebben. Daarbij constateerden de wetenschappers dat een deel van de fouten (33%) geen invloed op de software heeft.

Voor het testen van voor de veiligheid relevante systemen betekent dit: het is voldoende zich te concentreren op plaatsen waarbij fouten ook voor de software belangrijk zijn. Omdat zulke testmethoden tijdrovend zijn en energie verbruik, zou men op deze manier ook kosten kunnen besparen. Bovendien worden fouten sneller gevonden wanneer zulke tests slechts in bepaalde gebieden in ogenschouw nemen.

De resultaten geven aan, dat testmethoden in de toekomst efficiënter kunnen worden gemaakt. De methode van de onderzoekers uit Karlsruhe maakt het bijvoorbeeld ook mogelijk om beschermingsmechanismen voor hardwarefouten te certificeren. Bij voor de veiligheid relevante elektrische systemen in personenauto's bijvoorbeeld bestaat daarvoor al een norm (ISO 26262). Voor bepaalde hardwarefouten kunnen beschermingsmechanismen worden ontwikkeld waarmee ondernemingen kunnen analyseren of deze ook voldoende zijn.

(foto: Koziel/TU Kaiserslautern)