vault backup: 2025-03-17 10:44:23
This commit is contained in:
parent
c1c145bbb3
commit
41b6879460
2 changed files with 13 additions and 3 deletions
4
.obsidian/workspace.json
vendored
4
.obsidian/workspace.json
vendored
|
@ -34,9 +34,9 @@
|
||||||
"type": "pdf",
|
"type": "pdf",
|
||||||
"state": {
|
"state": {
|
||||||
"file": "Concurrent Systems/slides/class 5.pdf",
|
"file": "Concurrent Systems/slides/class 5.pdf",
|
||||||
"page": 3,
|
"page": 4,
|
||||||
"left": -27,
|
"left": -27,
|
||||||
"top": 70,
|
"top": 123,
|
||||||
"zoom": 0.5754156769596199
|
"zoom": 0.5754156769596199
|
||||||
},
|
},
|
||||||
"icon": "lucide-file-text",
|
"icon": "lucide-file-text",
|
||||||
|
|
|
@ -46,4 +46,14 @@ We now present an atomic STM system, called *Transactional Locking 2*:
|
||||||
- `lc(XX)`: a local copy of the implementation of reg. X
|
- `lc(XX)`: a local copy of the implementation of reg. X
|
||||||
- `read_set(T)`: the set of names of all the registers read by T up to that moment
|
- `read_set(T)`: the set of names of all the registers read by T up to that moment
|
||||||
- `write_set(T)`: the set of names of all the registers written by T up to that moment
|
- `write_set(T)`: the set of names of all the registers written by T up to that moment
|
||||||
- `birthdate(T)`: the value of CLOCK(+1) at the starting of
|
- `birthdate(T)`: the value of CLOCK(+1) at the starting of T
|
||||||
|
|
||||||
|
**Idea:** commit a transaction if and only if (iff) it could appear as executed at its birthdate time
|
||||||
|
**Consistency:**
|
||||||
|
- if T reads X, then it must be that `XX.date < birthdate(T)`
|
||||||
|
- to commit, all registers accessed by T cannot have been modified after T's birthdate (again, `XX.date < birthdate(T)`)
|
||||||
|
|
||||||
|
###### Implementation:
|
||||||
|
```
|
||||||
|
poi la scrivo giuro
|
||||||
|
```
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue