Ook wel eens werk kwijtgeraakt door een vastloper? Als onderzoekers van het Massachusetts Institute for Technology (MIT) even doorbijten, is dat binnenkort in de meeste gevallen verleden tijd. Ze werken aan een defibrillator voor vastgelopen software.

 

De onderzoekers hebben een tool ontwikkeld die een van de meest voorkomende oorzaken van vastlopers kan aanpakken: de eindeloze loop. In dat geval probeert een applicatie steeds weer dezelfde instructie uit te voeren.

Een Jolt (in goed Nederlands: Schok) gedoopte tool kan software een duwtje geven zodat die naar de volgende coderegel overstapt, en dus uit de loop raakt. Dat doet Jolt door snapshots van het geheugengebruik te maken wanneer loops optreden. Het optreden van een loop wijst niet altijd op een vastloper. Maar als de staat van het geheugen steeds hetzelfde blijft, is er kennelijk sprake van een oneindige loop, en is er reden om in te grijpen.

Zware last voor processor
Jolt is getest op vijf programma’s, en blijkt daarbij te werken. Het heeft echter wel twee nadelen. De eerste is het beslag op de processor. Het in de gaten houden van alle loops vertraagt de computer met ongeveer 8 procent.

Nadeel twee is dat Jolt alleen werkt met software wanneer het bij compilatie van de code gebruikt wordt, zodat het weet waar loops op kunnen treden. Dat is iets dat commerciële softwareontwikkelaars waarschijnlijk niet zullen willen.

Gecompileerde software nog uitdaging
De onderzoekers werken nu aan een opvolger – Bolt (bliksemschicht) genaamd – die in staat is loops te herkennen in gecompileerde software. Dat lukt tot nog toe alleen bij heel eenvoudige applicaties. Aan een nieuw algoritme dat die taak ook in ingewikkelder software kan uitvoeren, wordt gewerkt.

Automatiseringgids

Published On: 04-08-11|Categories: nieuws|

Deel dit bericht