Verifying atomicity preservation and deadlock freedom of a generic shared variable mechanism used in model-to-code transformations

Autor: Zhang, D., Bošnački, D., van den Brand, M.G.J., Huizing, C., Jacobs, B., Kuiper, R., Wijs, A., Hammoudi, S., Pires, L.F., Selic, B., Desfray, P.
Přispěvatelé: Computational Biology
Jazyk: angličtina
Rok vydání: 2017
Předmět:
Zdroj: Model-Driven Engineering and Software Development-4th International Conference, MODELSWARD 2016, Revised Selected Papers, 249-273
STARTPAGE=249;ENDPAGE=273;TITLE=Model-Driven Engineering and Software Development-4th International Conference, MODELSWARD 2016, Revised Selected Papers
Communications in Computer and Information Science ISBN: 9783319663012
MODELSWARD (Revised Selected Papers)
Popis: A challenging aspect of model-to-code transformations is to ensure that the semantic behavior of the input model is preserved in the output code. When constructing concurrent systems, this is mainly difficult due to the non-deterministic potential interaction between threads. In this paper, we consider this issue for a framework that implements a transformation chain from models expressed in the state machine based domain specific language SLCO to Java. In particular, we provide a fine-grained generic mechanism to preserve atomicity of SLCO statements in the Java implementation. We give its generic specification based on separation logic and verify it using the verification tool VeriFast. The solution can be regarded as a reusable module to safely implement atomic operations in concurrent systems. Moreover, we also prove with VeriFast that our mechanism does not introduce deadlocks. The specification formally ensures that the locks are not reentrant which simplifies the formal treatment of the Java locks.
Databáze: OpenAIRE