๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅ๏ธ Computer Science

[์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๋Š” ์šด์˜์ฒด์ œ] ch.4 CPU ์Šค์ผ€์ค„๋ง - ์—ฐ์Šต & ์‹ฌํ™” ๋ฌธ์ œ

by GroovyArea 2022. 11. 4.

์—ฐ์Šต ๋ฌธ์ œ

1. ํ”„๋กœ๊ทธ๋žจ์ด ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋˜๋ ค๋ฉด ์šด์˜์ฒด์ œ๋กœ๋ถ€ํ„ฐ ๋ฌด์—‡์„ ๋ฐ›๋Š”์ง€?

  • ํ”„๋กœ์„ธ์Šค ์ œ์–ด ๋ธ”๋ก(Process Control Block)

2. ํ”„๋กœ์„ธ์Šค์˜ ์ƒํƒœ ์ค‘ CPU๋ฅผ ํ• ๋‹น๋ฐ›๊ธฐ ์œ„ํ•ด ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ƒํƒœ

  • ์ค€๋น„ ์ƒํƒœ(Ready Status)

3. ํ”„๋กœ์„ธ์Šค์˜ ์ƒํƒœ ์ค‘ ์ž…์ถœ๋ ฅ ์ž‘์—…์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ด๋™ํ•˜๋Š” ์ƒํƒœ

  • ๋Œ€๊ธฐ ์ƒํƒœ(Blocking Status)

4. CPU ์Šค์ผ€์ค„๋Ÿฌ๊ฐ€ ์ค€๋น„ ์ƒํƒœ์— ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค ์ค‘ ํ•˜๋‚˜๋ฅผ ๊ณจ๋ผ CPU๋ฅผ ํ• ๋‹นํ•˜๋Š” ์ž‘์—…

  • ์‹คํ–‰ ์ƒํƒœ(Runnung Status)

5. ์œ ๋‹‰์Šค์—์„œ Ctrl+Z ๋ฅผ ๋ˆŒ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ค‘๋‹จ๋˜๋ฉด ํ”„๋กœ์„ธ์Šค๋Š” ์–ด๋–ค ์ƒํƒœ๋กœ ๋ฐ”๋€Œ๋Š”์ง€?

  • ํœด์‹ ์ƒํƒœ(Pause Status)

6. ์‹คํ–‰ ์ƒํƒœ์—์„œ ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‚˜๊ฐ€๊ณ  ์ƒˆ๋กœ์šด ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋“ค์–ด์˜ค๋Š” ์ƒํ™ฉ

  • ๋ฌธ๋งฅ ๊ตํ™˜(Context Switching)
  • ๋‘ ํ”„๋กœ์„ธ์Šค ๊ฐ„์˜ ์ œ์–ด ๋ธ”๋ก ๋‚ด์šฉ์ด ๋ณ€๊ฒฝ ๋จ.
  • ๊ธฐ์กด ํ”„๋กœ์„ธ์Šค ์ž‘์—…์„ ์ €์žฅ ํ›„ ์‹คํ–‰ ๋˜๋Š” ํ”„๋กœ์„ธ์Šค์˜ ์ œ์–ด ๋ธ”๋ก์˜ ๋‚ด์šฉ์„ ๊ฐ€์ง€๊ณ  CPU๊ฐ€ ์„ธํŒ…ํ•จ
  • ํ”„๋กœ์„ธ์Šค ๊ฐ„ ์ œ์–ด ๋ธ”๋ก์„ ๊ตํ™˜ํ•˜๋Š” ์ž‘์—…

7. ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค๋กœ๋ถ€ํ„ฐ ์ƒˆ๋กœ์šด ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ์‹œ์Šคํ…œ ํ˜ธ์ถœ์€?

  • fork()
  • ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ ํ”„๋กœ์„ธ์Šค์™€ ๊ฐ™์€ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ•˜๋‚˜ ์ƒ์„ฑ๋œ๋‹ค.
  • ๊ธฐ์กด ํ”„๋กœ์„ธ์Šค : ๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค
  • ์ƒˆ ํ”„๋กœ์„ธ์Šค : ์ž์‹ ํ”„๋กœ์„ธ์Šค

