concurrency (๋์์ฑ)
2๊ฐ ์ด์์ ์ค๋ ๋ (ํน์ ํ๋ก์ธ์ค)๊ฐ ๋์์ ์คํ๋๋ ์ํ์ด๋ค.
1๊ฐ์ CPU๊ฐ ์ฌ๋ฌ ์ค๋ ๋๋ฅผ ๋ฒ๊ฐ์ ์คํํ ๋ ๋ํ๋๋ค.
parallelism (๋ณ๋ ฌ์ฑ)
2๊ฐ ์ด์์ ์ค๋ ๋๊ฐ ์๋ก ๋ค๋ฅธ CPU ์์์ ๊ฐ์ ์๊ฐ์ ๋์์ ์คํ๋๋ ๋ณ๋ ฌ์ฑ์ด๋ค.
๐ก a set of processes is deadlocked when each process in the set is blocked awaiting an event (or a recource) that can only be triggered (released) by another blocked process in the set
โ๏ธ Reusable resource
โ๏ธ Consumable resource
๋ฐ๋๋ฝ์ด ๋ฐ์ํ๋ ์กฐ๊ฑด!
The first three conditions are necessary but not sufficient conditions for a deadlock.
The fourth condition is actually a consequence of the first three.
Given that the first three condition exist, a sequence of events may occur that lead to an unresolvable circular wait.
โ๏ธ Mutual exclusion
โ๏ธ Hold and wait
โ๏ธ No preemption
โ๏ธ Circular wait
๋ฐ๋๋ฝ์ ํด๊ฒฐํ๊ธฐ ์ํ 3๊ฐ์ง ๋ฐฉ์
โ๏ธ Deadlock prevention
โ๏ธ Deadlock avoidance
โ๏ธ Deadlock detection
[KUOCW] ์ต๋ฆฐ ๊ต์๋์ ์ด์์ฒด์ ๊ฐ์๋ฅผ ์๊ฐํ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. ์๋ชป๋ ๋ด์ฉ์ด ์๋ค๋ฉด ๋๊ธ๋ก ์๋ ค์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค ๐