From 0bdad34c3e9d1e886aaf8b5aee17da0d52630e04 Mon Sep 17 00:00:00 2001 From: Marco Realacci Date: Tue, 18 Mar 2025 08:39:12 +0100 Subject: [PATCH] vault backup: 2025-03-18 08:39:12 --- Concurrent Systems/notes/5 - Software Transactional Memory.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Concurrent Systems/notes/5 - Software Transactional Memory.md b/Concurrent Systems/notes/5 - Software Transactional Memory.md index ccf2149..8eb9eac 100644 --- a/Concurrent Systems/notes/5 - Software Transactional Memory.md +++ b/Concurrent Systems/notes/5 - Software Transactional Memory.md @@ -120,14 +120,14 @@ So for X, I don't just have to track "who modified X", but also "who modified "Y We have n processes; process $p_i$ has - for every X, a local copy `lc(XX)` of the implementation of X -- $p\_depend_i[1…m]$ s.t. $p\_depend_i[X]$ is the sequence number of the last val of X (directly or indirectly) known by $p_i$ +- $p\_depend_i[1…m]$ s.t. $p\_depend_i[X]$ is the sequence number of the last value of X (directly or indirectly) known by $p_i$ Every transaction T issues by $p_i$ has: - `read_set(T)` and `write_set(T)` - $t\_depend_{T}[1…m]$ a local copy of $p\_depend_i$ (this is used in the optimistic execution, not to change $p\_depend_{i}$ if T aborts) ``` -begin_T() := +begin_T(i) := read_set(T), write_set(T) <- ∅ t_depend_T <- p_depend_i