๐Ÿ“ƒ ๋™๊ธฐํ™”์™€ ๋ฐ๋“œ๋ฝ

JeongMinยท2023๋…„ 10์›” 6์ผ
0
post-thumbnail

๋™์‹œ์„ฑ(Concurrency)๊ณผ ๋ณ‘๋ ฌ์„ฑ(Parallelism)

  • ๋™์‹œ์„ฑ(Concurrency)์€ ๋น ๋ฅด๊ฒŒ ์ „ํ™˜ํ•˜๋ฉฐ ์—ฌ๋Ÿฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด ์—ฌ๋Ÿฌ ์ž‘์—…์ด ๋™์‹œ์— ์‹คํ–‰๋˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๊ฒŒ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ•œ ๊ฐœ์˜ ์ฝ”์–ด์—์„œ๋„ ๋™์‹œ์„ฑ์ด ์ผ์–ด๋‚˜๊ณ  ์ž‘์—… ๊ฐ„์— ๋ฌธ๋งฅ๊ตํ™˜์ด ์ผ์–ด๋‚œ๋‹ค.
  • ๋™์‹œ์„ฑ์˜ ๋ฌธ์ œ์ ์€ ๋™๊ธฐํ™” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ณ‘๋ ฌ์„ฑ(Parallelism)์€ ์—ฌ๋Ÿฌ ์ฝ”์–ด์—์„œ ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ฝ”์–ด๊ฐ€ ํ•˜๋‚˜๋ผ๋ฉด ๋ณ‘๋ ฌ์„ฑ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์—†๋‹ค.
  • ๋ณ‘๋ ฌ์„ฑ์˜ ๋ฌธ์ œ์ ์€ ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์ˆ˜ํ–‰ํ•ด์„œ Race Condition, ๋™๊ธฐํ™” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋™์‹œ์„ฑ๊ณผ ๋ณ‘๋ ฌ์„ฑ์€ ๋™๊ธฐํ™” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ณตํ†ต์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

ํ”„๋กœ์„ธ์Šค์˜ ๋™๊ธฐํ™”

  • ํ”„๋กœ์„ธ์Šค ๋™๊ธฐํ™”๋Š” ํ”„๋กœ์„ธ์Šค ์‚ฌ์ด์˜ ์ˆ˜ํ–‰ ์‹œ๊ธฐ๋ฅผ ๋งž์ถ”๋Š” ๊ฒƒ์ด๋‹ค.
  • ํ”„๋กœ์„ธ์Šค ๋™๊ธฐํ™”๋ฅผ ํ•  ๊ฒฝ์šฐ ์‹คํ–‰ ์ˆœ์„œ๊ฐ€ ์ œ์–ด๋˜๊ณ  ์ƒํ˜ธ ๋ฐฐ์ œ๊ฐ€ ๋œ๋‹ค.

์ž„๊ณ„ ๊ตฌ์—ญ(Critical Section)

  • ์ ‘๊ทผํ•ด์„œ๋Š” ์•ˆ๋˜๋Š” ๊ณต์œ  ์ž์›(ํŒŒ์ผ, ์ž…์ถœ๋ ฅ, ๊ณต์œ  ๋ฐ์ดํ„ฐ ๋“ฑ)์— ์ ‘๊ทผํ•˜๋Š” ๋ช…๋ น๋ฌธ ๋˜๋Š” ์ฝ”๋“œ์˜ ์ผ๋ถ€ ์˜์—ญ์„ ๋งํ•œ๋‹ค.

๋ ˆ์ด์Šค ์ปจ๋””์…˜(Race Condition)

  • ์ž˜๋ชป๋œ ์‹คํ–‰์œผ๋กœ ์ธํ•ด ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋™์‹œ์— ์ž„๊ณ„ ๊ตฌ์—ญ์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ๊ณต์œ  ์ž์›์˜ ์ผ๊ด€์„ฑ์„ ํ—ค์น˜๋Š” ํ˜„์ƒ์ด๋‹ค.
  • ๋ ˆ์ด์Šค ์ปจ๋””์…˜์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋Œ€ํ‘œ์ ์œผ๋กœ ์ƒํ˜ธ ๋ฐฐ์ œ, ์ง„ํ–‰, ์œ ํ•œ ๋Œ€๊ธฐ๋ฅผ ํ†ตํ•ด์„œ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

