Nested transactions: an approach to reliable distributed computing
Nested transactions: an approach to reliable distributed computing
Scale and performance in a distributed file system
ACM Transactions on Computer Systems (TOCS)
Recovery management in QuickSilver
ACM Transactions on Computer Systems (TOCS)
Performance of the Firefly RPC
ACM Transactions on Computer Systems (TOCS)
Camelot and Avalon: a distributed transaction facility
Camelot and Avalon: a distributed transaction facility
Distributed deadlock detection algorithm
ACM Transactions on Database Systems (TODS)
System R: relational approach to database management
ACM Transactions on Database Systems (TODS)
Transactions and synchronization in a distributed operating system
Proceedings of the tenth ACM symposium on Operating systems principles
The Recovery Manager of the System R Database Manager
ACM Computing Surveys (CSUR)
Computation and communication in R*: a distributed database manager
ACM Transactions on Computer Systems (TOCS)
Notes on Data Base Operating Systems
Operating Systems, An Advanced Course
Efficient commit protocols for the tree of processes model of distributed transactions
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
ARGUS REFERENCE MANUAL
A fault-tolerant commit protocol for replicated databases
PODS '92 Proceedings of the eleventh ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
A coherent distributed file cache with directory write-behind
ACM Transactions on Computer Systems (TOCS)
Operating system level support for coherence in distributed systems
EW 5 Proceedings of the 5th workshop on ACM SIGOPS European workshop: Models and paradigms for distributed systems structuring
Implementing Atomicity in Two Systems: Techniques, Tradeoffs, and Experience
IEEE Transactions on Software Engineering
IWOOOS '96 Proceedings of the 5th International Workshop on Object Orientation in Operating Systems (IWOOOS '96)
Improving the reliability of commodity operating systems
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Improving the reliability of commodity operating systems
ACM Transactions on Computer Systems (TOCS)
Speculative execution in a distributed file system
Proceedings of the twentieth ACM symposium on Operating systems principles
Speculative execution in a distributed file system
ACM Transactions on Computer Systems (TOCS)
Extending ACID semantics to the file system
ACM Transactions on Storage (TOS)
Dynamic detection and prevention of race conditions in file accesses
SSYM'03 Proceedings of the 12th conference on USENIX Security Symposium - Volume 12
Fixing races for fun and profit: how to abuse atime
SSYM'05 Proceedings of the 14th conference on USENIX Security Symposium - Volume 14
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
A transactional memory service in an extensible operating system
ATEC '98 Proceedings of the annual conference on USENIX Annual Technical Conference
Lightweight flexible isolation for language-based extensible systems
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
Sinfonia: a new paradigm for building scalable distributed systems
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
Object oriented transaction processing in the KeyKOS microkernel
moas'93 USENIX Symposium on USENIX Microkernels and Other Kernel Architectures Symposium - Volume 4
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
Stasis: flexible transactional storage
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
Exceptional situations and program reliability
ACM Transactions on Programming Languages and Systems (TOPLAS)
Portably solving file TOCTTOU races with hardness amplification
FAST'08 Proceedings of the 6th USENIX Conference on File and Storage Technologies
ACM Transactions on Computer Systems (TOCS)
Portably solving file races with hardness amplification
ACM Transactions on Storage (TOS)
Enabling transactional file access via lightweight kernel extensions
FAST '09 Proccedings of the 7th conference on File and storage technologies
Sinfonia: A new paradigm for building scalable distributed systems
ACM Transactions on Computer Systems (TOCS)
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Helios: heterogeneous multiprocessing with satellite kernels
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Hierarchical file systems are dead
HotOS'09 Proceedings of the 12th conference on Hot topics in operating systems
Operating systems should provide transactions
HotOS'09 Proceedings of the 12th conference on Hot topics in operating systems
Protecting applications against TOCTTOU races by user-space caching of file metadata
VEE '12 Proceedings of the 8th ACM SIGPLAN/SIGOPS conference on Virtual Execution Environments
Improving server applications with system transactions
Proceedings of the 7th ACM european conference on Computer Systems
CORFU: a shared log design for flash clusters
NSDI'12 Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation
Beyond block I/O: implementing a distributed shared log in hardware
Proceedings of the 6th International Systems and Storage Conference
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
ACM SIGOPS 24th Symposium on Operating Systems Principles
Tango: distributed data structures over a shared log
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
CORFU: A distributed shared log
ACM Transactions on Computer Systems (TOCS)
Building workload-independent storage with VT-trees
FAST'13 Proceedings of the 11th USENIX conference on File and Storage Technologies
Hi-index | 0.00 |
All programs in the QuickSilver distributed system behave atomically with respect to their updates to permanent data. Operating system support for transactions provides the framework required to support this, as well as a mechanism that unifies reclamation of resources after failures or normal process termination. This paper evaluates the use of transactions for these purposes in a general purpose operating system and presents some of the lessons learned from our experience with a complete running system based on transactions. Examples of how transactions are used in QuickSilver and measurements of their use demonstrate that the transaction mechanism provides an efficient and powerful means for solving many of the problems introduced by operating system extensibility and distribution.