- ๊ต์ฐฉ ์ํ (deadlock)
: ์ผ์ด๋์ง ์์ ์ฌ๊ฑด์ ๊ธฐ๋ค๋ฆฌ๋ฉฐ ์งํ์ด ๋ฉ์ถฐ๋ฒ๋ฆฌ๋ ํ์
: Aํ๋ก์ธ์ค๊ฐ B์์์ ์ ์ ํ๋ฉฐ Bํ๋ก์ธ์ค๊ฐ ๊ฐ์ง A์์์ ๊ธฐ๋ค๋ฆฌ๋ฉฐ, Bํ๋ก์ธ์ค๋ Aํ๋ก์ธ์ค๊ฐ ๊ฐ์ง B์์์ ๊ธฐ๋ค๋ฆฌ๋ ์ํฉ
- ์์ ํ ๋น ๊ทธ๋ํ (resource-allocation graph)
: ํ๋ก์ธ์ค๋ ์์ผ๋ก, ์์์ ์ข ๋ฅ๋ ์ฌ๊ฐํ์ผ๋ก ๊ทธ๋ฆผ
: ์ฌ์ฉํ ์ ์๋ ์์ ๊ฐ์๋ ์์ ์ฌ๊ฐํ ๋ด ์ ์ผ๋ก ํํํจ
: ํ๋ก์ธ์ค๊ฐ ์ด๋ค ์์์ ํ ๋น ๋ฐ์ ์ฌ์ฉ ์ค์ด๋ผ๋ฉด ์์์์ ํ๋ก์ธ์ค๋ฅผ ํฅํด ํ์ดํ ํ์
: ํ๋ก์ธ์ค๊ฐ ์ด๋ค ์์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ค๋ฉด ํ๋ก์ธ์ค์์ ์์์ผ๋ก ํ์ดํ ํจ์
- ๊ต์ฐฉ ๋ฐ์ ์กฐ๊ฑด
1) ์ํธ ๋ฐฐ์ (mutual exclusion) : ํด๋น ์์์ ํ๋์ ํ๋ก์ธ์ค๋ง ์ด์ฉ ๊ฐ๋ฅ ํ ๋, ํ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ์์์ ๋ค๋ฅธ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ ์ ์์ ๋
2) ์ ์ ์ ๋๊ธฐ(hold and wait) : ์์์ ํ ๋น ๋ฐ์ ์ํ์์ ๋ค๋ฅธ ์์์ ํ ๋น ๋ฐ๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ํ
3) ๋น์ ์ (nonpreemptive) : ๋น์ ์ ์์์ ๊ทธ ์์์ ์ด์ฉํ๋ ํ๋ก์ธ์ค์ ์์ ์ด ๋๋์ผ๋ง ๋น๋ก์ ์ด์ฉ ๊ฐ๋ฅํจ
4) ์ํ ๋๊ธฐ(circular wait) : ํ๋ก์ธ์ค ์์ฒญ ๋ฐ ํ ๋น ๋ฐ์ ์์์ด ์์ ํํ๋ฅผ ์ด๋ฃธ (์์ ํ ๋น ๊ทธ๋ํ)
< ๊ต์ฐฉ ์ํ ํด๊ฒฐ ๋ฐฉ๋ฒ >
1) ์๋ฐฉ
: ์ํธ๋ฐฐ์ ๋ถ์ - ์ฌ๋ฌ ๊ฐ์ ํ๋ก์ธ์ค๊ฐ ๊ณต์ ์์์ ์ฌ์ฉํ ์ ์๊ฒ ํจ
: ์ ์ ๋๊ธฐ ๋ถ์ - ํ๋ก์ธ์ค๊ฐ ์คํ๋๊ธฐ ์ ํ์ํ ๋ชจ๋ ์์์ ํ ๋นํจ
: ๋น์ ์ ๋ถ์ - ์์์ ์ ์ ํ ํ๋ก์ธ์ค๊ฐ ๋ค๋ฅธ ์์์ ์๊ตฌํ ๋ ์ ์ ํ๊ณ ์๋ ์์์ ๋ฐ๋ฉํ๊ณ , ์๊ตฌํ ์์์ ์ฌ์ฉํ๊ธฐ ์ํด ๊ธฐ๋ค๋ฆผ
: ์ํ ๋๊ธฐ - ์์์ ๊ณ ์ ํ ๋ฒํธ๋ฅผ ํ ๋นํ๊ณ ๋ฒํธ ์์๋๋ก ์์์ ์๊ตฌ
2) ํํผ
: ๊ต์ฐฉ ์ํ๊ฐ ๋ฐ์ํ์ง ์๋๋ก ์กฐ์ฌํ ์์์ ํ ๋นํจ
: ๋ถ์์ ์ํ - ๊ต์ฐฉ ์ํ๊ฐ ๋ฐ์ํ ์ ์์ (vs ์์ ์ํ)
: ์์ ์์์ด - ๊ต์ฐฉ ์ํ ์์ด ์์ ํ๊ฒ ํ๋ก์ธ์ค๋ค์ ์์์ ํ ๋นํ ์ ์๋ ์์ (์์ ์ํ)
3) ๊ฒ์ถ ํ ํ๋ณต
: ์ ์ ์ ํตํ ํ๋ณต - ๊ต์ฐฉ ์ํ๊ฐ ํด๊ฒฐ๋ ๋๊น์ง ํ ํ๋ก์ธ์ค์ฉ ์์์ ๋ชฐ์์ฃผ๋ ๋ฐฉ์
: ํ๋ก์ธ์ค ๊ฐ์ ์ข ๋ฃ๋ฅผ ํตํ ํ๋ณต
'๐ค Study > ์ด์์ฒด์ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[07] ํ์ผ ์์คํ (0) | 2024.03.29 |
---|---|
[06] ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ (1) | 2024.03.28 |
[04] ํ๋ก์ธ์ค ๋๊ธฐํ (0) | 2024.03.24 |
[03] CPU ์ค์ผ์ค๋ง (0) | 2024.03.19 |
[02] ํ๋ก์ธ์ค ๊ฐ์ (0) | 2024.03.15 |