Detail publikace
SHADOWS - Deliverable D3.2.1: Research Report on Methodology for Self-Healing Concurrent Code Fixing
Letko Zdeněk, Ing. (FIT VUT)
Tzoref-Brill Rachel (IBM)
Ur Shmuel (IBM)
Vojnar Tomáš, prof. Ing., Ph.D. (UITS FIT VUT)
Metodologie pro automatické opravy chyb má čtyři kroky: detekce problému, lokalizace problému, oprava prolému a ověření korektnosti opravy. V této zprávě popisujeme, jak jsme tuto obecnou metodologii přizpůsobili pro automatické opravování chyb souvisejících s paralelizmem. Nejdříve ukážeme, jak nástroje ConTest přispívá k lepšímu testování paralelního softwaru: ConTest nám dovoluje monitorovat paralelní Java programy za běhu a vkládat šum, který zvyšuje pravděpodobnost objevení chyb souvisejících s paralelizmem. S využitím nástroje ConTest jsme vyvinuli specializovaný nástroj pro detekci a lokalizaci tzv. data races (data races jsou poměrně časté chyby, které je značně obtížné odhalit). Dále jsme navrhli metodu pro lokalizaci chyb souvisejících s praralelizmem, která je založena na statistickém vyhodnocování velkého počtu testů. Na základě studia nejčastějších programátorských chyb souvisejících s paralelizmem jsme identifikovali možné opravy, které by mohly být provedeny automaticky bez zásahu člověka. V závěru jsme shrnuli pořadavky, možnosti a očekávané problémy při oveřování korektnosti automaticky provedených oprav, přičemž hodláme za tímto účelem využít formální metody jako model checking a statickou analýzu.
@TECHREPORT{FITPUB8497, author = "Bohuslav K\v{r}ena and Zden\v{e}k Letko and Rachel Tzoref-Brill and Shmuel Ur and Tom\'{a}\v{s} Vojnar", title = "SHADOWS - Deliverable D3.2.1: Research Report on Methodology for Self-Healing Concurrent Code Fixing", pages = 13, year = 2007, location = "Brno, CZ", publisher = "European Comission EU", language = "english", url = "https://www.fit.vut.cz/research/publication/8497" }