[์šด์˜์ฒด์ œ] 5๊ฐ• - ๋ณ‘ํ–‰ ํ”„๋กœ์„ธ์Šค(2)

2026. 3. 18. 16:59ยท๐ŸŽ“๋ฐฉ์†กํ†ต์‹ ๋Œ€ํ•™๊ต/โš™๏ธ์šด์˜์ฒด์ œ

โœ… 1. ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ๋ฌธ์ œ

(1) ๋ฌธ์ œ ์ •์˜

  • ํ˜‘๋ ฅ ํ”„๋กœ์„ธ์Šค: ์ƒ์‚ฐ์ž ํ”„๋กœ์„ธ์Šค์™€ ์†Œ๋น„์ž ํ”„๋กœ์„ธ์Šค๋ฅผ ์˜๋ฏธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‚ฌ์ด์— ๋ฒ„ํผ๋ฅผ ๋‘๊ณ  ์žˆ์Œ.
  • ์ƒ์‚ฐ์ž: ๋ฒ„ํผ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ๋Š” ํ”„๋กœ์„ธ์Šค
  • ์†Œ๋น„์ž: ๋ฒ„ํผ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊บผ๋‚ด๋Š” ํ”„๋กœ์„ธ์Šค
  • TIP: ๊ฑฐ์˜ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค ํ†ต์‹ ์ด ํ•ด๋‹น ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ๊ตฌ์กฐ๋ฅผ ๋„๊ณ  ์žˆ์œผ๋ฉฐ, ์ค‘๊ฐ„์— ๋ฒ„ํผ๋Š” ๊ณต์œ  ๋ฐ์ดํ„ฐ์˜ ์ผ๋ถ€๋กœ์จ, ๊ณต์œ  ๋ฐ์ดํ„ฐ๋Š” ๋ฒ„ํผ, ์ „์—ญ ๋ณ€์ˆ˜, ํŒŒ์ผ ๋“ฑ ํ”„๋กœ์„ธ์Šค๋“ค์ด ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“  ๊ฒƒ์„ ์˜๋ฏธํ•˜๋Š” ๊ฐœ๋…์ž„.
  • TIP: ๋˜ํ•œ, ํ•ด๋‹น ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹ (IPC) ๋Š” ๋ฒ„ํผ๋ผ๋Š” ํ˜•ํƒœ์˜ ๊ณต์œ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ฑฐ์ณ์„œ ์ผ์–ด๋‚˜๊ธฐ ๋•Œ๋ฌธ์— ์•Œ์•„์•ผํ•จ.

(2) ๋ฌธ์ œ ํ•ด๊ฒฐ ์กฐ๊ฑด

  • ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ˜๋“œ์‹œ ์ง€์ผœ์•ผ ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ํ•ต์‹ฌ ์กฐ๊ฑด์„ ์˜๋ฏธํ•œ๋‹ค.
  • ๋ฒ„ํผ์— ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋™์‹œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Œ: ๋ฒ„ํผ ์ž์ฒด๋Š” ํ”„๋กœ์„ธ์Šค๋“ค์ด ๊ณต์œ ํ•˜๋Š” ๊ณต์œ  ๋ฐ์ดํ„ฐ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋™์‹œ์— ์ ‘๊ทผ์„ ํ•˜๊ฒŒ ๋˜๋ฉด ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ์ด ๋ฌด๋„ˆ์งˆ ์ˆ˜ ์žˆ์Œ.
  • ์ƒํ˜ธ๋ฐฐ์ œ ํ•„์š”: ์ฆ‰, ์ƒํ˜ธ๋ฐฐ์ œ๋ฅผ ํ†ตํ•ด ํ”„๋กœ์„ธ์Šค(ํ˜‘๋ ฅ ํ”„๋กœ์„ธ์Šค)๊ฐ€ ๋™์‹œ์— ์ž„๊ณ„์˜์—ญ์„ ์ˆ˜ํ–‰ํ•˜์ง€ ๋ชปํ•˜๋„๋ก ๋ง‰์•„์ค˜์•ผํ•จ.
  • ๋ฒ„ํผ์˜ ํฌ๊ธฐ๊ฐ€ ์œ ํ•œ (์œ ํ•œ ๋ฒ„ํผ ๋ฌธ์ œ): ๋ฒ„ํผ๊ฐ€ ๊ฐ€๋“ ์ฐฌ ๊ฒฝ์šฐ์—๋Š” ๋” ์ด์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์„ ๊ณต๊ฐ„์ด ์—†์œผ๋ฏ€๋กœ, ์ƒ์‚ฐ์ž๋Š” ๋Œ€๊ธฐ๋ฅผ ํ•ด์•ผํ•˜๊ณ  ๋ฐ˜๋Œ€๋กœ ๋ฒ„ํผ๊ฐ€ ๋นˆ ๊ฒฝ์šฐ์—๋Š” ๋” ์ด์ƒ ๊ฐ€์ ธ๊ฐˆ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์†Œ๋น„์ž๋Š” ๋Œ€๊ธฐ๋ฅผ ํ•ด์•ผํ•จ.
  • ๋™๊ธฐํ™” ํ•„์š”: ํ•ด๋‹น ๋ฒ„ํผ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ผ๊ด€๋œ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๋„๋ก ๋งž์ถ”๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฒ„ํผ์˜ ์ž”์—ฌ๋Ÿ‰, ์ ์œ  ์—ฌ๋ถ€ ๊ฐ™์€ ์ƒํƒœ ์ •๋ณด๊ฐ€ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค์—๊ฒŒ ์ผ๊ด€๋˜๊ฒŒ ๋ณด์ด๋„๋ก ๋งŒ๋“ค์–ด์•ผํ•จ.
  • TIP: ๋™๊ธฐํ™”๋ž€? ๋‘ ๊ฐœ ์ด์ƒ ๊ฐœ์ฒด๊ฐ€ ๋™์ผํ•œ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๋„๋ก ๋งž์ถ”๋Š” ์ž‘์—…์„ ์˜๋ฏธํ•จ. ( ์ฒ˜๋ฆฌ ์ˆœ์„œ๋ฅผ ๋งž์ถค์œผ๋กœ์จ ํ•ด๊ฒฐ )

