๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ
๐Ÿ’ป Computer Science/- Operating System

[์šด์˜์ฒด์ œ] 9. ์Šค๋ ˆ๋“œ์˜ ๊ตฌํ˜„

by Wonit 2019. 12. 9.

์Šค๋ ˆ๋“œ์˜ ๊ตฌํ˜„

์Šค๋ ˆ๋“œ๋Š” ์šด์˜์ฒด์ œ์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•˜๊ฒŒ ๊ตฌํ˜„๋  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ฃผ๋กœ ์„ธ ๊ฐ€์ง€ ํ˜•ํƒœ๋กœ ๊ตฌ๋ถ„๋œ๋‹ค.

 

1. ์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ

์Šค๋ ˆ๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ์ž‘๋™ํ•˜๋Š” ํ˜•ํƒœ

๋‹ค๋Œ€์ผ (n:1) ๋งคํ•‘

2. ์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ

์ปค๋„(์šด์˜์ฒด์ œ)์—์„œ ์ง€์›ํ•˜๋Š” ํ˜•ํƒœ

์ผ๋Œ€์ผ (1:1) ๋งคํ•‘

3. ํ˜ผํ•ฉํ˜• ์Šค๋ ˆ๋“œ

์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ + ์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ์˜ ํ˜•ํƒœ

๋‹ค๋Œ€๋‹ค (n:n) ๋งคํ•‘

 

1. ์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ

 

๊ทธ๋Ÿผ-1 ์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ

์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ๋Š” ์‚ฌ์šฉ์ž ์˜์—ญ์˜ ์Šค๋ ˆ๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๊ตฌํ˜„ํ•˜๊ณ , ์Šค๋ ˆ๋“œ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ํ–‰์œ„๋ฅผ ์‚ฌ์šฉ์ž ์˜์—ญ์—์„œ ํ•˜๋ฏ€๋กœ ์ปค๋„์ด ์Šค๋ ˆ๋“œ์˜ ์กด์žฌ๋ฅผ ๋ชจ๋ฅธ๋‹ค.

 

์—ฌ๊ธฐ์„œ ์Šค๋ ˆ๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์Šค๋ ˆ๋“œ์˜ ์ƒ์„ฑ๊ณผ ์ข…๋ฃŒ, ์Šค๋ ˆ๋“œ๊ฐ„ ๋ฉ”์‹œ์ง€ ์ „๋‹ฌ, ์Šค๋ ˆ๋“œ์˜ ์Šค์ผ€์ฅด๋ง๋“ฑ์„ ๋ณด๊ด€ํ•œ๋‹ค.

ex) Phtread, Win32 Thread, Java Thread API

 

๋‹ค์ˆ˜์˜ ์‚ฌ์šฉ์ž ์ˆ˜์ค€์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ ํ•œ ๊ฐœ์— ๋งคํ•‘๋œ๋‹ค

 

์žฅ์ 

  • ์ด์‹์„ฑ์ด ๋†’๋‹ค.

    ์ปค๋„์— ๋…๋ฆฝ์ ์œผ๋กœ ์Šค์ผ€์ฅด๋ง์ผ ํ•  ์ˆ˜ ์žˆ์–ด ๋ชจ๋“  ์šด์˜์ฒด์ œ์— ์ ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ ๋‹ค.

    ์Šค์ผ€์ฅด๋ง์ด๋‚˜ ๋™๊ธฐํ™”๋ฅผ ํ•˜๋ ค๊ณ  ์ปค๋„์„ ํ˜ธ์ถœํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ปค๋„ ์˜์—ญ์œผ๋กœ ์ „ํ™˜ํ•˜๋Š” ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ค„์–ด๋“ ๋‹ค.

  • ์œ ์—ฐํ•œ ์Šค์ผ€์ฅด๋ง์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

    ์ปค๋„์ด ์•„๋‹Œ ์Šค๋ ˆ๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์Šค๋ ˆ๋“œ ์Šค์ผ€์ฅด๋ง์„ ์ œ์–ดํ•˜๋ฏ€๋กœ ์‘์šฉํ”„๋กœ๊ทธ๋žจ์— ๋งž๊ฒŒ ์Šค์ผ€์ค„๋งํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋‹จ์ 

  • ์‹œ์Šคํ…œ์˜ ๋™์‹œ์„ฑ์„ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค.

    ์Šค๋ ˆ๋“œ ๋‹จ์œ„๊ฐ€ ์•„๋‹Œ ํ”„๋กœ์„ธ์Šค ๋‹จ์œ„๋กœ ํ”„๋กœ์„ธ์„œ๋ฅผ ํ• ๋‹นํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์Šค๋ ˆ๋“œ ๋‹จ์œ„๋กœ ๋‹ค์ค‘์ฒ˜๋ฆฌ๋ฅผ ํ•  ์ˆ˜ ์—†๋‹ค.

  • ํ™•์žฅ์— ์ œ์•ฝ์ด ๋”ฐ๋ฅธ๋‹ค.

    ์ปค๋„์ด ํ•œ ํ”„๋กœ์„ธ์Šค์— ์†ํ•œ ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ์— ํ”„๋กœ์„ธ์„œ๋ฅผ ๋™์‹œ์— ํ• ๋‹นํ•  ์ˆ˜ ์—†์–ด ํ™•์žฅ์„ฑ์ด ๋‚ฎ๋‹ค.

  • ์Šค๋ ˆ๋“œ๊ฐ„ ๋ณดํ˜ธ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

    ์Šค๋ ˆ๋“œ๊ฐ„ ๋ณดํ˜ธ์— ์ปค๋„์˜ ๋ณดํ˜ธ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์Šค๋ ˆ๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์Šค๋ ˆ๋“œ๊ฐ„ ๋ณดํ˜ธ๋ฅผ ์ œ๊ณตํ•ด์•ผ ํ•œ๋‹ค.

 

