๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • Dev Blog

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ52

[์šด์˜์ฒด์ œ] ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ํŒจ์ŠคํŠธ์บ ํผ์Šค ์šด์˜์ฒด์ œ ๊ฐ•์˜์™€ ์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๋Š” ์šด์˜์ฒด์ œ ๊ต์žฌ์— ๋Œ€ํ•œ TIL์ž…๋‹ˆ๋‹ค. ํ˜„๋Œ€ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ์˜ ๊ฐ€์žฅ ํฐ ํŠน์ง•์€ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ์™€ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์˜ฌ๋ผ๊ฐˆ ๋ฉ”๋ชจ๋ฆฌ์˜ ์œ„์น˜๋ฅผ ์‹ ๊ฒฝ ์“ฐ์ง€ ์•Š๊ณ  ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜๋„๋ก ์ง€์›ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ด๊ฒƒ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ์‹œ์Šคํ…œ์„ ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ์™€ ์ฃผ์†Œ ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ์‹œ์Šคํ…œ์—์„œ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ์–ด๋Š ์œ„์น˜์— ์žˆ๋Š”์ง€ ์ƒ๊ด€์—†์ด 0๋ฒˆ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ์—ฐ์†๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ๊ฐ€์ง„๋‹ค. ๊ฐ€์ƒ ์ฃผ์†Œ๋Š” ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์ด ์•„๋‹Œ ๊ฐ€์ƒ์˜ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ๊ฐ€์ง„๋‹ค. ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ๋Š” ํฌ๊ฒŒ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฐ”๋ผ๋ณด๋Š” ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ๊ณผ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ์ž๊ฐ€ ๋ฐ”๋ผ๋ณด๋Š” ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์œผ๋กœ ๋‚˜๋‰œ๋‹ค. ์ด๋ก ์ ์œผ๋กœ๋Š” ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ๋Š” ๋ฌดํ•œ๋Œ€์ด์ง€๋งŒ, ์‹ค์ œ๋กœ ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ตœ๋Œ€ ํฌ๊ธฐ๋Š” ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์ด ๊ฐ€์ง„ ๋ฌผ๋ฆฌ.. 2023. 5. 9.
[์šด์˜์ฒด์ œ] ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ํŒจ์ŠคํŠธ์บ ํผ์Šค ์šด์˜์ฒด์ œ ๊ฐ•์˜์™€ ์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๋Š” ์šด์˜์ฒด์ œ ๊ต์žฌ์— ๋Œ€ํ•œ TIL์ž…๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์˜ ์ดํ•ด๋ฉ”๋ชจ๋ฆฌ์˜ ๊ตฌ์กฐ๋Š” 1 ๋ฐ”์ดํŠธ ํฌ๊ธฐ๋กœ ๋‚˜๋‰œ๋‹ค. 1๋ฐ”์ดํŠธ๋กœ ๋‚˜๋‰œ ๊ฐ ์˜์—ญ์€ ์ฃผ์†Œ๋กœ ๊ตฌ๋ถ„๋˜๋Š”๋ฐ ๋ณดํ†ต 0๋ฒˆ์ง€๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ๋‹ค. CPU๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ์ž‘์—… ๊ฒฐ๊ณผ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ๐Ÿ’ก ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ CPU๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๊ณผ์ • ๋จผ์ €, CPU๊ฐ€ ์ ‘๊ทผํ•˜๋ ค๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ ๋ ˆ์ง€์Šคํ„ฐ(MAR)์— ๋„ฃ์œผ๋ฉด ํ•ด๋‹น ์ฃผ์†Œ๊ฐ€ ์ฃผ์†Œ ๋ฒ„์Šค๋ฅผ ํ†ตํ•ด ๋ฉ”๋ชจ๋ฆฌ์— ์ „๋‹ฌ๋œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์—์„œ๋Š” ํ•ด๋‹น ์ฃผ์†Œ์˜ ๊ฐ’์„ ๋ฐ์ดํ„ฐ ๋ฒ„์Šค๋ฅผ ํ†ตํ•ด ๋ฉ”๋ชจ๋ฆฌ ๋ฒ„ํผ ๋ ˆ์ง€์Šคํ„ฐ(MBR)๋กœ ๋ณด๋‚ธ๋‹ค. MBR์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋ ˆ์ง€์Šคํ„ฐ๋กœ ์˜ฎ๊ฒจ์ง€๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์ ‘๊ทผ ์ž‘์—…์ด ๋๋‚œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์ž‘์—…๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋Š” ์šด์˜์ฒด์ œ๋ฅผ ๋น„๋กฏํ•ด ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— .. 2023. 5. 2.
[์šด์˜์ฒด์ œ] ๊ต์ฐฉ ์ƒํƒœ(Deadlock) ํŒจ์ŠคํŠธ์บ ํผ์Šค ์šด์˜์ฒด์ œ ๊ฐ•์˜์™€ ์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๋Š” ์šด์˜์ฒด์ œ ๊ต์žฌ์— ๋Œ€ํ•œ TIL์ž…๋‹ˆ๋‹ค. ๊ต์ฐฉ ์ƒํƒœ ๊ต์ฐฉ ์ƒํƒœ๋ž€ 2๊ฐœ ์ด์ƒ์˜ ์ž‘์—…์ด ๋™์‹œ์— ์ด๋ฃจ์–ด์ง€๋Š” ๊ฒฝ์šฐ, ๋‹ค๋ฅธ ์ž‘์—…์ด ๋๋‚˜๊ธฐ๋งŒ ๊ธฐ๋‹ค๋ฆฌ๋ฉฐ ์ž‘์—…์„ ๋” ์ด์ƒ ์ง„ํ–‰ํ•˜์ง€ ๋ชปํ•˜๋Š” ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๊ต์ฐฉ ์ƒํƒœ๋Š” ๊ธฐ์•„ ์ƒํƒœ(Starvation)์™€ ๋น„์Šทํ•ด ๋ณด์ด์ง€๋งŒ ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค. ๊ธฐ์•„ ์ƒํƒœ๋Š” ์ž˜๋ชป๋œ ์ •์ฑ…์œผ๋กœ ํŠน์ • ํ”„๋กœ์„ธ์Šค์˜ ์ž‘์—…์ด ์ง€์—ฐ๋˜๋Š” ๋ฌธ์ œ์ธ ๋ฐ˜๋ฉด, ๊ต์ฐฉ ์ƒํƒœ๋Š” ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž‘์—…์„ ์ง„ํ–‰ํ•˜๋‹ค ๋ณด๋‹ˆ ๋ฐœ์ƒํ•˜๋Š” ์ž์—ฐ์ ์ธ ํ˜„์ƒ์ด๋‹ค. ์ž์› ํ• ๋‹น ๊ทธ๋ž˜ํ”„ ์ž์› ํ• ๋‹น ๊ทธ๋ž˜ํ”„๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์–ด๋–ค ์ž์›์„ ์‚ฌ์šฉ ์ค‘์ด๊ณ  ์–ด๋–ค ์ž์›์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ๋Š”์ง€๋ฅผ ๋ฐฉํ–ฅ์„ฑ์ด ์žˆ๋Š” ๊ทธ๋ž˜ํ”„๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ์ด๋‹ค. ์ž์› ํ• ๋‹น ๊ทธ๋ž˜ํ”„์—์„œ ํ”„๋กœ์„ธ์Šค๋Š” ์›์œผ๋กœ, ์ž์›์€ ์‚ฌ๊ฐํ˜•์œผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค. ์ž์›์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ(ํ• ๋‹น๋œ ๊ฒฝ์šฐ)๋Š” ์ž์›์—.. 2023. 4. 23.
[์šด์˜์ฒด์ œ] ๋™๊ธฐํ™”(Synchronization) ํŒจ์ŠคํŠธ์บ ํผ์Šค ์šด์˜์ฒด์ œ ๊ฐ•์˜์™€ ์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๋Š” ์šด์˜์ฒด์ œ ๊ต์žฌ์— ๋Œ€ํ•œ TIL์ž…๋‹ˆ๋‹ค. ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค๋‚˜ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ ํ™˜๊ฒฝ์—์„œ๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ”„๋กœ์„ธ์Šค๋‚˜ ์Šค๋ ˆ๋“œ๊ฐ€ ํ•œ์ •๋œ ์ž์›์„ ๊ฐ€์ง€๊ณ  ๊ณต๋™์œผ๋กœ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๋•Œ, ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฒฝ์Ÿ ์ƒํƒœ ๊ณต์œ  ์ž์›์€ ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๋‚˜ ์Šค๋ ˆ๋“œ๊ฐ€ ๊ณต๋™์œผ๋กœ ์ด์šฉํ•˜๋Š” ๋ณ€์ˆ˜, ๋ฉ”๋ชจ๋ฆฌ, ํŒŒ์ผ ๋“ฑ์„ ๋งํ•œ๋‹ค. ๊ณต์œ  ์ž์›์€ ๊ณต๋™์œผ๋กœ ์ด์šฉ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ˆ„๊ฐ€ ์–ธ์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๊ฑฐ๋‚˜ ์“ฐ๋Š๋ƒ์— ๋”ฐ๋ผ ๊ทธ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๊ณ  ์ด๋ฅผ ๋ฐ์ดํ„ฐ ๋ถˆ์ผ์น˜(Data Inconsistency)๋ผ๊ณ  ํ•œ๋‹ค. 2๊ฐœ ์ด์ƒ์˜ ํ”„๋กœ์„ธ์Šค๋‚˜ ์Šค๋ ˆ๋“œ๊ฐ€ ๊ณต์œ  ์ž์›์„ ๋ณ‘ํ–‰ํ•ด์„œ ์ฝ๊ฑฐ๋‚˜ ์“ฐ๋Š” ์ƒํ™ฉ์„ ๊ฒฝ์Ÿ ์ƒํƒœ(Race Condition)๋ผ๊ณ  ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ, ๋™๊ธฐํ™”๋Š” ๊ฒฝ์Ÿ ์ƒํƒœ๋ฅผ ๋ง‰๊ณ  ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ(Data Consistency)์„ ์œ .. 2023. 4. 23.