(3) ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ๋ฌธ์ œ - ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

  • ์ƒํ˜ธ๋ฐฐ์ œ ํ•ด๊ฒฐ: ์„ธ๋งˆํฌ์–ด๋ฅผ ํ†ตํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ฉฐ, ์„ธ๋ถ€์ ์œผ๋กœ๋Š” ์ƒ์‚ฐ์ž๋‚˜ ์†Œ๋น„์ž๋Š” ์ž„๊ณ„์˜์—ญ์— ์ ‘๊ทผ ํ•  ๋•Œ mutex ๊ฐ’์„ ํ™•์ธ ํ•œ ๋’ค, mutex = 1 ์ธ ๊ฒฝ์šฐ ์ž„๊ณ„์˜์—ญ์—์„œ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ณ  ๋งŒ์•ฝ mutex = 0 ์€ ์ด๋ฏธ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž„๊ณ„์˜์—ญ์—์„œ ์ฒ˜๋ฆฌ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ, ๋Œ€๊ธฐ ํ์— ๋“ค์–ด๊ฐ€๊ฒŒ ๋จ.

  • ๋ฒ„ํผ๊ฐ€ ๊ฐ€๋“ ์ฐฌ ๊ฒฝ์šฐ ๋™๊ธฐํ™”: ๊ธฐ์ดˆ์ ์ธ ์„ธ๋งˆํฌ์–ด์˜ ๊ฐœ๋…์— empty ๋ผ๋Š” ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋ฒ„ํผ์˜ ์ƒํƒœ๊ฐ€ ๋น„์–ด์žˆ๋Š”๊ฐ€์— ๋”ฐ๋ฅธ ์ƒํƒœ๋ฅผ ์ •์˜ํ•˜์—ฌ ๋ฒ„ํผ์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ empty ์ƒํƒœ๊ฐ’์— ๋”ฐ๋ผ ์ œ์–ด ํ•  ์ˆ˜ ์žˆ์Œ.
  • empty: ๋ฒ„ํผ์ค‘์— ๋น„์–ด์žˆ๋Š” ์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
  • empty ์ดˆ๊ธฐ๊ฐ’: ๋ฒ„ํผ์˜ ํฌ๊ธฐ์ธ N ์œผ๋กœ ์ดˆ๊ธฐํ™”
  • ๋น„์–ด์žˆ๋Š” ์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ํ†ตํ•ด์„œ ์ ‘๊ทผ์„ ์ œ์–ดํ•˜๋ฉฐ, 0์ธ ๊ฒฝ์šฐ ๋ฒ„ํผ๊ฐ€ ๊ฝ‰ ์ฐธ์„ ์˜๋ฏธํ•˜๊ณ  0 ์ด์ƒ์˜ ์ •์ˆ˜์ธ ๊ฒฝ์šฐ์—๋Š” ๋ฒ„ํผ๊ฐ€ ๊ทธ๋งŒํผ ๋น„์–ด์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜๋ฏ€๋กœ, ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฒ„ํผ์˜ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์Œ.
  • ๋˜ํ•œ, ์ด ์—ฐ์‚ฐ์€ ๊ธฐ๋ณธ ๋„๊ตฌ(์„ธ๋งˆํฌ์–ด)๋ฅผ ์กฐ๋ฆฝํ•ด์„œ ๋งŒ๋“  ์ƒ์œ„ ๋ ˆ๋ฒจ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜(์œ ํ•œ ๋ฒ„ํผ ๋ฌธ์ œ ํ•ด๊ฒฐ) ์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Œ.
  • ํ•ต์‹ฌ: ๊ธฐ์กด์˜ P, V ์—ฐ์‚ฐ์— full, empty ์ธ์ง€ ํŒŒ์•…์„ ํ•˜๋Š” ์—ฐ์‚ฐ์„ ํ†ตํ•ด์„œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋Œ€๊ธฐ ์‹œํ‚ค๋Š” ๊ฒƒ์ž„.

  • ๋ฒ„ํผ๊ฐ€ ๋นˆ ๊ฒฝ์šฐ ๋™๊ธฐํ™”: ๊ธฐ์ดˆ์ ์ธ ์„ธ๋งˆํฌ์–ด์˜ ๊ฐœ๋…์— full ๋ผ๋Š” ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋ฒ„ํผ์˜ ์ƒํƒœ๊ฐ€ ์ฐจ์žˆ๋Š”๊ฐ€์— ๋”ฐ๋ฅธ ์ƒํƒœ๋ฅผ ์ •์˜ํ•˜์—ฌ ๋ฒ„ํผ์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ full ์ƒํƒœ๊ฐ’์— ๋”ฐ๋ผ ์ œ์–ด ํ•  ์ˆ˜ ์žˆ์Œ.
  • full: ๋ฒ„ํผ์ค‘์— ์ฑ„์›Œ์ ธ ์žˆ๋Š” ์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

[ ์ •๋ฆฌ ]

  • ์†Œ๋น„์ž: full ์„ธ๋งˆํฌ์–ด๋ฅผ ๋ณด๊ณ  0์ธ ๊ฒฝ์šฐ ์ฑ„์›Œ์ ธ ์žˆ๋Š” ์นธ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์ด๋ฏ€๋กœ, ์†Œ๋น„์ž๋Š” ๋” ์ด์ƒ ๊บผ๋‚ผ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๋‹ค๊ณ  ํŒ๋‹จ์„ ํ•ด ๋Œ€๊ธฐ ์ƒํƒœ๋กœ ๋“ค์–ด๊ฐ€๊ฒŒ ๋œ๋‹ค. ๋˜ํ•œ, 0์ด ์•„๋‹Œ ๊ฒฝ์šฐ ํ•ด๋‹น ๋ฒ„ํผ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊บผ๋‚ด๋ฉฐ empty ์˜ ๊ฐ’์„ ํ•˜๋‚˜ ๋Š˜๋ ค์ฃผ๊ฒŒ ๋จ.
  • ์ƒ์‚ฐ์ž: empty ์„ธ๋งˆํฌ์–ด๋ฅผ ๋ณด๊ณ  ๋น„์–ด์žˆ๋Š” ์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ํŒŒ์•… ํ•œ ๋’ค 0์ผ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ฝ‰์ฐผ๋Š” ๊ฒƒ์„ ์ธ์ง€๊ฒŒ ๋˜๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒ„ํผ์— ๋ชป๋„ฃ๊ณ  ๋Œ€๊ธฐํ•˜๋Š” ์ƒํƒœ๋กœ ์ ‘์–ด๋“ค๊ฒŒ ๋œ๋‹ค. ์ดํ›„, empty ์˜ ๊ฐ’์ด 1 ์ด์ƒ์ผ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒ„ํผ์— ๋„ฃ์œผ๋ฉด์„œ empty ์˜ ๊ฐ’์„ ์ค„์—ฌ์ฃผ๊ฒŒ ๋˜๋Š” ์›๋ฆฌ์ด๋‹ค.

  • ์ƒํ˜ธ๋ฐฐ์ œ ํ•ด๊ฒฐ: mutex ๋ฅผ ํ™œ์šฉ
  • ๋™๊ธฐํ™” ํ•ด๊ฒฐ: empty, full ํ™œ์šฉ

โœ… 2. ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ

(1) ๋ฌธ์ œ ์ •์˜

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

