Detecting global predicates in distributed systems with clocks
Distributed Computing
Middleware clocks for sensing the physical world
Proceedings of the 5th International Workshop on Middleware Tools, Services and Run-Time Support for Sensor Networks
Immediate detection of predicates in pervasive environments
Proceedings of the 9th International Workshop on Adaptive and Reflective Middleware
Querying context maps using relative timing predicates in pervasive environments
Proceedings of the 6th International Workshop on Middleware Tools, Services and Run-time Support for Networked Embedded Systems
Immediate detection of predicates in pervasive environments
Journal of Parallel and Distributed Computing
Stable predicate detection in dynamic systems
OPODIS'05 Proceedings of the 9th international conference on Principles of Distributed Systems
Hi-index | 0.00 |
Evaluation of predicates on the state of a distributed system is complicated by the lack of either a common clock or common memory. In these systems, message passing is often used to order local events globally. This leads to a partial, causal ordering of system events. Predicate evaluation algorithms based on this causal ordering generally cannot determine if an unstable predicate was true at some instant of real time without freezing the underlying application. They only determine whether or not the predicate could have occurred. This ordering is sufficient for evaluating stable predicates, but algorithms based on it require a good deal of message passing. We present two algorithms which conclusively evaluate both stable and a restricted class of unstable predicates for a given execution. The algorithms are based on the use of roughly synchronized clocks. We present an algorithm for scheduled evaluation as well as a centralized detection algorithm.