์ƒํ˜ธ ๋ฐฐ์ œ(Mutual Exclusion)

  • ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž„๊ณ„ ๊ตฌ์—ญ์—์„œ ์‹คํ–‰๋˜๊ณ  ์žˆ์œผ๋ฉด, ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๋Š” ์ž„๊ณ„ ๊ตฌ์—ญ์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์—†๋Š” ๊ฒƒ์ด๋‹ค. ๊ณต์œ ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•œ ์ž์›์˜ ๋™์‹œ ์‚ฌ์šฉ์„ ํ”ผํ•  ์ˆ˜ ์žˆ๋‹ค.

์ง„ํ–‰(Progress)

  • ์ž„๊ณ„ ๊ตฌ์—ญ์—์„œ ์‹คํ–‰๋˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์—†์„ ๊ฒฝ์šฐ, ์ž„๊ณ„ ๊ตฌ์—ญ์— ๋“ค์–ด๊ฐˆ ์ ์ ˆํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

์œ ํ•œ ๋Œ€๊ธฐ(Bounded Waiting)

  • ํ”„๋กœ์„ธ์Šค์˜ ๊ธฐ์•„๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด, ํ•œ ๋ฒˆ ์ž„๊ณ„ ๊ตฌ์—ญ์—์„œ ์‹คํ–‰๋œ ํ”„๋กœ์„ธ์Šค๋Š” ๋‹ค์Œ ์‹คํ–‰์— ์ œํ•œ์„ ๋‘๋Š” ๊ฒƒ์ด๋‹ค.

์ƒํ˜ธ ๋ฐฐ์ œ ๋ฐฉ์‹(๋ฎคํ…์Šค, ์„ธ๋งˆํฌ์–ด, ๋ชจ๋‹ˆํ„ฐ)

๋ฎคํ…์Šค(Mutual Exclusion)

  • ๋ฎคํ…์Šค(Mutual Exclusion)๋Š” ์ƒํ˜ธ ๋ฐฐ์ œ๋ฅผ ์œ„ํ•œ ๋™๊ธฐํ™” ๋„๊ตฌ์ด๋‹ค.

  • ์ž„๊ณ„ ๊ตฌ์—ญ์— ์ง„์ž…ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋Š” ํ˜„์žฌ ์ž„๊ณ„ ๊ตฌ์—ญ์— ์žˆ์Œ์„ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•ด ๋ฝ์„ ์‚ฌ์šฉํ•œ๋‹ค. ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๋Š” ์ž„๊ณ„ ๊ตฌ์—ญ์— ๋ฝ์ด ๊ฑธ๋ ค์žˆ์œผ๋ฉด ๊ธฐ๋‹ค๋ฆฌ๊ณ  ๋ฝ์ด ์—†๋‹ค๋ฉด ์ž„๊ณ„ ๊ตฌ์—ญ์— ์ง„์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • acquire ํ•จ์ˆ˜๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž„๊ณ„ ๊ตฌ์—ญ์— ์ง„์ž…ํ•˜๊ธฐ ์ „์— ํ˜ธ์ถœํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ๋งŒ์•ฝ ์ž„๊ณ„ ๊ตฌ์—ญ์ด ์ž ๊ฒจ์žˆ๋‹ค๋ฉด ์—ด๋ฆด ๋•Œ ๊นŒ์ง€(lock์ด false๊ฐ€ ๋  ๋•Œ๊นŒ์ง€) ์ž„๊ณ„ ๊ตฌ์—ญ์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ํ™•์ธํ•˜๊ณ  ์ž„๊ณ„ ๊ตฌ์—ญ์ด ์—ด๋ ค์žˆ๋‹ค๋ฉด ์ž ๊ทธ๋Š”(lock์„ true๋กœ ๋ฐ”๊พธ๋Š”) ํ•จ์ˆ˜์ด๋‹ค.

  • release ํ•จ์ˆ˜๋Š” ์ž„๊ณ„ ๊ตฌ์—ญ์—์„œ ์ž‘์—…์ด ๋๋‚˜๊ณ  ํ˜ธ์ถœํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ํ˜„์žฌ ์ž ๊ธด ์ž„๊ณ„ ๊ตฌ์—ญ์„ ์—ด์–ด์ฃผ๋Š”(lock์„ false๋กœ ๋ฐ”๊พธ๋Š”) ํ•จ์ˆ˜์ด๋‹ค.

  • acquire ํ•จ์ˆ˜๋Š” ์ž„๊ณ„ ๊ตฌ์—ญ์ด ์ž ๊ฒจ์žˆ์„ ๊ฒฝ์šฐ ๋ฐ˜๋ณต์ ์„ lock์„ ํ™•์ธํ•˜๋Š”๋ฐ, ์ด๊ฒƒ์€ ๋ฐ”์œ ๋Œ€๊ธฐ(Busy Wait)๋ผ๊ณ  ํ•œ๋‹ค.