(2) ๋ฌธ์ œ ํ•ด๊ฒฐ ์กฐ๊ฑด

  • ์กฐ๊ฑด1: ํ•˜๋‚˜์˜ ๊ธฐ๋ก๊ธฐ๊ฐ€ ๊ณต์œ ์ž์›์— ๋ฐ์ดํ„ฐ๋ฅผ ์“ฐ๋Š” ์ค‘์—๋Š” ๋‹ค๋ฅธ ๊ธฐ๋ก๊ธฐ๋‚˜ ํŒ๋…๊ธฐ๋Š” ๊ณต์œ ์ž์›์— ์ ‘๊ทผ ํ•  ์ˆ˜ ์—†์Œ.
  • ์ฆ‰, ๊ณต์œ ์ž์›์— ๋ฐ์ดํ„ฐ๋ฅผ ์“ฐ๋Š” ๋™์•ˆ์—๋Š” ๋ˆ„๊ตฌ๋„ ์ ‘๊ทผ ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์˜๋ฏธ๊ฐ€ ๋œ๋‹ค.
  • ์กฐ๊ฑด2: ๋˜ํ•œ, ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๋Š” ๋™์•ˆ์—๋Š” ๋ˆ„๊ตฌ๋„ ๋ฐ์ดํ„ฐ๋ฅผ ์“ธ ์ˆ˜ ์—†์Œ.
  • ์กฐ๊ฑด3: ์—ฌ๋Ÿฌ ํŒ๋…๊ธฐ๋Š” ๋™์‹œ์— ๊ณต์œ ์ž์›์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์„ ์ˆ˜ ์žˆ์Œ.
  • ์ฆ‰, ํŒ๋…๊ธฐ๊ฐ€ ์ฝ๋Š” ์ค‘ ์ƒˆ๋กœ์šด ํŒ๋…๊ธฐ ์ฝ๊ธฐ ์‹œ๋„๋Š” ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํŒ๋…๊ธฐ๊ฐ€ ์ฝ๋Š” ์ค‘์—๋Š” ๊ธฐ๋ก๊ธฐ๋Š” ๋Œ€๊ธฐ์ƒํƒœ์—ฌ์•ผ ํ•จ.
  • ** ๋˜ํ•œ, ๊ธฐ๋ก๊ธฐ๊ฐ€ 1๋ฒˆ์— ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž… ์ค‘์— ํŒ๋…๊ธฐ๊ฐ€ 2๋ฒˆ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๊ณ  ์‹ถ๋‹ค๊ณ  ํ–ˆ์„ ๊ฒฝ์šฐ ๊ธฐ๋ก๊ธฐ์™€ ํŒ๋…๊ธฐ์˜ ์ž‘์—…์ด ๊ฒน์น˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ฝ๊ฒŒ ํ•  ์ˆ˜๋„ ์žˆ์Œ. ( ๊ฐ€๋Šฅํ•˜๊ฑฐ๋‚˜ ๋ถˆ๊ฐ€๋Šฅํ•จ ) -> ์ •์ฑ…์— ๋”ฐ๋ผ์„œ ๋‹ฌ๋ผ ์งˆ ์ˆ˜ ์žˆ์Œ. **

(3) ์ œ1 ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ

  • ์ œ1 ํŒ๋…๊ธฐ ๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ: ํŒ๋…๊ธฐ๊ฐ€ ๊ณต์œ ์ž์›์— ์ ‘๊ทผ ์ค‘์ด๋ผ๋ฉด ๊ธฐ๋ก๊ธฐ๋ณด๋‹ค ํŒ๋…๊ธฐ์— ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ฃผ๋Š” ๋ฐฉ์‹์ž„.
  • ์ฆ‰, ๋Œ€๊ธฐ ํ์— ๊ธฐ๋ก๊ธฐ๊ฐ€ ๋“ค์–ด๊ฐ€์žˆ๋‹ค๊ณ  ํ•ด๋„ ํŒ๋…๊ธฐ๊ฐ€ ๊ณ„์†ํ•ด์„œ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ ธ๊ฐ€๋Š” ์›๋ฆฌ์ž„.
  • ๋ฌธ์ œ์ : ๊ธฐ๋ก๊ธฐ๊ฐ€ ๊ธฐ์•„์ƒํƒœ๊ฐ€ ์œ ๋ฐœ์ด ๋  ์ˆ˜ ์žˆ์Œ. ์ฆ‰, ๊ธฐ๋ก๊ธฐ๊ฐ€ ๊ณ„์†ํ•ด์„œ ๋Œ€๊ธฐ์ƒํƒœ๋กœ ๋Œ€๊ธฐ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ.
  • ์ •๋ฆฌ: ํŒ๋…๊ธฐ(์ฝ๊ธฐ) ๊ฐ€ ๊ณต์œ ์ž์›์— ์ ‘๊ทผ์— ๋Œ€ํ•œ ์šฐ์„ ์ˆœ์œ„๋ฅผ ํ•ญ์ƒ ์ฃผ๋Š” ๋ฐฉ์‹์ด๋ผ, ๊ธฐ๋ก๊ธฐ(์“ฐ๊ธฐ) ํ‰์ƒ ๋ชปํ•  ์ˆ˜ ์žˆ์Œ.

(4) ์ œ1 ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ - ์„ธ๋งˆํฌ์–ด๋ฅผ ์ด์šฉํ•œ ํ•ด๊ฒฐ

  • ๊ธฐ๋ก๊ธฐ ์ž„๊ณ„์˜์—ญ: ๊ธฐ๋ก๊ธฐ(์“ฐ๊ธฐ) ์ž‘์—… ์ž์ฒด๋Š” ์ž„๊ณ„ ์˜์—ญ์œผ๋กœ ๊ฐ„์ฃผ ํ•  ์ˆ˜ ์žˆ์Œ.
  • ํŒ๋…๊ธฐ ์ž„๊ณ„์˜์—ญ: ํŒ๋…๊ธฐ(์ฝ๊ธฐ) ์ž‘์—… ์ž์ฒด๋Š” ์ž„๊ณ„ ์˜์—ญ์œผ๋กœ ๊ฐ„์ฃผ ํ•  ์ˆ˜ ์žˆ์Œ.
  • ์ƒํ˜ธ๋ฐฐ์ œ: ์„ธ๋งˆํฌ์–ด(wrt) ์ดˆ๊นƒ๊ฐ’ 1๋กœ ๋‘๊ณ  ์ƒํ˜ธ๋ฐฐ์ œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์žˆ์Œ.
  • ** ๋ฌธ์ œ๋Š” ํŒ๋…๊ธฐ๋Š” ์ฝ๊ธฐ ์ž‘์—…์ด๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ํŒ๋…๊ธฐ๋„ ์ฝ๊ธฐ ์ž‘์—…์ด ๋™์‹œ์— ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋“ค์–ด์˜ฌ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค˜์•ผํ•จ. **

  • ์—ฌ๋Ÿฌ ํŒ๋…๊ธฐ์˜ ๊ณต์œ ์ž์› ์ ‘๊ทผ: rcount ์ผ๋ฐ˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ ํ•œ ๋’ค, rcount ๊ฐ€ 1์ธ ๊ฒฝ์šฐ์—๋Š” ์ œ์ผ ์ฒซ ๋ฒˆ์งธ ํŒ๋…๊ธฐ๊ฐ€ ๋“ค์–ด์˜จ ๊ฒฝ์šฐ๋กœ ๋ณผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋จผ์ € P(wrt) ๋ฅผ ํ†ตํ•ด์„œ ๊ธฐ๋ก๊ธฐ๊ฐ€ ํ˜„์žฌ ๊ณต์œ  ์ž์›์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€๋ฅผ ํŒ๋‹จํ•˜๊ฒŒ ๋จ.
  • ์ดํ›„, ๋งŒ์•ฝ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€ ์•Š๋‹ค๋ฉด ๊ณต์œ ์ž์›์— ๋Œ€ํ•œ ์ฝ๊ธฐ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.
  • ๋˜ํ•œ, ์ด๋•Œ ๋‹ค๋ฅธ ํŒ๋…๊ธฐ๊ฐ€ ๋“ค์–ด์˜ค๊ฒŒ ๋˜๋ฉด rcount ๊ฐ€ 1์ด ์ฆ๊ฐ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์œ„์™€ ๊ฐ™์€ if (rcount == 1) ์— ๋Œ€ํ•ด์„œ false ์ด๋ฏ€๋กœ, ๊ทธ๋ƒฅ ํ†ต๊ณผ๋ฅผ ํ•˜๋ฉฐ ํŒ๋…๊ธฐ๋ฅผ ์ฝ๊ฒŒ ๋˜๋Š” ๊ณผ์ •์ž„.
  • ๋งˆ์ง€๋ง‰์œผ๋กœ ๊ณต์œ  ์ž์›์„ ๋‹ค์ฝ๊ฒŒ ๋˜๋ฉด rcount ๋ฅผ -1 ๊ฐ์†Œํ•จ์œผ๋กœ์จ ํŠน์ • ํŒ๋…๊ธฐ์˜ ์ฝ๊ธฐ ์ž‘์—…์ด ๋๋‚จ์„ ๋ช…์‹œํ•˜๊ฒŒ ๋จ.
  • ๋ฌธ์ œ์ : ํŒ๋…๊ธฐ(์ฝ๊ธฐ) ๊ฐ€ ๊ณต์œ ์ž์›์— ์ ‘๊ทผ์— ๋Œ€ํ•œ ์šฐ์„ ์ˆœ์œ„๋ฅผ ํ•ญ์ƒ ์ฃผ๋Š” ๋ฐฉ์‹์ด๋ผ, ๊ธฐ๋ก๊ธฐ(์“ฐ๊ธฐ) ํ‰์ƒ ๋ชปํ•  ์ˆ˜ ์žˆ์Œ.

  • ๊ฒฐ๋ก : ์ด์™€ ๊ฐ™์ด 2๊ฐœ์˜ ์„ธ๋งˆํฌ์–ด์™€ ์ผ๋ฐ˜๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด์„œ ์ œ1 ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ์Œ.
  • ์ •๋ฆฌ: P(wrt) ์„ธ๋งˆํฌ์–ด๋ฅผ ํ™œ์šฉํ•ด์„œ, ๊ธฐ๋ก๊ธฐ๋‚˜ ํŒ๋…๊ธฐ๊ฐ€ ์ž„๊ณ„์˜์—ญ์„ ์ˆ˜ํ–‰์ค‘์ž„์„ ๊ฒ€์‚ฌํ•˜๋ฉฐ, ์ด๋•Œ ํŒ๋…๊ธฐ์˜ ์ฝ”๋“œ์—๋Š” rcount ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด์„œ ์ œ์ผ ์ฒ˜์Œ ํŒ๋…๊ธฐ๊ฐ€ ์ž„๊ณ„์˜์—ญ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ๋“ค์–ด์˜จ๋‹ค๋ฉด rcount ์˜ ๊ฐ’์€ 1์ด๋ฏ€๋กœ, P(wrt) ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.
  • ์ด๋•Œ, P(wrt) ๋Š” ๊ธฐ๋ก๊ธฐ๊ฐ€ ๊ธฐ๋ก์„ ํ•˜๋Š” ์ค‘์ธ๊ฐ€๋ฅผ ๋ณด๊ณ , ๋งŒ์•ฝ ์•ˆํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์ž„๊ณ„์˜์—ญ์„ ํŒ๋…๊ธฐ๊ฐ€ ์ˆ˜ํ–‰์„ ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, ์ด ๊ณผ์ •์—์„œ ์ƒˆ๋กœ์šด ๊ธฐ๋ก๊ธฐ์™€ ํŒ๋…๊ธฐ๊ฐ€ ๋“ค์–ด์˜จ๋‹ค๊ณ  ํ•˜๋ฉด ๊ธฐ๋ก๊ธฐ๋Š” P(wrt) ์— ์˜ํ•ด์„œ ํŒ๋…๊ธฐ๊ฐ€ ์ž„๊ณ„์˜์—ญ์„ ์ˆ˜ํ–‰ ์ค‘์ž„์„ ํŒ๋‹จํ•ด ๋Œ€๊ธฐ ์ƒํƒœ๋กœ ๋“ค์–ด๊ฐ€์ง€๋งŒ, ์ƒˆ๋กœ์šด ํŒ๋…๊ธฐ๋Š” rcount = rcount + 1; ์„ ํ†ตํ•ด ์ •์ˆ˜๊ฐ’ 2๊ฐ€ ๋˜๋ฏ€๋กœ, P(wrt) ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ์ž„๊ณ„์˜์—ญ์—์„œ ๊ณต์œ ์ž์›์„ ์ฝ์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Š” ์—ฌ๋Ÿฌ ํŒ๋…๊ธฐ๊ฐ€ ํ•˜๋‚˜์˜ ์ž„๊ณ„์˜์—ญ์—์„œ ์ฝ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ฃผ๋Š” ์›๋ฆฌ์ด๋‹ค.
  • ** ์ด๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ๋ก๊ธฐ๋Š” ๋ฌดํ•œ์œผ๋กœ ๋Œ€๊ธฐ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒ ํ•  ์ˆ˜ ์žˆ์Œ. **

(5) ์ œ2 ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ

  • ์ œ2 ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ: ํŒ๋…๊ธฐ๊ฐ€ ๊ณต์œ ์ž์›์— ์ ‘๊ทผ ์ค‘์ด๋ผ๋ฉด ํŒ๋…๊ธฐ๋ณด๋‹ค ๊ธฐ๋ก๊ธฐ์— ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ฃผ๋Š” ๋ฐฉ์‹์ž„.
  • ** ์ฆ‰, ๋Œ€๊ธฐ ์ค‘์ธ ๊ธฐ๋ก๊ธฐ๊ฐ€ ์žˆ๋‹ค๋ฉด ์ƒˆ๋กœ์šด ํŒ๋…๊ธฐ๋Š” ๊ณต์œ ์ž์›์— ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์›๋ฆฌ์ž„. **
  • ๋ฌธ์ œ์ : ํŒ๋…๊ธฐ๊ฐ€ ๊ธฐ์•„์ƒํƒœ(์˜ค๋žœ ๋Œ€๊ธฐ์‹œ๊ฐ„)๊ฐ€ ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋•Œ๋ฌธ์— ํŒ๋…๊ธฐ์˜ ๋ณ‘ํ–‰์„ฑ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Œ.

(6) ์ œ2 ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ - ์„ธ๋งˆํฌ์–ด๋ฅผ ์ด์šฉํ•œ ํ•ด๊ฒฐ

  • P(rd) ์„ธ๋งˆํฌ์–ด: ๊ธฐ๋ก๊ธฐ์—๊ฒŒ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ฃผ๊ธฐ ์œ„ํ•ด์„œ ๊ธฐ๋ก๊ธฐ๊ฐ€ ๋จผ์ € ๋“ค์–ด์™€ ์žˆ๋Š”์ง€ ์•„๋‹Œ์ง€ ์ฒดํฌ๋ฅผ ํ•ด์ฃผ๋Š” ์šฉ๋„์ž„.
  • wcount: ์ฒ˜์Œ ๊ธฐ๋ก๊ธฐ๊ฐ€ ๋“ค์–ด์˜ฌ ๋‹น์‹œ wcount ์˜ ๊ฐ’์ด 1๋กœ ๋˜์–ด, P(rd) ๋ฅผ ํ†ตํ•ด ์ฒ˜์Œ ๋“ค์–ด์˜จ ๊ธฐ๋ก๊ธฐ๊ฐ€ ์ž„๊ณ„์˜์—ญ์„ ๋จผ์ € ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค. ์ดํ›„, ๋‹ค์Œ ๊ธฐ๋ก๊ธฐ๊ฐ€ ๋“ค์–ด์˜ค๊ฒŒ ๋œ๋‹ค๋ฉด wcount ์˜ ๊ฐ’์ด +1 ๋˜์–ด ํ•ญ์ƒ 1์ด ์•„๋‹Œ ๋” ๋†’์€ ์ˆ˜๋กœ์จ P(rd) ๋ฅผ skip ํ•œ ์ƒํƒœ๋กœ P(wrt) ๋ฅผ ํ†ตํ•ด ํŒ๋…๊ธฐ๊ฐ€ ์ž„๊ณ„์˜์—ญ์„ ์ˆ˜ํ–‰์ค‘์ธ๊ฐ€๋ฅผ ํŒŒ์•… ํ•œ ๋’ค ๊ณต์œ ์ž์›์„ ์“ฐ๋Š” ์›๋ฆฌ์ด๋‹ค.
  • ์ •๋ฆฌ: ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ๋Š” ํŠน์ • ์ƒํ™ฉ์—์„œ ํŒ๋…๊ธฐ์— ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ฃผ๋Š” ํ˜•ํƒœ์˜ ๋ฌธ์ œ์™€ ๊ธฐ๋ก๊ธฐ์— ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ฃผ๋Š” ํ˜•ํƒœ์˜ ๋ฌธ์ œ๋กœ์จ ์ •์˜ ํ•  ์ˆ˜ ์žˆ์Œ.

โœ… 3. ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹ 

(1) ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹  (IPC)

  • IPC: ๋ณ‘ํ–‰ ํ”„๋กœ์„ธ์Šค(ํ˜‘๋ ฅ ํ”„๋กœ์„ธ์Šค)๊ฐ€ ์„œ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜๋ฏธํ•œ๋‹ค.
  • ๋Œ€ํ‘œ์ ์œผ๋กœ ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ๋ฐฉ๋ฒ•, ๋ฉ”์‹œ์ง€ ์ „๋‹ฌ๋ฐฉ๋ฒ• ๋“ฑ์ด ์žˆ์Œ.
  • ** ๋‘ ๋ฐฉ๋ฒ•์€ ๋…๋ฆฝ์ ์ด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋‚˜์˜ ์šด์˜์ฒด์ œ ๋‚ด์—์„œ ๋‘ ๋ฐฉ๋ฒ•์„ ํ•จ๊ป˜ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•จ. **

(2) ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ๋ฐฉ๋ฒ•

  • ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ๋ฐฉ๋ฒ•: ํ˜‘๋ ฅ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ†ตํ•ด์„œ ๋™์ผํ•œ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜๋ฏธํ•œ๋‹ค.
  • ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ์˜ˆ: ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ๋ฌธ์ œ์˜ ์œ ํ•œ ๋ฒ„ํผ, ํŒ๋…๊ธฐ-๊ธฐ๋ก๊ธฐ ๋ฌธ์ œ์˜ ๊ณต์œ ์ž์›์„ ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ๋ฐฉ์‹์œผ๋กœ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅ.
  • ๋Œ€๋Ÿ‰ ๋ฐ์ดํ„ฐ ๊ตํ™˜: ์ปค๋„์„ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  ๋ฐ์ดํ„ฐ์— ์ง์ ‘ ์ ‘๊ทผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋งค์šฐ ๋น ๋ฅธ ๊ฒƒ์ด๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•ด, ์ผ๋‹จ ๋‘ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํŠน์ • ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์„ ๊ณต์œ ํ•˜๋„๋ก ์„ค์ •(Mapping) ํ•˜๊ณ  ๋‚˜๋ฉด, ๊ทธ ์ดํ›„์—๋Š” OS ์˜ ๊ฐœ์ž…์ด ์ „ํ˜€ ์—†๊ณ  ๊ทธ๋ƒฅ ๋ฉ”๋ชจ๋ฆฌ์— ๊ธ€์„ ์“ฐ๋“ฏ ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์œผ๋ฉด ์ƒ๋Œ€๋ฐฉ์ด ์ฆ‰์‹œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ์›๋ฆฌ์ž„. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์†๋„๊ฐ€ ๋นจ๋ผ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ ๊ตํ™˜์— ์šฉ์ดํ•จ.
  • ํ†ต์‹ ์ƒ ๋ฐœ์ƒ ๊ฐ€๋Šฅ ๋ฌธ์ œ ํ•ด๊ฒฐ: ์šด์˜์ฒด์ œ์˜ ๊ฐœ์ž…์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ์— ๋Œ€ํ•œ ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ํ†ต์‹ ์ƒ ๋ฐœ์ƒ ๊ฐ€๋Šฅํ•œ ๋ฌธ์ œ๋ฅผ ๊ณ ๋ คํ•ด์„œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Œ.
  • ** ์ฆ‰, ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์„ธ๋งˆํฌ์–ด(Semaphore)๋‚˜ ๋ฎคํ…์Šค(Mutex)๋ฅผ ์‚ฌ์šฉํ•ด ๋™๊ธฐํ™”, ์ƒํ˜ธ๋ฐฐ์ œ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์ฝ”๋“œ๋ฅผ ์งœ์•ผ ํ•จ. **

