Concurrent programming: principles and practice
Concurrent programming: principles and practice
Stack-based scheduling for realtime processes
Real-Time Systems
IEEE Transactions on Computers
Simple rational guidance for chopping up transactions
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
On optimistic methods for concurrency control
ACM Transactions on Database Systems (TODS)
Multiversion concurrency control—theory and algorithms
ACM Transactions on Database Systems (TODS)
The notions of consistency and predicate locks in a database system
Communications of the ACM
Transactional information systems: theory, algorithms, and the practice of concurrency control and recovery
Real-Time Systems
Real-Time Database Systems: Issues and Applications
Real-Time Database Systems: Issues and Applications
Priority Inheritance Protocols: An Approach to Real-Time Synchronization
IEEE Transactions on Computers
Versioning concurrency control for hard real-time systems
Journal of Systems and Software
Real-time computing with lock-free shared objects
RTSS '95 Proceedings of the 16th IEEE Real-Time Systems Symposium
Wait-free object-sharing schemes for real-time uniprocessors and multiprocessors
RTSS '97 Proceedings of the 18th IEEE Real-Time Systems Symposium
Hi-index | 0.00 |
Locking protocols for hard-real-time systems have not generalized well from uniprocessors to multiprocessors. Bounding and reducing so-called "remote blocking" is widely recognized as an important problem for hard-real-time computing. We describe a combination of locking and versioning protocols together with a "chopping" analysis to shorten critical sections. Selective application of chopping and versioning reduces remote blocking and relaxes constraints imposed by pure locking protocols for multiprocessors. Using the same design-time information required for schedulability analysis in pure locking protocols, the integrated locking and versioning protocol can be implemented using only simple data structures with tunable bounded overheads and worst-case access times. Performance evaluation results via case studies and simulation experiments are presented that show that the protocol can improve pure locking protocols in a variety of settings. Experiments show that in some cases the number of tasks that can be guaranteed schedulability by our integrated protocol is 2.5 times more than the number of tasks that can be guaranteed schedulability by pure locking protocols.