์„ธ๋งˆํฌ์–ด(Semaphore)

  • ์„ธ๋งˆํฌ์–ด๋Š” ๊ณต์œ  ์ž์›์ด ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ๋Š” ์ƒํ™ฉ์—์„œ ์ ์šฉ๋˜๋Š” ๋™๊ธฐํ™” ๋„๊ตฌ์ด๋‹ค. ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค์˜ ์ˆ˜๋ฅผ ๊ณตํ†ต์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ํ•˜๋‚˜์˜ ๊ฐ’์„ ์ด์šฉํ•ด ์ƒํ˜ธ ๋ฐฐ์ œ๋ฅผ ๋‹ฌ์„ฑํ•œ๋‹ค.
  • ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต์œ  ์ž์›์˜ ๊ฐœ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ „์—ญ ๋ณ€์ˆ˜ S, ์ž„๊ณ„ ๊ตฌ์—ญ์— ๋“ค์–ด๊ฐˆ์ง€ ๋ง์ง€ ์•Œ๋ ค์ฃผ๋Š” wait ํ•จ์ˆ˜, ์ž„๊ณ„ ๊ตฌ์—ญ ์•ž์—์„œ ๊ธฐ๋‹ค๋ฆฌ๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋“ค์–ด๊ฐ€๋„ ๊ดœ์ฐฎ๋‹ค๋Š” ์‹ ํ˜ธ๋ฅผ ์ฃผ๋Š” signal ํ•จ์ˆ˜๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.

๋ฎคํ…์Šค์™€ ์„ธ๋งˆํฌ์–ด์˜ ์ฐจ์ด??

  • ๋™๊ธฐํ™” ๋Œ€์ƒ์˜ ๊ฐœ์ˆ˜์— ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค. ๋ฎคํ…์Šค๋Š” ๋™๊ธฐํ™” ๋Œ€์ƒ์ด 1 ๊ฐœ์ง€๋งŒ, ์„ธ๋งˆํฌ์–ด๋Š” ๋™๊ธฐํ™” ๋Œ€์ƒ์ด ์—ฌ๋Ÿฌ ๊ฐœ์ด๋‹ค.