(3) ๋ฉ”์‹œ์ง€ ์ „๋‹ฌ๋ฐฉ๋ฒ•

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

(4) ๋ฉ”์‹œ์ง€ ์ „๋‹ฌ๋ฐฉ๋ฒ• - ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ

  • ํ†ต์‹  ๋งํฌ: ํ”„๋กœ์„ธ์Šค ์‚ฌ์ด์— ๋ฉ”์‹œ์ง€๊ฐ€ ์˜ค๊ฐ€๋Š” "๋…ผ๋ฆฌ์ ์ธ ์—ฐ๊ฒฐ ํ†ต๋กœ" ๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
  • ํ†ต์‹  ๋งํฌ์˜ ๊ตฌํ˜„ ํ˜•ํƒœ: ์—ฐ๊ฒฐ ๋Œ€์ƒ, ๋‘ ํ”„๋กœ์„ธ์Šค ์‚ฌ์ด ๋งํฌ ๊ฐœ์ˆ˜, ๋ฐฉํ–ฅ์„ฑ, ์šฉ๋Ÿ‰ ๋“ฑ์„ ์ •์˜ํ•ด ํ†ต์‹  ๋งํฌ๋ฅผ ์ •์˜ ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ํ†ต์‹  ๋งํฌ์˜ ์šฉ๋Ÿ‰(๋ฌดํ•œ): ์ค‘๊ฐ„์˜ ํ, ๋ฒ„ํผ ํฌ๊ธฐ๊ฐ€ ๋ฌดํ•œํ•œ ๊ฒฝ์šฐ์ด๋ฉฐ, ๋Œ€๊ธฐ์—†์ด ๋ฐ”๋กœ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Œ.
  • ํ†ต์‹  ๋งํฌ์˜ ์šฉ๋Ÿ‰(์œ ํ•œ): ์ค‘๊ฐ„์˜ ํ, ๋ฒ„ํผ ํฌ๊ธฐ๊ฐ€ ์œ ํ•œํ•œ ๊ฒฝ์šฐ์ด๋ฉฐ, ํ๊ฐ€ ๊ฐ€๋“ ์ฐจ๋ฉด ๋Œ€๊ธฐ๋ฅผ ํ•ด์•ผํ•จ.
  • ํ†ต์‹  ๋งํฌ์˜ ์šฉ๋Ÿ‰(O): ์ค‘๊ฐ„์˜ ํ๊ฐ€ ์•„์˜ˆ ์—†๋Š” ๊ฒฝ์šฐ์ด๋ฉฐ, ์†ก์‹ ์ž๋Š” ์ˆ˜์‹ ์ž๊ฐ€ ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ๊ฐ€ ๋˜๊ธฐ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ธ๋‹ค๊ฐ€ ๋ณด๋‚ด์ค˜์•ผํ•จ.

  • ์ง์ ‘ํ†ต์‹ : ๋‘ ํ˜‘๋ ฅ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ง์ ‘ ์„œ๋กœ๋ฅผ ์ง€์ •ํ•˜์—ฌ ์–‘๋ฐฉํ–ฅ์œผ๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ์‹์ž„.
  • ์˜ค์ง ํ•˜๋‚˜์˜ ๋งํฌ: A์™€ B ์‚ฌ์ด์— ์ „์šฉ ๋…ผ๋ฆฌ์ ์ธ ํšŒ์„ ์ด ํ•˜๋‚˜ ๊น”๋ฆฌ๋Š” ๊ฐœ๋…
  • ๋‘ ํ”„๋กœ์„ธ์Šค ์‚ฌ์ด๋งŒ ์—ฐ๊ด€: ํ•ด๋‹น ํšŒ์„ ์€ C๋‚˜ D ๋“ฑ์€ ์ ˆ๋Œ€ ๋ผ์–ด๋“ค ์ˆ˜ ์—†๋Š” 1:1 ๋…ผ๋ฆฌ์ ์ธ ํšŒ์„ ์ž„.
  • ์–‘๋ฐฉํ–ฅ: A์™€ B ์‚ฌ์ด์˜ ํšŒ์„ ์—์„œ ์†ก์‹ ๊ณผ ์ˆ˜์‹ ์ด ๋…๋ฆฝ์ ์ธ ํ†ต๋กœ ์•„๋‹ˆ๋ฉด ํ•˜๋‚˜์˜ ํ†ต๋กœ๋ฅผ ๋งค์šฐ ๋น ๋ฅต ใ…”๋‚˜๋ˆ„์–ด ์จ์„œ ์‹ค์‚ฌ๊ฐ„์œผ๋กœ ์„œ๋กœ ๋™์‹œ์— ํ†ต์‹ ์„ ํ•˜๋Š” ๋ฐฉ์‹์„ ์˜๋ฏธํ•จ.

