From a9f76fef7cfb1b1f6fd186cd06d2c63ff919c90d Mon Sep 17 00:00:00 2001 From: Marco Realacci Date: Mon, 31 Mar 2025 08:45:43 +0200 Subject: [PATCH] vault backup: 2025-03-31 08:45:43 --- Concurrent Systems/notes/9 - Consensus.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Concurrent Systems/notes/9 - Consensus.md b/Concurrent Systems/notes/9 - Consensus.md index 60120dc..76fb4f8 100644 --- a/Concurrent Systems/notes/9 - Consensus.md +++ b/Concurrent Systems/notes/9 - Consensus.md @@ -36,4 +36,16 @@ Universality of consensus holds as folows: - create a total order on the operations O, by using consensus objects - force all processes to follow this order to locally simulate O - all local copies are consistent +(O can be any object, e.g. a queue) + +### First attempt (non wait-free) +Let us first concentrate on obj's with deterministic specifications (we will see how to handle non-determinism later on) + +Process $p_i$ wants to invoke operation op of object Z with arguments args, locally runs: +``` +result_i <- ⊥ +invoc_i <- ⟨op(args) , i⟩ +wait result_i != ⊥ +return result_i +```