๋ชจ๋‹ˆํ„ฐ(Monitor)

  • ๋ชจ๋‹ˆํ„ฐ๋Š” ์„ธ๋งˆํฌ์–ด์˜ ํ•œ๊ณ„๋ฅผ ๋ณด์™„ํ•˜๊ณ  ๊ณ  ์ฐจ์›์ ์ธ ๋น„๋™๊ธฐ ๋ฐฉ๋ฒ•์œผ๋กœ ์ƒํ˜ธ ๋ฐฐ์ œ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋™๊ธฐํ™” ๋„๊ตฌ์ด๋‹ค.
  • ์„ธ๋งˆํฌ์–ด๋Š” waitํ•จ์ˆ˜์™€ signalํ•จ์ˆ˜๋ฅผ ๋งค๋ฒˆ ์ž„๊ณ„ ๊ตฌ์—ญ ์•ž ๋’ค์— ๋ช…์‹œํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ํ”„๋กœ๊ทธ๋ž˜๋จธ์˜ ์‹ค์ˆ˜๋กœ ์ธํ•ด ํ•จ์ˆ˜์˜ ์ˆœ์„œ ๋ฌธ์ œ๋‚˜ ํ•จ์ˆ˜๋ฅผ ์ค‘๋ณต์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฌธ์ œ์ ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.(wait โ†’ signal ์ˆœ์„œ๋ฅผ ์ง€์ผœ์•ผํ•จ)
  • ๋ชจ๋‹ˆํ„ฐ๋Š” ๊ณต์œ  ์ž์›๊ณผ ๊ณต์œ  ์ž์›์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค(ํ†ต๋กœ)๋ฅผ ๋ฌถ์–ด ๊ด€๋ฆฌํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ์„ธ์Šค๋Š” ๋ฐ˜๋“œ์‹œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด์„œ๋งŒ ๊ณต์œ  ์ž์›์— ์ ‘๊ทผํ•˜๋„๋ก ํ•œ๋‹ค.

๋ฐ๋“œ๋ฝ, ๊ต์ฐฉ ์ƒํƒœ

  • ๋ฐ๋“œ๋ฝ์€ ๋‘ ๊ฐœ ์ด์ƒ์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์„œ๋กœ ์ž์›์„ ์–ป์ง€ ๋ชปํ•ด ์ง„ํ–‰์„ ๋ชปํ•˜๊ณ  ๋ฌดํ•œํžˆ ๋‹ค์Œ ์ž์›์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค.
  • ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ž์›์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•˜๋Š” ์กฐ๊ฑด์€ ๋Œ€ํ‘œ์ ์œผ๋กœ ์ƒํ˜ธ ๋ฐฐ์ œ, ์ ์œ ์™€ ๋Œ€๊ธฐ, ๋น„์„ ์ , ์›ํ˜• ๋Œ€๊ธฐ๊ฐ€ ์žˆ๋‹ค.
  • ์ƒํ˜ธ ๋ฐฐ์ œ๋Š” ํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์ž์›์„ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์„ ๋•Œ ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ ์œ ์™€ ๋Œ€๊ธฐ๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์–ด๋– ํ•œ ์ž์›์„ ํ• ๋‹น๋ฐ›์€ ์ƒํƒœ์—์„œ ๋‹ค๋ฅธ ์ž์›์„ ํ• ๋‹น๋ฐ›๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆด ๋•Œ ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋น„์„ ์ ์€ ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๋„ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์˜ ์ž์›์„ ๊ฐ•์ œ๋กœ ๋บ์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•œ๋‹ค.
  • ์›ํ˜• ๋Œ€๊ธฐ๋Š” ์ž์› ํ• ๋‹น ๊ทธ๋ž˜ํ”„๊ฐ€ ์›์˜ ํ˜•ํƒœ๋กœ ๊ทธ๋ ค์ง€๋ฉด ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์›์˜ ํ˜•ํƒœ๋ผ๊ณ  ํ•ด์„œ ํ•ญ์ƒ ๊ต์ฐฉ ์ƒํƒœ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค.

๋ฐ๋“œ๋ฝ ํšŒํ”ผ ๋ฐฉ๋ฒ• 3๊ฐ€์ง€