send(P, message) : ํ”„๋กœ์„ธ์Šค P์—๊ฒŒ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ธ๋‹ค.
receive(Q, message) : ํ”„๋กœ์„ธ์Šค Q๋กœ๋ถ€ํ„ฐ ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›๋Š”๋‹ค.
  • ๋Œ€์นญํ˜• ์ฃผ์†Œ ์ง€์ •: ๋Œ€ํ™”ํ•˜๋Š” ๋‘ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์„œ๋กœ์˜ ์ด๋ฆ„(์ฃผ์†Œ)๋ฅผ ๋ชจ๋‘ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•˜๋Š” ๋ฐฉ์‹์ด๋ฉฐ, ๋ณด๋‚ผ ๋•Œ์™€ ๋ฐ›์„ ๋•Œ ๋ˆ„๊ตฌ์—๊ฒŒ ๋ณด๋‚ผ ๊ฒƒ์ธ์ง€์™€ ๋ฐ›์„ ๊ฒƒ์ธ์ง€๋ฅผ ๋ช…์‹œ๋ฅผ ํ•ด์ค˜์•ผํ•จ. ์–‘๋ฐฉํ–ฅ ํ†ต์‹ ์ด ์•„์ฃผ ๋ช…ํ™•ํ•ด์ง€์ง€๋งŒ, ์ƒ๋Œ€๋ฐฉ์˜ ์ฃผ์†Œ๋ฅผ ๋ฏธ๋ฆฌ ์•Œ์•„์•ผ ํ•˜๋ฏ€๋กœ ํ”„๋กœ๊ทธ๋žจ์˜ ์œ ์—ฐ์„ฑ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Œ.
  • ์ฆ‰, ํ”„๋กœ์„ธ์Šค A๊ฐ€ ํ”„๋กœ์„ธ์Šค B์—์„ธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ๋•Œ send(B, m) ์„ ํ†ตํ•ด์„œ ์‹œ์Šคํ…œ ์ฝœ์„ ํ•˜๊ฒŒ ๋˜๋ฉด, ํ”„๋กœ์„ธ์Šค B์—์„œ๋Š” receive(A, m) ์„ ํ†ตํ•ด์„œ ๋ณด๋‚ธ ์‚ฌ๋žŒ์˜ ์ด๋ฆ„์„ ๋ช…์‹œํ•ด์„œ ์‹œ์Šคํ…œ ์ฝœ์„ ํ•ด์ฃผ์–ด์•ผ ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ.
  • ** ๊ฒฐ๋ก ์€ ํ”„๋กœ์„ธ์Šค B์— ํ•ญ์ƒ receive(A, m) ๊ณผ ๊ฐ™์ด ๋ˆ„๊ตฌ์—๊ฒŒ ๋ฐ›๋Š” ๊ฒƒ์ธ์ง€์™€ ๊ณ„์†ํ•ด์„œ ๋ฉ”์‹œ์ง€๊ฐ€ ๋„์ฐฉํ–ˆ๋Š”๊ฐ€๋ฅผ receive() ์‹œ์Šคํ…œ ์ฝœ์„ ํ†ตํ•ด์„œ ํ™•์ธ ๋ฐ ๋ฐ›์•„์™€์•ผํ•จ. ๋งค์šฐ ๋น„ํšจ์œจ์ ์ž„. **
  • ๋Œ€์นญํ˜• ๋ฐฉ์‹์€ ์• ์ดˆ์— ๋ณด์•ˆ๊ณผ ์˜ค๋ฅ˜ ๋ฐฉ์ง€์— ์˜ฌ์ธํ•œ ๋ฐฉ์‹์œผ๋กœ, receive(A, m) -> A ๋ง๊ณ ๋Š” ์•„๋ฌดํ•˜๊ณ ๋„ ๋ง ์•ˆํ•œ๋‹ค๋Š” ๊ฐ•๋ ฅํ•œ ํ•„ํ„ฐ๋ง์„ ํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ๋ณด๋ฉด ๋จ.
์†ก์‹ ์ž (Client ์—ญํ• ): ์—ฌ์ „ํžˆ ๋ณด๋‚ผ ๋Œ€์ƒ์„ ๋ช…์‹œํ•ฉ๋‹ˆ๋‹ค.
- send(P, message) : "๋‚˜๋Š” ํ”„๋กœ์„ธ์Šค P์—๊ฒŒ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ผ ๊ฑฐ์•ผ."

์ˆ˜์‹ ์ž (Server ์—ญํ• ): ๋ˆ„๊ฐ€ ๋ณด๋‚ผ์ง€ ๋ชจ๋ฅด๋‹ˆ ์ด๋ฆ„์„ ๋น„์›Œ๋‘ก๋‹ˆ๋‹ค.
- receive(id, message) : "๋ˆ„๊ตฌ๋“  ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด ์ผ๋‹จ ๋ฐ›์„๊ฒŒ. ๊ทธ๋ฆฌ๊ณ  ๋ณด๋‚ธ ๋†ˆ์˜ ์ด๋ฆ„์€ id๋ผ๋Š” ๋ณ€์ˆ˜์— ์ข€ ๋‹ด์•„์ค˜."
  • ๋น„๋Œ€์นญํ˜• ์ฃผ์†Œ ์ง€์ •: ๋Œ€์นญํ˜•์€ ์–‘์ชฝ ๋‹ค ์ด๋ฆ„์„ ์ ์–ด์•ผ ํ•˜๋Š” ๋ฐฉ์‹์ด์ง€๋งŒ, ํ•ด๋‹น ๋น„๋Œ€์นญํ˜• ๋ฐฉ์‹์€ ํ•œ์ชฝ๋งŒ ์ด๋ฆ„์„ ์ ์„ ์ˆ˜ ์žˆ์Œ.
  • ** ์œ„์˜ ๋Œ€์นญํ˜• ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹์˜ receive(A, m) ์™€ ๊ฐ™์ด A ๋ผ๋Š” ๋ณด๋‚ธ ํ”„๋กœ์„ธ์Šค์˜ ์ด๋ฆ„(์ฃผ์†Œ)๋ฅผ ๊ณ„์†ํ•ด์„œ ํ•˜๋“œ ์ฝ”๋”ฉ ๋ฐฉ์‹์„ ์ˆ˜์‹ ์ž ์ธถ์—์„œ receive(id, message) ๋ฅผ ํ†ตํ•ด์„œ ์œ ์—ฐํ•˜๊ฒŒ ๊ฐœ์„  ํ•œ ๋ฐฉ์‹์ž„. **
  • ์‰ฝ๊ฒŒ ๋งํ•ด, ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๊ณ  ๋ฐ›์„ ๋•Œ ์ฃผ์†Œ๋„ ๊ฐ™์ด ๋ฐ›๋Š” ๋ฐฉ์‹์ด๋ผ๊ณ  ๋ณด๋ฉด ๋จ.

  • ๊ฐ„์ ‘ํ†ต์‹ : ๊ธฐ์กด ์ง์ ‘ํ†ต์‹  ๋ฐฉ์‹์€ ์ƒ๋Œ€๋ฐฉ์„ ์ง์ ‘ ์ง€์ •ํ•ด์„œ ํ†ต์‹ ์„ ํ–ˆ์ง€๋งŒ, ๊ฐ„์ ‘ํ†ต์‹  ๋ฐฉ์‹์€ ์ƒ๋Œ€๋ฐฉ์„ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ , A ํ”„๋กœ์„ธ์Šค๊ฐ€ ํŠน์ • ์šฐํŽธํ•จ์— ๋ฉ”์‹œ์ง€๋ฅผ ๋„ฃ์œผ๋ฉด B ํ”„๋กœ์„ธ์Šค ํ•ด๋‹น ์šฐํŽธํ•จ์—์„œ ๋ฉ”์‹œ์ง€๋ฅผ ๊บผ๋‚ด๊ฐ€๋Š” ๋ฐฉ์‹์ž„.
  • ํŠน์ • ํ”„๋กœ์„ธ์Šค๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ์˜ ์šฐํŽธํ•จ์„ ์ด์šฉํ•˜๋ฉด ํŠน์ • ํ”„๋กœ์„ธ์Šค์™€ ์—ฐ๊ฒฐ ๋œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ†ต์‹  ๋งํฌ๊ฐ€ ์กด์žฌ ํ•  ์ˆ˜ ์žˆ์Œ.

  • ์šฐํŽธํ•จ์ด ์ˆ˜์‹  ํ”„๋กœ์„ธ์Šค์— ์†Œ์†: ์ˆ˜์‹  ํ”„๋กœ์„ธ์Šค์— ์†Œ์†๋  ๊ฒฝ์šฐ ํ”„๋กœ์„ธ์Šค ์ž์ฒด ๋‚ด๋ถ€์— ์šฐํŽธํ•จ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ๋กœ์จ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๋“ค์€ send() ๋งŒ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ˆ˜์‹  ํ”„๋กœ์„ธ์Šค๋งŒ receive() ๋ฅผ ํ†ตํ•ด ๊บผ๋‚ผ ์ˆ˜ ์žˆ์Œ.
  • ์šฐํŽธํ•จ์ด ์šด์˜์ฒด์ œ์— ์†Œ์†: ์šฐํŽธํ•จ์ด ์šด์˜์ฒด์ œ์— ์†Œ์†๋œ ๊ฒฝ์šฐ ํ”„๋กœ์„ธ์Šค๋“ค์€ ๊ณต์šฉ ์šฐํŽธํ•จ์œผ๋กœ์จ send() ๋˜๋Š” receive() ๊ฐ€๋Šฅ.

