20.04.12 (์ผ)

Updated:

์˜ค๋Š˜ ํ•  ์ผ (๊ณ„ํš)

  • ์šด์˜์ฒด์ œ 4์ฃผ์ฐจ ๋“ฃ๊ธฐ

  • ์›นํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ€ด์ฆˆ, ์‹œํ—˜ ๋Œ€๋น„

์˜ค๋Š˜ ํ•œ ์ผ

  • ์šด์˜์ฒด์ œ

    Program Code + Data = User Address Space ์ด๋‹ค.

    ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ ํ”„๋กœ์„ธ์Šค์—์„œ PSI๋Š” ๊ฐ๊ฐ์˜ TCB ์•ˆ์— ์žˆ๋‹ค.

    ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ ํ”„๋กœ์„ธ์Šค์—์„œ PCI ์ค‘ ์‹คํ–‰๊ณผ ๊ด€๋ จ ๋œ ๋ถ€๋ถ„์€ TCB์— ์ž์›๊ณผ ๊ด€๋ จ ๋œ ๋ถ€๋ถ„์€ PCB์— ์žˆ๋‹ค.


    ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ๋ฅผ ๊ตฌํ˜„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์—๋Š” ์„ธ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

    1. User-Level Threads

      ๋ณธ์ธ์€ ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์€๋ฐ ์ปค๋„์ด ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ User Space์—์„œ

      Thread Library๋ฅผ ํ†ตํ•ด ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ์ธ ๋งˆ๋ƒฅ ์‹คํ–‰ํ•œ๋‹ค.

    2. Kernel-Level Threads

      ์ปค๋„์ด ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒฝ์šฐ Kernel Space์—์„œ ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ๋ฅผ ๊ตฌํ˜„ํ•ด ์ค€๋‹ค.

    3. Combined Approach

      ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๊ณผํ•œ ์“ฐ๋ ˆ๋“œ๋ฅผ ๋งŒ๋“  ๊ฒฝ์šฐ Kernel Space์—์„œ ์“ฐ๋ ˆ๋“œ ๊ฐฏ์ˆ˜๋ฅผ ์ค„์—ฌ

      ์ตœ์ ํ™” ํ•ด์ค€๋‹ค.


    context : program์ด ์‹คํ–‰๋˜๋‹ค ๋ฉˆ์ท„์„ ๋•Œ ์˜ CPU ์•ˆ์— ์žˆ๋Š” Register์˜ ์ƒํƒœ

    cache : ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰์ด ๋  ๋•Œ, ์ž์ฃผ ์“ฐ๋Š” ๋ช…๋ น๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏธ๋ฆฌ ๊ฐ€์ ธ๋‹ค ๋†“์€ ์ €์žฅ์žฅ์†Œ

    ๋ฆฌ๋ˆ…์Šค๋Š” ํ”„๋กœ์„ธ์Šค์™€ ์“ฐ๋ ˆ๋“œ๋ฅผ ๊ตฌ๋ถ„์ง“์ง€ ์•Š๋Š”๋‹ค.

    ์˜ค๋Š˜ 4์ฃผ์ฐจ ๋๋‚ฌ๋Š”๋ฐ ์•„์ฃผ ์žฌ๋ฐŒ๋‹ค !

    ์˜ˆ์ „์—” ์•„~์ฃผ ๋Œ€์ถฉ ํ”„๋กœ์„ธ์Šค์™€ ์“ฐ๋ ˆ๋“œ ๋‹จ์–ด ์ •๋„๋งŒ ์•Œ๊ณ  ์žˆ์—ˆ๋Š”๋ฐ

    ์ง„์งœ ์ž์„ธํžˆ ๋ฐฐ์›Œ์„œ ์•„์ฃผ์•„์ฃผ ์žฌ๋ฐŒ๊ตฐ ํ•˜์ง€๋งŒ ์žฌ๋ฏธ์™€ ์„ฑ์ ์€ ๋ณ„๊ฐœ๋‹ค..

  • ์ด๋ฒˆ์ฃผ ๊ณ„ํš

    ์ด์ œ ์‹œํ—˜๊ธฐ๊ฐ„ ๋Œ€๋น„ ์‹œ์ž‘์ด๋‹ค.

    ๋ฌผ๋ก  ํ”„๋กœ์ ํŠธ๋กœ ๋Œ€์ฒด ํ•˜๋Š” ๊ณผ๋ชฉ๋„ ์žˆ์ง€๋งŒ

    ํŠนํžˆ ์›นํ”„ ์ง„์งœ ๊ทธ๋ƒฅ ๋‹ฌ๋‹ฌ ์™ธ์›Œ์•ผ ํ•œ๋‹ค.

    ์ด๋ฒˆ์ฃผ์— ๋ณด๋Š” ์›นํ”„ ํ€ด์ฆˆ 20๋ฌธ์ œ 10๋ถ„์ด๋‹ค..

    ์ƒ๊ฐํ•  ์‹œ๊ฐ„๋„ ์—†์ด ์ง„์งœ 30์ดˆ์— ํ•œ ๋ฌธ์ œ์”ฉ ํ’€์–ด์•ผํ•œ๋‹ค.

    ์ด๋•Œ๊นŒ์ง€ ์กฐ๊ธˆ ์„ค๋ ์„ค๋  ๊ณต๋ถ€ํ•œ ๋Š๋‚Œ์ด ์žˆ๋‹ค.

    ์ด ์‹œ๊ตญ์ด๊ธด ํ•œ๋ฐ ์Šคํ„ฐ๋”” ์นดํŽ˜ ๊ฐˆ๊นŒ ์ƒ๊ฐ์ค‘ !

๋‚ด์ผ ํ•  ์ผ

  • ์›นํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ€ด์ฆˆ, ์‹œํ—˜ ๋Œ€๋น„

  • ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ณผ์ œ ์ œ์ถœ

  • ์‹œํ—˜, ํ€ด์ฆˆ ๋Œ€๋น„ ์‹œ์ž‘

์ด๋ฒˆ์ฃผ ํ•  ์ผ

  • ์ทจ์—…์—ญ๋Ÿ‰๊ฐœ๋ฐœ๋ก  4์ฃผ์ฐจ ๋“ฃ๊ธฐ (์›”)
  • ์•Œ๊ธฐ์‰ฌ์šด์ฝ”๋”ฉ 6์ฃผ์ฐจ ๋“ฃ๊ธฐ (์›”)
  • ์„œ์–‘๊ณ ์ „๊ฐ•๋… 5์ฃผ์ฐจ ๋“ฃ๊ธฐ (์›”)
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค 4์ฃผ์ฐจ ๋“ฃ๊ธฐ (ํ™”)
  • ๋Œ€ํ•™์ƒ์„์œ„ํ•œ์‹ค์šฉ๊ธˆ์œต 4์ฃผ์ฐจ ๋“ฃ๊ณ  ํ€ด์ฆˆ ์ œ์ถœ, ๊ณผ์ œ ํ•˜๊ธฐ (์ˆ˜)
  • ํ™•๋ฅ ๊ณผ ํ†ต๊ณ„ 4์ฃผ์ฐจ ๋“ฃ๊ธฐ (๋ชฉ)
  • ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ 4์ฃผ์ฐจ ๋“ฃ๊ธฐ (๊ธˆ)
  • ์šด์˜์ฒด์ œ 4์ฃผ์ฐจ ๋“ฃ๊ธฐ (์ผ)
  • ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ณผ์ œ ํ•˜๊ธฐ

Leave a comment