๋ฐ๋“œ๋ฝ ์กฐ๊ฑด ์˜ˆ๋ฐฉ

  • ๋ฐ๋“œ๋ฝ ๋ฐœ์ƒ ์กฐ๊ฑด 4๊ฐ€์ง€ ์กฐ๊ฑด ์ค‘ ํ•˜๋‚˜๋ผ๋„ ๋ฐœ์ƒํ•˜์ง€ ์•Š๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ๋ฐ๋“œ๋ฝ ์˜ˆ๋ฐฉ ๋ฐฉ๋ฒ•์ด๋‹ค.

  • ์ƒํ˜ธ ๋ฐฐ์ œ ์กฐ๊ฑด ๋ฐฉ์ง€๋Š” ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ณ ์œ  ์ž์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ๋™๊ธฐํ™”์™€ ๊ด€๋ จ๋œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์ ์œ ์™€ ๋Œ€๊ธฐ ์กฐ๊ฑด ๋ฐฉ์ง€๋Š” ์ ์œ ์™€ ๋Œ€๊ธฐ๋ฅผ ์—†์•  ์šด์˜์ฒด์ œ๊ฐ€ ํŠน์ • ํ”„๋กœ์„ธ์Šค์— ์ž์›์„ ๋ชจ๋‘ ํ• ๋‹นํ•˜๊ฑฐ๋‚˜, ์•„์˜ˆ ํ• ๋‹นํ•˜์ง€ ์•Š๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐฐ๋ถ„ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ž์›์˜ ํ™œ์šฉ์œจ์ด ๋‚ฎ์•„์ง„๋‹ค.

  • ๋น„์„ ์  ์กฐ๊ฑด ๋ฐฉ์ง€๋Š” ๋น„์„ ์  ์กฐ๊ฑด์„ ์—†์•ด์„ ๋•Œ ์ž์›์„ ์ด์šฉ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค๋กœ๋ถ€ํ„ฐ ํ•ด๋‹น ์ž์›์„ ๋นผ์•—์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ๋ชจ๋“  ์ž์›์ด ํ•ญ์ƒ ์„ ์ ์ด ๊ฐ€๋Šฅํ•œ ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค.

  • ์›ํ˜• ๋Œ€๊ธฐ ์กฐ๊ฑด ๋ฐฉ์ง€๋Š” ๋ชจ๋“  ์ž์›์— ์ˆœ์„œ๋ฅผ ์ •ํ•ด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ž์›์„ ํ• ๋‹นํ•˜์—ฌ ์›ํ˜• ๋Œ€๊ธฐ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ˆ˜ ๋งŽ์€ ์ž์›์— ์ˆœ์„œ๋ฅผ ์ •ํ•˜๋Š” ์ผ์€ ๋งŽ์€ ๋ถ€๋‹ด์ด ๋˜๊ณ  ํŠน์ • ์ž์›์˜ ํ™œ์šฉ๋ฅ ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค.

๋ฐ๋“œ๋ฝ ์กฐ๊ฑด ํšŒํ”ผ

  • ๋ฐ๋“œ๋ฝ ์ƒํƒœ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์„ ์ •๋„๋กœ ์ž์›์„ ์กฐ๊ธˆ์”ฉ ํ• ๋‹นํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.
  • ์ž์›์„ ํ• ๋‹นํ•œ ํ›„์—๋„ ์‹œ์Šคํ…œ์ด ํ•ญ์ƒ Safe State์— ์žˆ์„ ์ˆ˜ ์žˆ๋„๋ก ํ• ๋‹น์„ ํ—ˆ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
  • Safe State๋Š” ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๊ณ  ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ •์ƒ์ ์„ ์ž์›์„ ํ• ๋‹น๋ฐ›๊ณ  ์ข…๋ฃŒ๋  ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค.
  • Unsafe State๋Š” ์•ˆ์ • ์ƒํƒœ๊ฐ€ ์•„๋‹Œ ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค.
  • Safe Sequence๋Š” ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š์œผ๋ฉด์„œ ํ”„๋กœ์„ธ์Šค๋“ค์— ์ž์›์„ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ๋Š” ์ˆœ์„œ๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
  • ์ด๋Ÿฌํ•œ ํŠน์ง•์„ ์‚ด๋ฆฐ ๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์€ํ–‰์› ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.
  • ์€ํ–‰์› ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ์ž์› ํ• ๋‹น๋Ÿ‰์„ ์‚ฌ์ „์— ํŒŒ์•…ํ•˜๊ณ  ๋ฐ๋“œ๋ฝ์„ ํšŒํ”ผํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ํ•˜์ง€๋งŒ ๋ฏธ๋ฆฌ ์ตœ๋Œ€ ์ž์› ์š”๊ตฌ๋Ÿ‰์„ ์•Œ์•„์•ผํ•˜๊ณ , ํ• ๋‹นํ•  ์ˆ˜ ์žˆ๋Š” ์ž์› ์ˆ˜๊ฐ€ ์ผ์ •ํ•ด์•ผํ•˜๋Š” ๋“ฑ ์‚ฌ์šฉ์— ์žˆ์–ด ์ œ์•ฝ ์กฐ๊ฑด์ด ๋งŽ๋‹ค.