[ ๊ฐœ์ธ์ ์ธ ํ•ด์„ ]

๐Ÿ”น ํŒŒ์ดํ”„(pipe)
- ๋‹จ๋ฐฉํ–ฅ
- ์šฉ๋Ÿ‰ ์ œํ•œ ์žˆ์Œ
- 1:1 ํ†ต์‹ 
๐Ÿ‘‰ ์ปค๋„์ด ์ด๋ ‡๊ฒŒ ๋งŒ๋“ค์–ด๋‘” ๊ตฌ์กฐ - pipe()

๐Ÿ”น ๋ฉ”์‹œ์ง€ ํ
- ๋‹ค๋Œ€๋‹ค ๊ฐ€๋Šฅ
- ํ ๊ธฐ๋ฐ˜ (์šฉ๋Ÿ‰ ์žˆ์Œ)
- ๊ฐ„์ ‘ ํ†ต์‹ 
๐Ÿ‘‰ ์ด๊ฒƒ๋„ ์ปค๋„์ด ์ •์˜ํ•œ ๋ฐฉ์‹ - msgget()

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

'๐ŸŽ“๋ฐฉ์†กํ†ต์‹ ๋Œ€ํ•™๊ต > โš™๏ธ์šด์˜์ฒด์ œ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[์šด์˜์ฒด์ œ] 6๊ฐ• - ๊ต์ฐฉ์ƒํƒœ(1)  (0) 2026.03.20
[์šด์˜์ฒด์ œ] 4๊ฐ• - ๋ณ‘ํ–‰ ํ”„๋กœ์„ธ์Šค(1)  (0) 2026.03.06
[์šด์˜์ฒด์ œ] 3๊ฐ• - ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ค„๋ง  (0) 2026.02.27
[์šด์˜์ฒด์ œ] 2๊ฐ• - ํ”„๋กœ์„ธ์Šค์™€ ์“ฐ๋ ˆ๋“œ  (0) 2026.02.19
[์šด์˜์ฒด์ œ] 1๊ฐ• - ์šด์˜์ฒด์ œ ์†Œ๊ฐœ  (0) 2026.02.18
'๐ŸŽ“๋ฐฉ์†กํ†ต์‹ ๋Œ€ํ•™๊ต/โš™๏ธ์šด์˜์ฒด์ œ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [์šด์˜์ฒด์ œ] 6๊ฐ• - ๊ต์ฐฉ์ƒํƒœ(1)
  • [์šด์˜์ฒด์ œ] 4๊ฐ• - ๋ณ‘ํ–‰ ํ”„๋กœ์„ธ์Šค(1)
  • [์šด์˜์ฒด์ œ] 3๊ฐ• - ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ค„๋ง
  • [์šด์˜์ฒด์ œ] 2๊ฐ• - ํ”„๋กœ์„ธ์Šค์™€ ์“ฐ๋ ˆ๋“œ
junbin2
junbin2
java.lang.NullPointerException
  • junbin2
    bin's Development Diary
    junbin2
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ์ „์ฒด๋ณด๊ธฐ (211)
      • ๐ŸŽ“๋ฐฉ์†กํ†ต์‹ ๋Œ€ํ•™๊ต (65)
        • โš™๏ธ์ปดํ“จํ„ฐ์˜ ์ดํ•ด (11)
        • ๐Ÿ’ป์ปดํ“จํ„ฐ๊ณผํ•™ ๊ฐœ๋ก  (15)
        • ๐Ÿ”ข์ž๋ฃŒ๊ตฌ์กฐ (14)
        • ๐Ÿงฌ์•Œ๊ณ ๋ฆฌ์ฆ˜ (5)
        • โš™๏ธ์šด์˜์ฒด์ œ (6)
        • ๐Ÿ•ธ๏ธ์ด์‚ฐ์ˆ˜ํ•™ (2)
        • ๐ŸŒ์œ ๋น„์ฟผํ„ฐ์Šค ์ปดํ“จํŒ… (11)
        • ๐Ÿ–ฅ๏ธ์ปดํ“จํ„ฐ๊ณผํ•™๊ณผ (1)
      • ๐Ÿ› ๏ธBackend (70)
        • ๐Ÿ“š๋ฐฑ์—”๋“œ ๊ณต๋ถ€ (4)
        • โ˜•Java (23)
        • ๐ŸŒณSpring (13)
        • โš™๏ธC (12)
        • โšกPython (15)
        • JavaScript (1)
        • ๐Ÿ›ข๏ธDatabase (0)
        • Algorithm Problem Solving (2)
      • ๐ŸŒ Network (7)
        • ๐Ÿ“œHTTP (7)
      • ๐Ÿš€DevOps (1)
      • โ›บ์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ (64)
      • ์ •๋ณด (2)
      • ์ •๋ฆฌ๊ฐ€ ํ•„์š”ํ•œ ๊ธ€ (2)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

    • GitHub
  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ์ž๋ฐ”
    ๋ฐฉ์†กํ†ต์‹ ๋Œ€ํ•™๊ต
    Python
    ์ปดํ“จํ„ฐ๊ณผํ•™ ๊ฐœ๋ก 
    Java
    spring
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    ์šด์˜์ฒด์ œ
    ์ž๋ฃŒ๊ตฌ์กฐ
    ๋ฐฉ์†ก๋Œ€
    ํ•จ์ˆ˜
    ์œ ๋น„์ฟผํ„ฐ์Šค ์ปดํ“จํŒ…๊ฐœ๋ก 
    C ์–ธ์–ด
    ๋ฐฉํ†ต๋Œ€
    ํŒŒ์ด์ฌ
    ์œ ๋น„์ฟผํ„ฐ์Šค
    ์ปดํ“จํ„ฐ๊ณผํ•™๊ณผ
    ์ปดํ“จํ„ฐ์˜ ์ดํ•ด
    C์–ธ์–ด
    ๋ฐฐ์—ด
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.1
junbin2
[์šด์˜์ฒด์ œ] 5๊ฐ• - ๋ณ‘ํ–‰ ํ”„๋กœ์„ธ์Šค(2)
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”