Monitors: an operating system structuring concept
Communications of the ACM
Correspondence between ALGOL 60 and Church's Lambda-notation: part I
Communications of the ACM
Programming semantics for multiprogrammed computations
Communications of the ACM
Operating system principles
System structure for software fault tolerance
Proceedings of the international conference on Reliable software
SIMULA 67 common base language, (Norwegian Computing Center. Publication)
SIMULA 67 common base language, (Norwegian Computing Center. Publication)
Synchronizing shared abstract types
ACM Transactions on Computer Systems (TOCS)
Limitations of concurrency in transaction processing
ACM Transactions on Database Systems (TODS)
Data and Time Abstraction Techniques for Analyzing Multilevel Concurrent Systems
IEEE Transactions on Software Engineering
A Heuristically-Aided Algorithm for Mutual Exclusion in Distributed Systems
IEEE Transactions on Computers
An Overview of the Nexus Distributed Operating System Design
IEEE Transactions on Software Engineering
Programming atomic actions in Ada
ACM SIGAda Ada Letters
Access method concurrency with recovery
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
IEEE Transactions on Parallel and Distributed Systems
Implementing Atomic Actions in Ada 95
IEEE Transactions on Software Engineering
Hiding distribution in distributed systems
ICSE '91 Proceedings of the 13th international conference on Software engineering
Distributed transactions for reliable systems
Proceedings of the tenth ACM symposium on Operating systems principles
Reliability Issues in Computing System Design
ACM Computing Surveys (CSUR)
A Survey of Techniques for Synchronization and Recovery in Decentralized Computer Systems
ACM Computing Surveys (CSUR)
Concepts and Notations for Concurrent Programming
ACM Computing Surveys (CSUR)
Guardians and Actions: Linguistic Support for Robust, Distributed Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Implementing atomic actions on decentralized data
ACM Transactions on Computer Systems (TOCS)
The hB $^\Pi$-tree: a multi-attribute index supporting concurrency, recovery and node consolidation
The VLDB Journal — The International Journal on Very Large Data Bases
Concurrency and recovery for index trees
The VLDB Journal — The International Journal on Very Large Data Bases
Survey of recent operating systems research, designs and implementations
ACM SIGOPS Operating Systems Review
A type and effect system for atomicity
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
Fault Tolerance in Concurrent Object-Oriented Software through Coordinated Error Recovery
FTCS '95 Proceedings of the Twenty-Fifth International Symposium on Fault-Tolerant Computing
Language support for lightweight transactions
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Atomizer: a dynamic atomicity checker for multithreaded programs
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Simple, Robust and Highly Concurrent B-trees with Node Deletion
ICDE '04 Proceedings of the 20th International Conference on Data Engineering
Exploiting purity for atomicity
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Transactions: a construct for reliable distributed computing
ACM SIGOPS Operating Systems Review
The Guardian Model and Primitives for Exception Handling in Distributed Systems
IEEE Transactions on Software Engineering
ACM SIGOPS Operating Systems Review
Exploiting Purity for Atomicity
IEEE Transactions on Software Engineering
Autolocker: synchronization inference for atomic sections
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Exceptions and side-effects in atomic blocks
Science of Computer Programming - Special issue: Concurrency and synchronization in Java programs
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The Farsite project: a retrospective
ACM SIGOPS Operating Systems Review - Systems work at Microsoft Research
Strategies for handling transactions in distributed data base systems during recovery
VLDB '80 Proceedings of the sixth international conference on Very Large Data Bases - Volume 6
Supporting exception handling for futures in Java
Proceedings of the 5th international symposium on Principles and practice of programming in Java
Exception Handling and Software Fault Tolerance
IEEE Transactions on Computers
Transactions are back---but are they the same?
ACM SIGACT News
Atomizer: A dynamic atomicity checker for multithreaded programs
Science of Computer Programming
Communications of the ACM - Web science
Velodrome: a sound and complete dynamic atomicity checker for multithreaded programs
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Types for atomicity: Static checking and inference for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 6th international workshop on Middleware for pervasive and ad-hoc computing
Language constructs for transactional memory
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
As-if-serial exception handling semantics for Java futures
Science of Computer Programming
Good programming in transactional memory
Theoretical Computer Science
Occurrence nets then and now: the path to structured occurrence nets
PETRI NETS'11 Proceedings of the 32nd international conference on Applications and theory of Petri Nets
Transactions: from local atomicity to atomicity in the cloud
Dependable and Historic Computing
Lock inference in the presence of large libraries
ECOOP'12 Proceedings of the 26th European conference on Object-Oriented Programming
Restricted admission control in view-oriented transactional memory
The Journal of Supercomputing
Software Transactional Memory for GPU Architectures
Proceedings of Annual IEEE/ACM International Symposium on Code Generation and Optimization
Hi-index | 0.01 |
This paper explores the notion of an atomic action as a method of process structuring. This notion, first introduced explicitly by Eswaren et al [6] in the context of data base systems, reduces the problem of coping with many processes to that of coping with a single process within the atomic action. A form of process synchronization, the await statement, is adapted to work naturally with atomic actions. System recovery is also considered and we show how atomic actions can be used to isolate recovery action to a single process. Explicit control of recovery is provided by a reset procedure that permits information from rejected control paths to be passed to subsequent alternative paths.