์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ

 

๊ทธ๋ฆผ-2 ์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ

์ปค๋„์ด ์Šค๋ ˆ๋“œ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ์ž‘์—…์„ ๊ด€๋ฆฌํ•œ๋‹ค(PCB์™€ TCB ์œ ์ง€). ์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ์˜ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ๋‚˜์˜จ ๋ฐฉ๋ฒ•์œผ๋กœ, ์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ์™€ ์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ๊ฐ€ 1:1๋งคํ•‘์ด ๋œ๋‹ค

 

์žฅ์ 

  • ์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ์˜ ๋‹จ์ ์„ ๊ทน๋ณตํ•œ๋‹ค.
  • ์Šค๋ ˆ๋“œ ์ค‘ ํ•œ ๊ฐœ๊ฐ€ ๋Œ€๊ธฐ ์ƒํƒœ๊ฐ€ ๋˜๋”๋ผ๋„ ๋‹ค๋ฅธ ์Šค๋ ˆ๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์˜ ์Šค๋ ˆ๋“œ๋ฅผ ๋ณ‘ํ–‰์œผ๋กœ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋‹จ์ 

  • ์ปค๋„์ด ์ „์ฒด ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ ์ •๋ณด๋ฅผ ์œ ์ง€ํ•˜์—ฌ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ปค์ง„๋‹ค.
  • ๋™๊ธฐํ™”๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด ๋” ๋งŽ์€ ์ž์›์ด ํ•„์š”ํ•˜๋‹ค.

ํ˜ผํ•ฉํ˜• ์Šค๋ ˆ๋“œ

์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ์™€ ์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ๋ฅผ ํ˜ผํ•ฉํ•œ ๊ตฌ์กฐ๋กœ ์‹œ์Šคํ…œ ํ˜ธ์ถœ์„ ํ•  ๋•Œ ๋‹ค๋ฅธ ์Šค๋ ˆ๋“œ๋ฅผ ์ค‘๋‹จํ•˜๋Š” (n:1) ๋งคํ•‘์˜ ๋ฐฉ์‹๊ณผ ์Šค๋ ˆ๋“œ์˜ ์ˆ˜๋ฅผ ์ œํ•œํ•˜๋Š” (1:1) ๋งคํ•‘์˜ ๋ฌธ์ œ๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ํƒ€๋‚˜๋‚ฌ๋‹ค.

 

์Šค๋ ˆ๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ์ง€์›ํ•˜๋„๋ก ์ปค๋„์ด ๊ฒฝ๋Ÿ‰ ํ”„๋กœ์„ธ์Šค ์ˆ˜๋ฅผ ๋™์ ์œผ๋กœ ์กฐ์ ˆํ•˜๊ณ  ์‚ฌ์šฉ์ž ์ˆ˜์ค€์˜ ์Šค๋ ˆ๋“œ์™€ ์ปค๋„ ์ˆ˜์ค€ ์Šค๋ ˆ๋“œ๊ฐ€ (n:m) ๋‹ค๋Œ€๋‹ค๋กœ ๋งคํ•‘ํ•œ๋‹ค.

 

์ปค๋„ ์˜์—ญ์—์„œ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ์ •๋„๋ฅผ ๋งคํ•‘์ด ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์–ด ๋ณ‘ํ–‰ ์‹คํ–‰์ด ์˜๋ฏธ๊ฐ€ ์—†์„ ๋•Œ ๋‹ค๋Œ€์ผ(n:1)๋งคํ•‘๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

์Šค๋ ˆ๋“œ ํด๋ง

์‹œ์Šคํ…œ์ด ๊ด€๋ฆฌํ•˜๋Š” ์Šค๋ ˆ๋“œ์˜ ํ’€์„ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ์ œ๊ณตํ•˜์—ฌ ์Šค๋ ˆ๋“œ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๋ฐฉ๋ฒ•.

 

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

๋Œ“๊ธ€