Optimal Interprocedural Analysis of Programs with Thread Creation (2nd funding period) (OpIAT)

Basic data for this project

Type of project: Individual project
Duration: 01/12/2012 - 31/12/2015 | 2nd Funding period

Description

Dieses Projekt setzt das OPIAT-Projekt fort. In der ersten Projektphase wurden Methoden entwickelt, um den Kontrollfuss in nebenläufigen Programmen mit Synchronisationsprimitiven präzise zu analysieren. Dabei konzentrierten wir uns einerseits auf dynamische Pushdown-Netzwerke (DPNs) mit wohlgeschachtelten Locks oder Monitoren. Auf der anderen Seite untersuchten wir ein vereinfachtes Taskmodell, das dem Automobilstandard OSWK zu Grunde liegt, bei dem unterschiedliche Tasks mit Hilfe von Ressourcen und Prioritäten synchronisiert werden. Darauf aufbauend sollen nun in dem Nachfolgeprojekt für diese Programmiermodelle Analyseframeworks entwickelt werden, die es erlauben, weiterreichende Programmeigenschaften statisch zu ermitteln. Insbesondere sollen sowohl für das OSEK-Modell als auch für DPNs Wertanalysen für Programme mit globalen Variablen entwickelt werden. Zur Steigerung der Päzision sollen diese Analysen Synchronisationsprimitive mitberüksichtigen. Neben den schon in der ersten Projektphase betrachteten Synchronisationsprimitiven sollen zudem weitere Synchronisationskonzepte identi ziert werden, die exakt behandelt werden können. Das Projekt wird in Kooperation mit der Gruppe von Prof. Helmut Seidl von der TU München durchgeführt und wird durch die DFG (Deutsche Forschungsgemeinschaft) gefördert.

Keywords: Abstract interpretation; concurrency; data flow analysis; program verification; software reliability; static analysis