8. ํ”„๋กœ์„ธ์Šค์˜ ๊ณจ๊ฒฉ์€ ๊ทธ๋Œ€๋กœ ๋‘” ์ฑ„ ์ฝ”๋“œ ์˜์—ญ๋งŒ์„ ๋ฐ”๊พธ๋Š” ์‹œ์Šคํ…œ ํ˜ธ์ถœ?

  • exec()
  • ํ”„๋กœ์„ธ์Šค์˜ ๊ตฌ์กฐ์ฒด๋ฅผ ์žฌํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ
  • ๊ธฐ์กด์˜ ํ”„๋กœ์„ธ์Šค ์ œ์–ด ๋ธ”๋ก, ๋ฉ”๋ชจ๋ฆฌ, ๋ถ€๋ชจ-์ž์‹ ๊ด€๊ณ„๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•จ
  • ์ƒˆ๋กœ์šด Code Area๋งŒ ๊ฐ€์ ธ์˜ค๋ฉด ๋œ๋‹ค.

9. ๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š์•„ ์ž์›์ด ํšŒ์ˆ˜๋˜์ง€ ๋ชปํ•˜๊ณ  ๊ณ„์† ์‚ด์•„ ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค?

  • Orphan Process
  • Zombie Process

10. ํ”„๋กœ์„ธ์Šค์˜ ์ฝ”๋“œ์— ์ •์˜๋œ ์ ˆ์ฐจ์— ๋”ฐ๋ผ CPU์— ์ž‘์—… ์š”์ฒญ์„ ํ•˜๋Š” ์‹คํ–‰ ๋‹จ์œ„๋กœ์„œ ๊ฐ€๋ฒผ์šด ํ”„๋กœ์„ธ์Šค๋กœ ๋ถˆ๋ฆฌ์šฐ๋Š” ๊ฒƒ์€?

  • Thread
  • CPU ์Šค์ผ€์ค„๋Ÿฌ๊ฐ€ CPU์— ์ „๋‹ฌํ•˜๋Š” ํ•˜๋‚˜์˜ ์ผ
  • ์ž‘์—…์˜ ๋‹จ์œ„

11. ๋ฏธ์•„ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค๋Š” ์–ด๋–ค ์‹œ์Šคํ…œ ํ˜ธ์ถœ์„ ์‚ฌ์šฉํ•˜๋Š”์ง€?

  • wait()
  • ์ž์‹ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ข…๋ฃŒ๋  ๊ฒฝ์šฐ ๋‹ค์Œ ๋ฌธ์žฅ์„ ์‹คํ–‰

12. ์ž‘์—…์ด ๋๋‚œ ํ”„๋กœ์„ธ์Šค์˜ ์ž์›์„ ํšŒ์ˆ˜ํ•˜๋Š” ํ–‰์œ„?

  • Garbage Collection

13. ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ถ€๋ชจ-์ž์‹ ๊ด€๊ณ„๋กœ ๋งŒ๋“ค์–ด ์ž์› ํšŒ์ˆ˜๋ฅผ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์˜ ๊ตฌ์กฐ?

  • ํ”„๋กœ์„ธ์Šค ๊ณ„์ธต ๊ตฌ์กฐ

์‹ฌํ™” ๋ฌธ์ œ

1. ์Šค์ผ€์ค„๋ง์˜ ๋‹จ๊ณ„์™€ ๊ทธ ํŠน์ง•์„ ์„ค๋ช…

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

2. ์Šค์ผ€์ค„๋ง์˜ ๋ชฉ์ ์„ ์„ค๋ช…

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

