vault backup: 2025-04-05 00:11:00
This commit is contained in:
parent
60c7e97f33
commit
0798769a15
3 changed files with 6 additions and 7 deletions
9
.obsidian/workspace.json
vendored
9
.obsidian/workspace.json
vendored
|
@ -74,8 +74,7 @@
|
||||||
"title": "Segnalibri"
|
"title": "Segnalibri"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
]
|
||||||
"currentTab": 1
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"direction": "horizontal",
|
"direction": "horizontal",
|
||||||
|
@ -190,10 +189,11 @@
|
||||||
"companion:Toggle completion": false
|
"companion:Toggle completion": false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"active": "954699747dc12b5e",
|
"active": "6550032d28b9171c",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
"\u0002.md",
|
"Concurrent Systems/notes/4 - Semaphores.md",
|
||||||
"Concurrent Systems/notes/4c - Dining Philosophers.md",
|
"Concurrent Systems/notes/4c - Dining Philosophers.md",
|
||||||
|
"\u0002.md",
|
||||||
"Concurrent Systems/notes/1b - Peterson algorithm.md",
|
"Concurrent Systems/notes/1b - Peterson algorithm.md",
|
||||||
"Concurrent Systems/notes/2b - Round Robin algorithm.md",
|
"Concurrent Systems/notes/2b - Round Robin algorithm.md",
|
||||||
"Concurrent Systems/notes/10 - Implementing Consensus.md",
|
"Concurrent Systems/notes/10 - Implementing Consensus.md",
|
||||||
|
@ -201,7 +201,6 @@
|
||||||
"Concurrent Systems/notes/images/Pasted image 20250405000438.png",
|
"Concurrent Systems/notes/images/Pasted image 20250405000438.png",
|
||||||
"Pasted image 20250405000428.png",
|
"Pasted image 20250405000428.png",
|
||||||
"Concurrent Systems/notes/3b - Aravind's algorithm and improvements.md",
|
"Concurrent Systems/notes/3b - Aravind's algorithm and improvements.md",
|
||||||
"Concurrent Systems/notes/4 - Semaphores.md",
|
|
||||||
"Concurrent Systems/notes/4b - Monitors.md",
|
"Concurrent Systems/notes/4b - Monitors.md",
|
||||||
"Concurrent Systems/a.md",
|
"Concurrent Systems/a.md",
|
||||||
"Concurrent Systems/notes/images/Pasted image 20250404235033.png",
|
"Concurrent Systems/notes/images/Pasted image 20250404235033.png",
|
||||||
|
|
|
@ -180,7 +180,7 @@ producer A:
|
||||||
- so producer A will write at `BUF[0]`
|
- so producer A will write at `BUF[0]`
|
||||||
- but wait! Consumer B is still reading there
|
- but wait! Consumer B is still reading there
|
||||||
- **Producer A doesn't give a fuck.**
|
- **Producer A doesn't give a fuck.**
|
||||||
![]()
|
`
|
||||||
*don't be like Producer A, be more like Bob, who always scans EMPTY before!*
|
*don't be like Producer A, be more like Bob, who always scans EMPTY before!*
|
||||||
|
|
||||||
So the issue here is that producers just assume that IN is the first available slot. But it its not necessarily the case.
|
So the issue here is that producers just assume that IN is the first available slot. But it its not necessarily the case.
|
||||||
|
|
|
@ -3,7 +3,7 @@ The first real practical example of a concurrent system.
|
||||||
- one chopstick between each pair of philosophers
|
- one chopstick between each pair of philosophers
|
||||||
- a philosophers must pick up its two nearest chopsticks in order to eat
|
- a philosophers must pick up its two nearest chopsticks in order to eat
|
||||||
- a philosopher must pick up first one chopstick, then the second one, not both at once
|
- a philosopher must pick up first one chopstick, then the second one, not both at once
|
||||||
![]()
|
`
|
||||||
|
|
||||||
**PROBLEM:** *Devise a deadlock-free algorithm for allocating these limited resources (chopsticks) among several processes (philosophers).*
|
**PROBLEM:** *Devise a deadlock-free algorithm for allocating these limited resources (chopsticks) among several processes (philosophers).*
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue