Deadlock

Deadklock์ด๋ž€?

  • Process๊ฐ€ ์ž์›์„ ์–ป์ง€ ๋ชปํ•ด ๋‹ค์Œ ์ฒ˜๋ฆฌ๋ฅผ ๋ชปํ•˜๋Š” ์ƒํƒœ

    • ex) ์„œ๋กœ ์›ํ•˜๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ์ƒ๋Œ€๋ฐฉ์—๊ฒŒ ํ• ๋‹น๋˜์–ด ์žˆ์–ด์„œ ๋‘ process๊ฐ€ ๋ฌดํ•œ์ • ๊ธฐ๋‹ค๋ฆฌ๊ฒŒ ๋˜๋Š” ์ƒํƒœ

  • ๋ฉ€ํ‹ฐํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์—์„œ ํ•œ์ •๋œ ์ž์›์„ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ๊ฒฝ์Ÿํ•˜๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒ ํ•  ์ˆ˜ ์žˆ๋‹ค

    • ์–ด๋–ค process๊ฐ€ ์ž์›์„ ์š”์ฒญํ–ˆ์„ ๋•Œ ๊ทธ ์‹œ๊ฐ์— ๊ทธ ์ž์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๊ณ , ๊ทธ ๋•Œ๋Š” process๊ฐ€ ๋Œ€๊ธฐ ์ƒํƒœ ๋กœ ๋“ค์–ด๊ฐ€๊ฒŒ ๋œ๋‹ค

    • ๋Œ€๊ธฐ ์ƒํƒœ๋กœ ๋“ค์–ด๊ฐ„ process๋“ค์ด ์‹คํ–‰ ์ƒํƒœ๋กœ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์—†์„ ๋•Œ๋ฅผ ๊ต์ฐฉ์ƒํƒœ๋ผ๊ณ  ํ•œ๋‹ค

DeadLock ๋ฐœ์ƒ ์กฐ๊ฑด

ํ•œ ์‹œ์Šคํ…œ ๋‚ด์—์„œ ๋‹ค์Œ์˜ ๋„ค๊ฐ€์ง€ ์กฐ๊ฑด์ด ๋™์‹œ์— ์„ฑ๋ฆฝํ•  ๋•Œ ๋ฐœ์ƒํ•œ๋‹ค

  1. ์ƒํ˜ธ ๋ฐฐ์ œ

    • ์ž์›์€ ํ•œ ๋ฒˆ์— ํ•œ ํ”„๋กœ์„ธ์Šค๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค

  2. ์ ์œ  ๋Œ€๊ธฐ

    • ์ตœ์†Œํ•œ ํ•˜๋‚˜์˜ ์ž์›์„ ์ ์œ ํ•˜๊ณ  ์žˆ์œผ๋ฉด์„œ, ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์— ํ• ๋‹น๋˜์–ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š” ์ž์›์„ ์ถ”๊ฐ€๋กœ ์ ์œ ํ•˜๊ธฐ ์œ„ํ•ด ๋Œ€๊ธฐํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค

  3. ๋น„์„ ์ 

    • ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์— ํ• ๋‹น๋œ ์ž์›์€ ์‚ฌ์šฉ์ด ๋๋‚  ๋•Œ๊นŒ์ง€ ๊ฐ•์ œ๋กœ ๋น ์•—์„ ์ˆ˜ ์—†์–ด์•ผ ํ•œ๋‹ค

  4. ์ˆœํ™˜ ๋Œ€๊ธฐ

    • ํ”„๋กœ์„ธ์Šค์˜ ์ง‘ํ•ฉ {P0, P1, ,โ€ฆPn}์—์„œ P0๋Š” P1์ด ์ ์œ ํ•œ ์ž์›์„ ๋Œ€๊ธฐํ•˜๊ณ  P1์€ P2๊ฐ€ ์ ์œ ํ•œ ์ž์›์„ ๋Œ€๊ธฐํ•˜๊ณ  P2โ€ฆPn-1์€ Pn์ด ์ ์œ ํ•œ ์ž์›์„ ๋Œ€๊ธฐํ•˜๋ฉฐ Pn์€ P0๊ฐ€ ์ ์œ ํ•œ ์ž์›์„ ์š”๊ตฌํ•ด์•ผ ํ•œ๋‹ค

Dead Lock ํƒ์ง€ ๋ฐ ํšŒ๋ณต

  • ๊ต์ฐฉ ๋Œ€์ƒ ํƒ์ง€

    • ์ž์› ํ• ๋Œ• ๊ทธ๋ž˜ํ”„๋ฅผ ํ†ตํ•ด ๊ต์ฐฉ ์ƒํƒœ๋ฅผ ํƒ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค

    • ์ž์›์„ ์š”์ฒญํ•  ๋•Œ๋งˆ๋‹ค ํƒ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‹คํ–‰ํ•˜๋ฉด ๊ทธ์— ๋Œ€ํ•œ ์˜ค๋ฒ„ํ—ค๋“œ ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค

  • ๊ต์ฐฉ ์ƒํƒœ๋กœ๋ถ€ํ„ฐ ํšŒ๋ณต

    ๊ต์ฐฉ ์ƒํƒœ๋ฅผ ์ผ์œผํ‚จ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•˜๊ฑฐ๋‚˜, ํ• ๋‹น๋œ ์ž์›์„ ํ•ด์ œํ•จ์œผ๋กœ์จ ํšŒ๋ณตํ•œ๋‹ค

    • ํ”„๋กœ์„ธ์Šค ์ข…๋ฃŒ ๋ฐฉ๋ฒ•

      1. ๊ต์ฐฉ ์ƒํƒœ์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ชจ๋‘ ์ค‘์ง€

      2. ๊ต์ฐฉ ์ƒํƒœ๊ฐ€ ์ œ๊ฑฐ๋  ๋•Œ๊นŒ์ง€ ํ•œ ํ”„๋กœ์„ธ์Šค์”ฉ ์ค‘์ง€

    • ์ž์›์„ ์„ ์ ํ•˜๋Š” ๋ฐฉ๋ฒ•

      1. ๊ต์ฐฉ ์ƒํƒœ์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ ์œ ํ•˜๊ณ  ์žˆ๋Š” ์ž์›์„ ์„ ์  ํ•˜์—ฌ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์—๊ฒŒ ํ• ๋‹นํ•˜๋ฉฐ, ํ•ด๋‹น ํ”„๋กœ์„ธ์Šค๋ฅผ ์ผ์‹œ ์ •์ง€ ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•

      2. ์šฐ์„  ์ˆœ์œ„ ๊ฐ€ ๋‚ฎ์€ ํ”„๋กœ์„ธ์Šค, ์ˆ˜ํ–‰ ํšŸ์ˆ˜๊ฐ€ ์ ์€ ํ”„๋กœ์„ธ์Šค๋ฅผ ์œ„์ฃผ๋กœ ์ž์›์„ ์„ ์ ํ•œ๋‹ค

Last updated