[Concurrency] ๊ธฐ์ ์ํ (Starvation)
Starvation์ ๋์์ฑ ํ๋ก๊ทธ๋จ์์ ๋ฐ์ํ ์ ์๋ ๋์์ฑ ๋ฒ๊ทธ ํจํด ์ค ํ๋๋ค.
ํน์ ํ๋ก์ธ์ค(ํน์ ์ค๋ ๋)๊ฐ ์คํ๋๊ฑฐ๋ ์์์ ์ ๊ทผํ ๊ธฐํ๋ฅผ ์ ์ป์ง ๋ชปํ๋ ํ์์ ๋งํ๋ค.
๋ณดํต Task๋ค์๊ฒ ์ผ์ข
์ ์ฐ์ ์์๊ฐ ๊ตฌํ๋์ด์์ ๊ฒฝ์ฐ์๋ง ๋ฐ์ํ๋ค.
๋์ ์ฐ์ ์์๋ฅผ ๊ฐ์ง Task๊ฐ ๊ณ์ ์คํ๋์ด์ Lock์ ์ ์ ํ๊ณ , ๋ฎ์ ์ฐ์ ์์์ Task๋ค์ด Lock์ ๊ฑธ๋ ค์ ์ ๋๋ก ๋ ๋์์ ํ์ง ๋ชปํ๋ ๊ฒ์ด๋ค.
vs ๋ฐ๋๋ฝ
๋ฐ๋๋ฝ๊ณผ ๋น๊ต๋๊ธฐ๋ ํ๋๋ฐ, ํ๋๊ธฐ๋ง ํ๊ฑฐ๋ ๋ฌดํ ๋๊ธฐ์ํ์ ๋น ์ง๋ ๊ฒ๊ณผ๋ ๋ค๋ฅด๋ค.
๋ฐ๋๋ฝ์ ์์ ๋์ํ์ง ์๋ ๊ฒ์ ๊ฐ๊น์ด๋ฐ, Starvation์ ์์ ๋์ํ์ง ์๋ ๊ฒ์ ์๋๊ณ "๊ณตํํ๊ฒ" ์คํ๋์ง ๋ชปํ๋ ๋ฌธ์ ๋ฅผ ๋งํ๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฐ๋๋ฝ๊ณผ๋ ๋ค๋ฅด๊ฒ ์ผ๋ฐ์ ์ธ ์์ฉํ๋ก๊ทธ๋จ ์์ค์์ ํํ๊ฒ ๋ฐ์ํ์ง๋ ์๋๋ค. ์ ์ด์ Task์ ์ฐ์ ์์๋ฅผ ํ ๋นํด์ ๊ฑฐ์ฐฝํ๊ฒ ์ค์ผ์ค๋ง์ ํ๋๊ฒ๋ถํฐ ๋จ์ํ ์ฌ์ฉ์ฌ๋ก๋ ์๋๊ธฐ ๋๋ฌธ์ด๋ค.
์ฐธ์กฐ
https://www.geeksforgeeks.org/operating-systems/deadlock-starvation-and-livelock/