Treffer: Proving thread termination

Title:
Proving thread termination
Source:
PLDI'07 Proceedings of the 2007 ACM SIGPLAN Conference on Programming Language Design & Implementation, June 10-13, 2007, San Diego, CAACM SIGPLAN notices. 42(6):320-330
Publisher Information:
Broadway, NY: ACM, 2007.
Publication Year:
2007
Physical Description:
print, 40 ref
Original Material:
INIST-CNRS
Subject Terms:
Computer science, Informatique, Sciences exactes et technologie, Exact sciences and technology, Sciences appliquees, Applied sciences, Informatique; automatique theorique; systemes, Computer science; control theory; systems, Logiciel, Software, Langages de programmation, Programming languages, Systèmes informatiques et systèmes répartis. Interface utilisateur, Computer systems and distributed systems. User interface, Génie logiciel, Software engineering, Conception assistée, Computer aided design, Abstraction, Abstracción, Courriel, Electronic mail, Correo electrónico, Extensibilité, Scalability, Estensibilidad, Fiabilité, Reliability, Fiabilidad, Ingénierie simultanée, Concurrent engineering, Ingeniería simultánea, Interprétation abstraite, Abstract interpretation, Interpretación Abstracta, Langage programmation, Programming language, Lenguaje programación, Pilote périphérique, Device driver, Piloto periférico, Problème terminaison, Termination problem, Problema terminación, Programmation automatique, Automatic programming, Programación automática, Programme concurrent, Concurrent program, Programa competidor, Serveur informatique, Computer server, Servidor informático, Simultanéité informatique, Concurrency, Simultaneidad informatica, Système exploitation, Operating system, Sistema operativo, Théorie preuve, Proof theory, Teoría demonstración, Vérification formelle, Formal verification, Vérification modèle, Model checking, Verificación modelo, Vérification programme, Program verification, Verificación programa, Termination, Threads, Verification
Document Type:
Konferenz Conference Paper
File Description:
text
Language:
English
Author Affiliations:
Microsoft Research, United States
University of Freiburg, Germany
EPFL and MPI, Germany
ISSN:
1523-2867
Rights:
Copyright 2007 INIST-CNRS
CC BY 4.0
Sauf mention contraire ci-dessus, le contenu de cette notice bibliographique peut être utilisé dans le cadre d’une licence CC BY 4.0 Inist-CNRS / Unless otherwise stated above, the content of this bibliographic record may be used under a CC BY 4.0 licence by Inist-CNRS / A menos que se haya señalado antes, el contenido de este registro bibliográfico puede ser utilizado al amparo de una licencia CC BY 4.0 Inist-CNRS
Notes:
Computer science; theoretical automation; systems
Accession Number:
edscal.19110797
Database:
PASCAL Archive

Weitere Informationen

Concurrent programs are often designed such that certain functions executing within critical threads must terminate. Examples of such cases can be found in operating systems, web servers, e-mail clients, etc. Unfortunately, no known automatic program termination prover supports a practical method of proving the termination of threads. In this paper we describe such a procedure. The procedure's scalability is achieved through the use of environment models that abstract away the surrounding threads. The procedure's accuracy is due to a novel method of incrementally constructing environment abstractions. Our method finds the conditions that a thread requires of its environment in order to establish termination by looking at the conditions necessary to prove that certain paths through the thread represent well-founded relations if executed in isolation of the other threads. The paper gives a description of experimental results using an implementation of our procedure on Windows device drivers, and a description of a previously unknown bug found with the tool.