ROADRUNNER är ett dynamiskt analysramverk utformat för att underlätta snabb prototypering och experiment med dynamiska analyser för samtidiga Javaprogram. Det ger en ren API för att kommunicera en händelse ström till back-end analyser, där varje händelse beskriver viss funktion av intresse som utförs av målprogrammet, såsom att komma åt minne, synkronisera på ett lås, gaffel en ny tråd, och så vidare. Detta API gör det möjligt för utvecklaren att fokusera på de väsentliga algoritmiska frågorna i den dynamiska analysen, snarare än på ortogonala infrastrukturkomplex. Varje verktyg för back-end-analys uttrycks som ett filter över händelseströmmen, vilket möjliggör enkel sammansättning av analyser i verktygskedjor. Denna verktygskedja arkitektur gör det möjligt att beskriva och implementera komplexa analyser som en sekvens av enklare, modulära steg, och det underlättar experiment med olika verktyg kompositioner. Dessutom underlättar möjligheten att infoga olika övervakningsverktyg i verktygskedjan felsökning och prestandainställning. Trots ROADRUNNERs flexibilitet gör noggranna implementerings- och optimeringsval det möjligt för ROADRUNNER-baserade analyser att erbjuda jämförbar prestanda med traditionella, monolitiska analysprototyper, samtidigt som de är upp till en storleksordning som är mindre i kodstorlek. Vi har använt ROADRUNNER för att utveckla flera dussin verktyg och har framgångsrikt tillämpat dem på program så stora som Eclipse programmeringsmiljö.
RoadRunner REF är ett Java-instrumentramverk för snabb prototypering av dynamiska analysverktyg.
The RoadRunner Dynamic Analysis Framework for Concurrent Programs
{'venue': "PASTE '10", 'journal': None, 'mag_field_of_study': ['Computer Science']}