3. ์„ ์ ํ˜• ์Šค์ผ€์ค„๋ง๊ณผ ๋น„์„ ์ ํ˜• ์Šค์ผ€์ค„๋ง์„ ๋น„๊ต ์„ค๋ช…

  1. ์„ ์ ํ˜• ์Šค์ผ€์ค„๋ง :
    ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๊ฐ€ CPU๋ฅผ ํ• ๋‹น๋ฐ›์•„ ์‹คํ–‰์ค‘์ด๋”๋ผ๋„ ์šด์˜์ฒด์ œ๊ฐ€ CPU๋ฅผ ๊ฐ•์ œ๋กœ ๋นผ์•—์„ ์ˆ˜ ์žˆ๋‹ค.
    ๋ฌธ๋งฅ ๊ตํ™˜ ๊ฐ™์€ ๋ถ€๊ฐ€์ ์ธ ์ž‘์—…์œผ๋กœ ์ธํ•ด ๋‚ญ๋น„๊ฐ€ ์ƒ๊ธฐ๋Š” ๊ฒƒ์ด ๋‹จ์ 
  2. ๋น„์„ ์ ํ˜• ์Šค์ผ€์ค„๋ง :
    ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๊ฐ€ CPU๋ฅผ ์ ์œ ํ•˜๋ฉด ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ด๋ฅผ ๋นผ์•—์„ ์ˆ˜ ์—†๋‹ค.
    ์„ ์ ํ˜• ์Šค์ผ€์ค„๋ง๋ณด๋‹ค ์Šค์ผ€์ค„๋Ÿฌ์˜ ์ž‘์—…๋Ÿ‰์ด ์ ๊ณ  ๋ฌธ๋งฅ ๊ตํ™˜์— ์˜ํ•œ ๋‚ญ๋น„๋„ ์ ๋‹ค.

4. ์Šค์ผ€์ค„๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์„ ํƒ ๊ธฐ์ค€์— ๋Œ€ํ•œ ์„ค๋ช…

  1. CPU ์‚ฌ์šฉ๋ฅ : ์ „์ฒด ์‹œ์Šคํ…œ์˜ ๋™์ž‘ ์‹œ๊ฐ„ ์ค‘ CPU๊ฐ€ ์‚ฌ์šฉ๋œ ์‹œ๊ฐ„์„ ์ธก์ •ํ•จ.
  2. ์ฒ˜๋ฆฌ๋Ÿ‰: ๋‹จ์œ„ ์‹œ๊ฐ„๋‹น ์ž‘์—…์„ ๋งˆ์นœ ํ”„๋กœ์„ธ์Šค์˜ ์ˆ˜. ํด์ˆ˜๋ก ์ข‹์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜.
  3. ๋Œ€๊ธฐ ์‹œ๊ฐ„: ์‹ค์ œ ์ž‘์—…์„ ์š”์ฒญํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „๊นŒ์ง€ ๋Œ€๊ธฐํ•˜๋Š” ์‹œ๊ฐ„. ์งง์„ ์ˆ˜๋ก ์ข‹์Œ.
  4. ์‘๋‹ต ์‹œ๊ฐ„: ํ”„๋กœ์„ธ์Šค ์‹œ์ž‘ ํ›„ ์ฒซ ๋ฒˆ์งธ ์ถœ๋ ฅ ๋˜๋Š” ๋ฐ˜์‘์ด ๋‚˜์˜ฌ๋•Œ๊นŒ์ง€ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„.
  5. ๋ฐ˜ํ™˜ ์‹œ๊ฐ„: ๋Œ€๊ธฐ ์‹œ๊ฐ„๊ณผ ์‹คํ–‰ ์‹œ๊ฐ„์„ ๋”ํ•œ ๊ฐ’. ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ƒ์„ฑ๋œ ํ›„ ์ข…๋ฃŒ๋˜์–ด ์‚ฌ์šฉํ•˜๋˜ ์ž์›์„ ๋ชจ๋‘ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ๊นŒ์ง€ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„.
  • ์‚ฌ์šฉ๋ฅ ๊ณผ ์ฒ˜๋ฆฌ๋Ÿ‰์€ ๊ณ„์‚ฐํ•˜๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š์•„, ์ฃผ๋กœ ๋Œ€๊ธฐ, ์‘๋‹ต, ๋ฐ˜ํ™˜ ์‹œ๊ฐ„์„ ๊ณ„์‚ฐํ•œ๋‹ค.

  • ์ฃผ๋กœ ํ‰๊ท  ๋Œ€๊ธฐ ์‹œ๊ฐ„์„ ๋ณธ๋‹ค. ํ‰๊ท  ๋Œ€๊ธฐ ์‹œ๊ฐ„์€ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค์˜ ๋Œ€๊ธฐ ์‹œ๊ฐ„์„ ํ•ฉํ•œ ๋’ค ํ”„๋กœ์„ธ์Šค์˜ ์ˆ˜๋กœ ๋‚˜๋ˆˆ ๊ฐ’์ด๋‹ค.


