vault backup: 2025-03-17 10:34:23
This commit is contained in:
parent
483a72be5c
commit
6a92adebf0
2 changed files with 11 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": 2,
|
"page": 4,
|
||||||
"left": -27,
|
"left": -27,
|
||||||
"top": 266,
|
"top": 379,
|
||||||
"zoom": 0.5754156769596199
|
"zoom": 0.5754156769596199
|
||||||
},
|
},
|
||||||
"icon": "lucide-file-text",
|
"icon": "lucide-file-text",
|
||||||
|
|
|
@ -23,4 +23,12 @@ The key issue is ensuring consistency of the shared memory
|
||||||
|
|
||||||
Implementation: every transaction uses a local working space
|
Implementation: every transaction uses a local working space
|
||||||
- For every shared register: the first READ copies the value of the reg. in the local copy; successive READs will then read from the local copy
|
- For every shared register: the first READ copies the value of the reg. in the local copy; successive READs will then read from the local copy
|
||||||
- Every WRITE modifies the local copy and puts the final
|
- Every WRITE modifies the local copy and puts the final value in the shared memory only at the end of the transaction (if it has not been aborted)
|
||||||
|
|
||||||
|
4 operations:
|
||||||
|
- `begin_T()`: initializes the local control variables
|
||||||
|
- `X.read_T(), X.write_T()`: described above
|
||||||
|
- `try_to_commit_T()`: decides whether a transaction (non-aborted) can commit
|
||||||
|
|
||||||
|
#### A Logical Clock based STM system
|
||||||
|
All the READs perform if no inconsistencies arise, or before any inconsistency
|
Loading…
Add table
Add a link
Reference in a new issue