๋ฐ๋“œ๋ฝ ํƒ์ง€ ํ›„ ํšŒ๋ณต

  • ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•œ ํ›„ ํšŒ๋ณตํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.
  • ํƒ์ง€ ๊ธฐ๋ฒ•์€ ์ž์› ํ• ๋‹น ๊ทธ๋ž˜ํ”„๋ฅผ ํ†ตํ•ด ๋ฐ๋“œ๋ฝ์„ ํƒ์ง€ํ•œ๋‹ค. ๋ฐ๋“œ๋ฝ์„ ํƒ์ง€ ๊ธฐ๋ฒ•์„ ํ†ตํ•ด ๋ฐœ๊ฒฌํ–ˆ๋‹ค๋ฉด, ์ˆœํ™˜ ๋Œ€๊ธฐ์—์„œ ๋ฒ—์–ด๋‚˜ ๋ฐ๋“œ๋ฝ์œผ๋กœ๋ถ€ํ„ฐ ํšŒ๋ณต ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค.
  • ํšŒ๋ณต ๊ธฐ๋ฒ•์€ ์„ ์ ์„ ํ†ตํ•œ ํšŒ๋ณตํ•˜๋Š” ๋ฐฉ์‹๊ณผ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•ด ํšŒ๋ณตํ•˜๋Š” ๋ฐฉ์‹์ด ์žˆ๋‹ค.
  • ์„ ์ ์„ ํ†ตํ•œ ํšŒ๋ณต์€ ๋ฐ๋“œ๋ฝ์ด ํ•ด๊ฒฐ๋  ๋•Œ๊นŒ์ง€ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๋กœ๋ถ€ํ„ฐ ์ž์›์„ ๊ฐ•์ œ๋กœ ๋นผ์•—์•„ ํ•œ ํ”„๋กœ์„ธ์Šค์— ํ• ๋‹นํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.
  • ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•ด ํšŒ๋ณตํ•˜๋Š” ๋ฐฉ์‹๋„ 2๊ฐ€์ง€๋กœ ๋‚˜๋‰˜๋Š”๋ฐ, ๋จผ์ € ๋ฐ๋“œ๋ฝ์— ๋น ์ง„ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค๋ฅผ ์ค‘๋‹จํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฐ๋“œ๋ฝ์„ ํ•œ ๋ฒˆ์— ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ”„๋กœ์„ธ์Šค๋“ค์˜ ์ž‘์—… ๋‚ด์šฉ์„ ์žƒ์„ ์ˆ˜ ์žˆ๋‹ค.
  • ๊ทธ ๋‹ค์Œ์€ ๋ฐ๋“œ๋ฝ์ด ์—†์–ด์งˆ ๋•Œ๊นŒ์ง€ ํ•œ ํ”„๋กœ์„ธ์Šค์”ฉ ์ข…๋ฃŒํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž‘์—… ๋‚ด์šฉ์„ ์žƒ๋Š” ๊ฒƒ์„ ์ตœ๋Œ€ํ•œ ์ค„์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ๊ต์ฐฉ์ƒํƒœ๊ฐ€ ์—†์–ด์กŒ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์—์„œ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€