5. FCFS, SJF, HRN ์Šค์ผ€์ค„๋ง์˜ ํŠน์ง•์„ ์„ค๋ช…ํ•˜์‹œ์˜ค

  1. FCFS (First Come First Served :
    ์ค€๋น„ ํ์— ๋„์ฐฉํ•œ ์ˆœ์„œ๋Œ€๋กœ CPU๋ฅผ ํ• ๋‹นํ•˜๋Š” ๋น„์„ ์ ํ˜• ๋ฐฉ์‹. ์ฒ˜๋ฆฌ ์‹œ๊ฐ„์ด ๊ธด ํ”„๋กœ์„ธ์Šค๊ฐ€ CPU๋ฅผ ์ฐจ์ง€ํ•˜๋Š” ๊ฒฝ์šฐ ์‹œ์Šคํ…œ์˜ ํšจ์œจ์„ฑ์ด ๋–จ์–ด์ง. ํ˜„์žฌ ์ž‘์—…์ค‘์ธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž…์ถœ๋ ฅ์„ ์š”๊ตฌํ•˜๋ฉด CPU๊ฐ€ ์‰ฌ๋Š” ์‹œ๊ฐ„์ด ๋งŽ์•„์ ธ ํšจ์œจ์ด ๋–จ์–ด์ง.
  2. SJF (Shortest Job First) :
    ํ”„๋กœ์„ธ์Šค ์ค‘์—์„œ ์‹คํ–‰ ์‹œ๊ฐ„์ด ๊ฐ€์žฅ ์งง์€ ์ž‘์—…๋ถ€ํ„ฐ ํ• ๋‹นํ•˜๋Š” ๋น„์„ ์ ํ˜• ๋ฐฉ์‹. ์ข…๋ฃŒ ์‹œ๊ฐ„์„ ํŒŒ์•…ํ•˜๊ธฐ ์–ด๋ ค์›Œ ์‚ฌ์šฉํ•˜๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š๋‹ค. ์•„์‚ฌ ํ˜„์ƒ์ด ๋ฐœ์ƒํ•˜๊ธฐ ์‰ฌ์›Œ์„œ ์ž˜ ์“ฐ์ด์ง€ ์•Š๋Š”๋‹ค.
  3. HRN (Highest Response Ratio Next) :
    SJF์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์•„์‚ฌ ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜. ์„œ๋น„์Šค๋ฅผ ๋ฐ›๊ธฐ ์œ„ํ•ด ๊ธฐ๋‹ค๋ฆฐ ์‹œ๊ฐ„๊ณผ CPU ์‚ฌ์šฉ ์‹œ๊ฐ„์„ ๊ณ ๋ คํ•˜์—ฌ ์Šค์ผ€์ค„๋ง์„ ํ•˜๋Š” ๋ฐฉ์‹. ๊ณตํ‰์„ฑ์ด ์œ„๋ฐฐ๋˜์–ด ๋งŽ์ด ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

6. ๋ผ์šด๋“œ ๋กœ๋นˆ, SRT, ๋‹ค๋‹จ๊ณ„ ํ, ๋‹ค๋‹จ๊ณ„ ํ”ผ๋“œ๋ฐฑ ํ ์Šค์ผ€์ค„๋ง์˜ ํŠน์ง•์„ ์„ค๋ช…

  1. ๋ผ์šด๋“œ ๋กœ๋นˆ(Round Robin) :
    FCFS ์Šค์ผ€์ค„๋ง๊ณผ ์œ ์‚ฌํ•จ. ๊ฐ ํ”„๋กœ์„ธ์Šค๋งˆ๋‹ค CPU๋ฅผ ํ• ๋‹น๋ฐ›๋Š” ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค๊ฐ€ ์ •ํ•ด์ง.
  2. SRT(Shortest Remaining Time) :
    ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ผ์šด๋“œ ๋กœ๋นˆ ๋ฐฉ์‹๊ณผ ๊ฐ™์ด ๋™์ž‘ํ•˜์ง€๋งŒ, CPU๋ฅผ ํ• ๋‹น ๋ฐ›์„ ํ”„๋กœ์„ธ์Šค๋ฅผ ์„ ํƒํ•  ๋•Œ ์ž”์—ฌ ์ž‘์—… ์‹œ๊ฐ„์ด ๊ฐ€์žฅ ์ ์€ ํ”„๋กœ์„ธ์Šค๋ฅผ ์„ ํƒํ•จ. ํ•˜์ง€๋งŒ ์šด์˜์ฒด์ œ๊ฐ€ ํ”„๋กœ์„ธ์Šค์˜ ์ข…๋ฃŒ ์‹œ๊ฐ„์„ ์˜ˆ์ธกํ•˜๊ธฐ ์–ด๋ ค์šฐ๋ฏ€๋กœ ์ž˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ.
  3. ๋‹ค๋‹จ๊ณ„ ํ(Multilevel queue) :
    ์šฐ์„  ์ˆœ์œ„์— ๋”ฐ๋ฅธ ์ค€๋น„ํ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์‚ฌ์šฉํ•จ. ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ์— ์‚ฝ์ž…๋˜๋Š” ๊ฒƒ์œผ๋กœ ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๊ฒฐ์ •๋จ. ์ƒ์œ„ ํ์˜ ๋ชจ๋“  ์ž‘์—… ์ข…๋ฃŒ๋˜์–ด์•ผ ๋‹ค์Œ ํ์˜ ์ž‘์—…์ด ์ง„ํ–‰๋จ. ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๋†’์€ ํ”„๋กœ์„ธ์Šค ๋•Œ๋ฌธ์— ๋‚ฎ์€ ํ”„๋กœ์„ธ์Šค์˜ ์ž‘์—…์ด ์—ฐ๊ธฐ๋˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ ๋ฐฉ์‹์ด ๋‹ค๋‹จ๊ณ„ ํ”ผ๋“œ๋ฐฑ ํ ์Šค์ผ€์ค„๋ง์ด๋‹ค.
  4. ๋‹ค๋‹จ๊ณ„ ํ”ผ๋“œ๋ฐฑ ํ(Multilevel Feedback Queue) :
    ๋‹ค๋‹จ๊ณ„ ํ ์Šค์ผ€์ค„๋ง๊ณผ ๋น„์Šทํ•˜์ง€๋งŒ, ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ•œ๋ฒˆ CPU๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋งˆ๋‹ค ํ”„๋กœ์„ธ์Šค์˜ ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๋‚ฎ์•„์ง„๋‹ค. ์ปค๋„ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ผ๋ฐ˜ ํ”„๋กœ์„ธ์Šค ํ์— ์‚ฝ์ž…๋˜์ง€ ์•Š์Œ. ๊ฐ ํ์˜ ์šฐ์„  ์ˆœ์œ„๊ฐ€ ์•„๋ž˜๋กœ ๋‚ด๋ ค๊ฐˆ ๊ฒฝ์šฐ ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค์˜ ํฌ๊ธฐ๋„ ์ปค์ ธ์„œ, ๋งˆ์ง€๋ง‰ ์šฐ์„  ์ˆœ์œ„ ํ์˜ ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค๋Š” ๋ฌดํ•œ๋Œ€๋กœ, FCFS ์ฒ˜๋Ÿผ ๋™์ž‘ํ•จ.

7. ์•„์‚ฌ ํ˜„์ƒ๊ณผ ์—์ด์ง•์— ๋Œ€ํ•ด ์„ค๋ช…

  • ํ”„๋กœ์„ธ์Šค์˜ ์šฐ์„ ๋„ ์ˆœ์œผ๋กœ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์Šค์ผ€์ค„๋ง์ด๋ผ๋ฉด, ์šฐ์„ ๋„๊ฐ€ ๋‚ฎ์€ ํ”„๋กœ์„ธ์Šค๋Š” ๊ณ„์†ํ•ด์„œ ์ž์›์„ ํ• ๋‹น ๋ฐ›์ง€ ๋ชปํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๋Š”๋ฐ, ์ด๊ฒƒ์„ ์•„์‚ฌ ํ˜„์ƒ์ด๋ผ๊ณ  ํ•œ๋‹ค.

  • ์—์ด์ง•์€ ์•„์‚ฌ ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜์ธ๋ฐ, ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž์‹ ์˜ ์ˆœ์„œ๋ฅผ ์–‘๋ณดํ•  ๋•Œ๋งˆ๋‹ค ๋‚˜์ด๋ฅผ ํ•œ ์‚ด์”ฉ ๋จน๋Š”๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ , ์ด ๋‚˜์ด๊ฐ€ ์ผ์ •ํ•œ ๊ฐ’์— ๋„๋‹ฌํ•˜๊ฒŒ ๋˜๋ฉด ๋” ์ด์ƒ ์–‘๋ณดํ•˜์ง€ ์•Š๊ณ  ์ž์›์„ ํ• ๋‹น๋ฐ›๋„๋ก ํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.


8. ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค์˜ ํฌ๊ธฐ๋ฅผ ์ •ํ•˜๋Š” ๊ฒƒ๊ณผ ์‹œ์Šคํ…œ ํšจ์œจ์„ฑ์— ๋Œ€ํ•ด ์„ค๋ช…

  • ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค์˜ ์ ์  ์ปค์งˆ ๊ฒฝ์šฐ, ์Šค์ผ€์ค„๋ง์€ FCFS๋กœ ๋™์ž‘ํ•˜๋ฉฐ ํšจ์œจ์„ฑ์ด ๋–จ์–ด์ง„๋‹ค. ๊ทธ๋ ‡๋‹ค๊ณ  ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค๋ฅผ ์ž‘๊ฒŒ ํ•  ๊ฒฝ์šฐ ๋ฌธ๋งฅ ๊ตํ™˜์ด ์ž์ฃผ ์ผ์–ด๋‚˜ ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง.
  • ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค๋Š” ๋˜๋„๋ก ์ž‘๊ฒŒ ์„ค์ •, ๋ฌธ๋งฅ ๊ตํ™˜์ด ์ž์ฃผ ์ผ์–ด๋‚˜์ง€ ์•Š์„ ์ •๋„๋กœ.
    10 ~ 200ms ์‚ฌ์ด์—์„œ ์กฐ์ • ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์กฐ์ •๋˜๋Š” ์ด์œ ๋Š” ๋‹ค๋‹จ๊ณ„ ํ”ผ๋“œ๋ฐฑ ํ ์Šค์ผ€์ค„๋ง์—์„œ ๊ฐ ํ๋งˆ๋‹ค ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค๊ฐ€ ๋‹ค๋ฅด๊ฒŒ ์„ค์ • ๋˜์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
๋ฐ˜์‘ํ˜•