2009 | OriginalPaper | Buchkapitel
Parallel Programs with Synchronization
Erschienen in: Verification of Sequential and Concurrent Programs
Verlag: Springer London
Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.
Wählen Sie Textabschnitte aus um mit Künstlicher Intelligenz passenden Patente zu finden. powered by
Markieren Sie Textabschnitte, um KI-gestützt weitere passende Inhalte zu finden. powered by
for Many Applications the classes of parallel programs considered so far are not sufficient. We need parallel programs whose components can
synchronize
with each other. That is, components must be able to suspend their execution and
wait
or get
blocked
until the execution of the other components has changed the shared variables in such a way that a certain condition is fulfilled. To formulate such waiting conditions we extend the program syntax of Section 9.1 by a synchronization construct, the
await
statement introduced in Owicki and Gries [1976a]. This construct permits a very flexible way of programming, but at the same time opens the door for subtle programming errors where the program execution ends in a
deadlock
. This is a situation where some components of a parallel program did not terminate and all nonterminated components are blocked because they wait eternally for a certain condition to become satisfied. The formal definition is given in Section 9.2 on semantics.